Das folgende habe ich mir aus diesem Tip zusammengebaut und in die vim-Konfiguration eingebaut. Es setzt automagisch den Titel, wenn man unter screen arbeitet (was ich nur jedem empfehlen kann). So steht da nicht mehr nur lakonisch ‚vi‘, sondern geradezu geschwätzig ‚.zshrc (~) – VIM‘:
" screen-Bezeichnung sinnvoll setzen, falls wir im screen laufen
set titlestring="%t%(\ %M%)%(\ (%{expand(\"%:p:h\")})%)%(\ %a%)\ -\ %{v:servername}"
if &term == "screen"
" Achtung: ^[ wird als <CTRL+V><ESC> eingegeben
set t_ts=^[k
set t_fs=^[\
endif
if &term == "screen" || &term == "xterm"
set title
endif
EDIT: Mist, so alleinglücklichmachend ist diese Einstellung doch nicht. Wenn ich jetzt mutt starte, heißt der Screen ‚mutt‘. Klar soweit. Während ich eine Mail editiere heißt der Screen z. B. ‚mutt-antarktis-1000-21401-214 (/tmp) – VIM‘. Damit könnte ich noch leben. Aber nach Beendigung des Editors — wenn ich also schon wieder im mutt bin — heißt der Screen ‚Danke für die Benutzung von Vim‘, und das ist eigentlich nicht erwünscht… für Sachdienliche Hinweise zum Unterdrücken dieser Nachricht wäre ich dankbar…
EDIT^2: OK, ich habe einen schmutzigen Workaround. Ich habe in der mutt-Konfiguration die Zeile
set editor="vim -c 'set tw=72 et nohls' '+/^$'"
gegen
set editor="vim -c 'set tw=72 et nohls titleold=mutt' '+/^$'"
ausgetauscht. Schön finde ich das nicht, aber es funktioniert. Laut Google sollte es auch irgendwie eine Option titlerestored
geben, die scheint aber nie implementiert worden zu sein.
Sobald Du ’set title‘ verwendest, wird das „Thanks for flying VIM“ angezeigt (oder was immer NLS ausgibt). Entweder Du aenderst das in den Sourcen oder Du wirfst einen Blick auf VimLeavePre() (
vim -c ‚help vimleavepre‘ -c on“). Damit kannst Du naemlich eine function() aufrufen, *bevor* VIM beendet wird und das ‚Danke für die Benutzung von Vim’ ausgibt. Sollte eigentlich kein groesseres Problem sein, aber ich hab fruehestens heute Abend Zeit mir das mal genauer anzugucken. HTH.
Danke für den Tip, ich versuche dem die Tage mal nachzugehen. Bis dahin muß ich wohl mit dem Workaround leben…
vim für filetype == mail ’set notitle‘ machen lassen, fertig.
Was zum…? Warum bin ich da nicht selbst drauf gekommen? Naja, ich war halt noch jung als ich das hier geschrieben habe… *rausred*
Danke!