kontextbezogene bash completion

12/02/2010 - 01:26 von Bernd Hohmann | Report spam
Ich möchte in paar Scripten eine dynamische Bash completion einbauen.

Also zb. dass ein "vmcontrol stop" mit "tab" nur die VMs auflistet, die
gerade laufen.

Habe mich bisserl in compgen eingelesen, aber mir deucht dass man das
nicht als Standalone-Lösung machen kann sondern vor dem Scriptaufruf
noch Klimmzüge braucht.

Auf die Schnelle hab ich zum Thema nur das hier gefunden:
http://aplawrence.com/Unix/customtab.html

Vielleicht gibts eine bessere Anleitung?

Bernd

Visit http://www.nixwill.de and http://www.spammichvoll.de
jean.oliver@nixwill.de & bernado.bernhardi@spammichvoll.de
 

Lesen sie die antworten

#1 Hauke Laging
12/02/2010 - 15:22 | Warnen spam
Bernd Hohmann schrieb am Freitag 12 Februar 2010 01:26:

Also zb. dass ein "vmcontrol stop" mit "tab" nur die VMs auflistet,
die gerade laufen.

Habe mich bisserl in compgen eingelesen, aber mir deucht dass man
das nicht als Standalone-Lösung machen kann sondern vor dem
Scriptaufruf noch Klimmzüge braucht.



Ich sehe Dein Problem nicht. Hast Du überhaupt schon mal so was
programmiert? Wenn nicht, würde ich sagen, Du siehst da
nichtexistente Probleme.

Du schreibst Dir eine Funktion, typischerweise _vmcontrol (), die Du
mit

complete -F _vmcontrol vmcontrol

an das Kommando bindest. In der Funktion prüfst Du, ob das erste
Wort "stop" ist. Wenn ja, liest Du die laufenden VMs ein und
schreibst die jeweiligen Parameter in das Array COMPREPLY.


CU

Hauke
http://www.hauke-laging.de/ideen/

Ähnliche fragen