Je peux changer le nom d'une fenêtre avec Ctrl-a Maj-a. Au lieu d'éditer plusieurs noms de fenêtres à la main, existe-t-il un moyen de les nommer automatiquement d'après le répertoire courant ?
Réponse acceptée :
Faites en sorte que votre shell change le titre de la fenêtre chaque fois qu'il change de répertoire ou chaque fois qu'il affiche une invite.
Pour votre ~/.bashrc
:
if [[ "$TERM" == screen* ]]; then
screen_set_window_title () {
local HPWD="$PWD"
case $HPWD in
$HOME) HPWD="~";;
$HOME/*) HPWD="~${HPWD#$HOME}";;
esac
printf '\ek%s\e\\' "$HPWD"
}
PROMPT_COMMAND="screen_set_window_title; $PROMPT_COMMAND"
fi
Ou pour votre ~/.zshrc
(pour les utilisateurs de zsh) :
precmd () {
local tmp='%~'
local HPWD=${(%)tmp}
if [[ $TERM == screen* ]]; then
printf '\ek%s\e\\' $HPWD
fi
}
Pour plus d'informations, recherchez sous Titres dynamiques dans le manuel de l'écran ou sous "Titres (nommer les fenêtres)" dans la page de manuel.