9 votes

Comment puis-je faire en sorte que le titre de la fenêtre iTerm2 soit le même quel que soit le volet sélectionné ?

Je suis conscient que le titre de la fenêtre de l'iTerm2 peut être défini avec

echo -ne "\033]0;"Title goes here"\007"

mais il semble que cela ne permette que de définir le titre d'une simple vitrage . Lorsque je change de volet, le titre de la fenêtre est modifié.

Comment puis-je définir rapidement/automatiquement le titre de la fenêtre pour qu'il soit le même pour chaque volet ?

6voto

Edward S. Points 425

Si vous cherchez simplement un titre statique, vous pouvez ajouter cette ligne à votre ~/.bash_profile. Assurez-vous simplement d'en faire la source pour le charger :

source ~/.bash_profile

Sinon, vous pouvez utiliser un alias. Ceux-ci sont également ajoutés dans votre ~/.bash_profile :

alias title1='echo -ne "\033]0;"Title goes here"\007"'
alias title2='echo -ne "\033]0;"Other Title goes here"\007"'

J'espère que cela vous aidera !

3voto

Luke Davis Points 451

Finalement, j'ai résolu ce problème en ajoutant les lignes suivantes à mon fichier .bashrc .

_title_file=~/.title
_win_num=${TERM_SESSION_ID%%t*}
_win_num=${_win_num#w}
title_declare() {
  # Record title from user input or as user argument
  # Use GNU sed installed via homebrew here
  [ -z "$TERM_SESSION_ID" ] && echo "Error: Not an iTerm session." && return 1
  [ $# -gt 0 ] && _title=$* || read -p "Window $_win_num title: " _title
  [ -z "$_title" ] && _title="window $_win_num"
  [ -e "$_title_file" ] || touch "$_title_file"
  gsed -i '/^'$_win_num':.*$/d' "$_title_file"  # remove existing title
  echo "$_win_num: $_title" >> "$_title_file"  # add new title
}
title_update() {
  # Read title from file and apply to window title
  [ -r "$_title_file" ] || title_declare
  _title=$(cat $_title_file | grep "^$_win_num:.*$" 2>/dev/null | cut -d: -f2-)
  _title=$(echo "$_title" | sed $'s/^[ \t]*//;s/[ \t]*$//')
  [ -z "$_title" ] && title_declare || echo -ne "\033]0;$_title\007"
}
prompt_append() {
  export PROMPT_COMMAND=$(echo "$PROMPT_COMMAND; $1" | sed 's/;[ \t]*;/;/g;s/^[ \t]*;//g')  # remove consecutive semicolons
}

# Ask for a title when we create pane 0 (i.e. the first pane of a new window)
[[ ! "$PROMPT_COMMAND" =~ "title_update" ]] && prompt_append title_update
[[ "$TERM_SESSION_ID" =~ w?t?p0: ]] && [ -z "$_title" ] && title_declare

Les lignes ci-dessus vous demanderont d'entrer un titre lorsqu'une nouvelle fenêtre est créée (la valeur par défaut étant "window n"), et mettront à jour le titre chaque fois qu'une invite est générée. Vous pouvez changer manuellement le titre de la fenêtre en appelant title <new_title> à l'intérieur de la fenêtre souhaitée.

1voto

Natsfan Points 12853

Si vous allez dans iTerm2/Préférences/Apparence, il y a une zone sur le côté droit de la fenêtre où vous pouvez définir les noms et ce qui apparaît sur les onglets ou la fenêtre. Vous devriez pouvoir jouer avec ces paramètres pour obtenir un résultat acceptable.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X