ftblog

:: widerstand zwecklos ::
email jabber gpgkey
hackergotchi

June 12, 2006

Tooltime: zsh #6

Filed under: tooltime -- 22:17

zsh - manual completion

[Update]
Clint Adams hat die veränderte '_man' Funktion in Debians zsh Paket aufgenommen.
Also ab v4.3.2-12 in debian sid kann man das ohne weiteres nutzen. Gut, das.
Im aktuellen CVS Archiv der zsh ist die geänderte _man Funktion auch enthalten.
Das heisst, zukünftige zsh Versionen werden das von sich aus mitbringen.

Letztens wollte ich einen Blick in crontab(5) werfen und dazu habe ich natürlich
die Hammerkompletierung der zsh mit Menuauswahl "misbraucht". Dabei kam folgendes
heraus:

mancomp0

...was ungünstig ist, denn 'man crontab' wird im Allgemeinen crontab(1) aufrufen.
Also schaut man sich die Sache mal genauer an, denn der Code der die
Auswahlmöglichkeiten ausarbeitet steht ja leicht veränderbar in '_man'.
Gedacht, getan. Ich habe '_man' in mein ~/etc/zsh/functions Verzeichnis kopiert
und einmal einwenig daran rumgeschraubt. Nach kurzer Zeit hatte ich mit einer
winzigen Änderung eine erheblich bessere Lösung gefunden, die allerdings einen
hässlichen Schönheitsfehler hatte.
Also fragte ich mal auf der 'zsh-users' Mailingliste nach, und bekam erst Hilfe
von Bart Schaefer, der den Schönheitsfehler in meiner Lösung ausmerzte, und danach
kam von Oliver Kiddle noch die Möglichkeit hinzu, die zusätzliche Funktionalität
durch einen style ein- und ausschalten, und sogar konfigurieren zu können.
Sehr geil. :-)

Nun bekomme ich von der Kompletierung nicht nur die gewünschte Manpage sondern
auch den passenden Abschnitt auf meine Kommandozeile gezaubert:

mancomp1

Die geänderte '_man' Funktion gibt's in meiner zsh Konfiguration und zwar hier.

Ich blogge darüber, da ich nicht weiss, ob es diese Funktion auch einmal in die
zsh Distribution machen wird, ich sie aber sehr nützlich finde.

Powered by zblog
valid css | valid xhtml | utf-8 encoded | best viewed with anybrowser