dynamic titles in screen

Ich liebe die Möglichkeit in screen, den Titel des Fensters zu setzen. Normalerweise benutzt man dafür “shelltitle” in der screenrc. Das fällt bei mir nur regelmässig auseinander. Ausserdem wird in den Titel nur der Befehl reingeschrieben, nicht aber die Argumente. Deshalb habe ich dieses kleine script in Anlehnung an konsolewrap.sh geschrieben, damit beim Aufruf von vim die ganze Befehlszeile im Titel von screen steht:

#!/bin/sh
#This script is GPL, see http://www.gnu.org

if [ $1 = "-s" ]
then
    shift 1
    cmd=$1
    shift 1
else
    cmd=""
fi
case "$TERM" in
    xterm*|rxvt*)
      echo -ne "\033]0;$*\007"
    ;;
    screen)
      echo -n -e "\033k$*\033\\"
    ;;
    *)
      echo ""
    ;;
esac

exec $cmd "$@"

das script irgendwo hinschmeissen und ein Alias für vim setzen: alias vim=”script.sh vim” Das geht natürlich auch für man oder so. Und für ssh gibts den Schalter “-s” alias ssh=”script -s ssh” Dann wird das erste Argument ( in diesem Fall ssh) weggeschmissen. Sieht schön aus, wenn im Titel dann nur noch der Hostname steht.

sreen