CODE:if (&term =~ '^screen') " set title for screen " VimTip http://vim.wikia.com/wiki/VimTip1126 set title t_Co=256 set t_ts=^[k set t_fs=^[\ let &titleold = fnamemodify(&shell, ":t") set titlelen=15 " set information for title in screen (see :h 'statusline') set titlestring=%t%=%<%(\ %{&encoding},[%{&modified?'+':'-'}],%p%%%) endif
Aufgedröselt bedeutet das:
title legt fest, dass Vim den Titel setzen darf.
t_Co ermöglicht 256 Farben.
t_ts setzt den Terminalcode für 'Window Title Start'
t_fs setzt den Terminalcode für 'Window Title End'
Man beachte, dass die Terminalcodes ein Escape Zeichen enthalten. Es sind also nicht 3 Zeichen, sondern nur 2. D.h. ^[ muß durch Drücken von Ctrl-V ESC eingegeben werden.
titleold setzt den Titel auf den Namen der Shell, wenn Vim beendet wird. Ansonsten steht da 'Thanks for flying Vim'. Das ist eigentlich auch eine Option, könnte also auch über set gesetzt werden, soll aber dynamisch auf den Namen der verwendeten Shell gesetzt werden.
titlelen Setzt die Länge des Titels
titlestring Definiert, welche Informationen angezeigt werden. In diesem Fall zeigt es ungefähr folgendes an:
vimrc utf-8,[+],90%
Also, Dateiname, Kodierung, verändert ([+]) oder unverändert([-]), Prozentzahl, wo der Cursor steht. Muß man natürlich nicht setzen, kann man aber schön anpassen. Unter :h 'statusline' kann man die verschiedenen Flags nachlesen.
Das soll aber nur gesetzt werden, wenn wir Vim innerhalb von Screen gestartet wird, also kommt drum herum noch eine If-Abfrage, nach dem Terminaltyp:
CODE:if (&term =~ '^screen') ... endif

Klaus
caption always "%{b}%d.%m %c%{-} | %w"
Aber mit folgender laststatus-Zeile sollte es funktionieren:
hardstatus alwayslastline "%{=b dG} %d.%m.%y | %c | %-w%{=b W}%n %t%{-}%+w "
I also read 'man screen' once more and decided to use hardstatus too. My format is a little different:
hardstatus alwayslastline "%{m}%H%{-} | %{b}%d.%m %c%{-} | %-w%{r}%n %t%{-}%+w"
Thanks for your help and for this blog entry in general.