Zmień nazwę zakładki Iterm2 z poziomu tmux

16

Mogę użyć następującej funkcji, aby zmienić nazwę karty iterm2 i to działa świetnie.

function rename_tab {
    echo -ne "\033]0;"$@"\007"
}

Jeśli jednak uruchomię tę funkcję podczas sesji tmux, nic się nie stanie.

Masz pomysł, jak sprawić, by działało to w tmux? Dzięki!

chevett
źródło

Odpowiedzi:

17

Możesz użyć opcji tmux set-titles

W moim pliku .tmux.conf mam następujący wiersz:

set-option -g set-titles on

Będziesz musiał zrestartować serwer tmux (zabić istniejące sesje) lub ponownie źródła pliku, zanim zmiana w konfiguracji wejdzie w życie. Możesz również uruchomić to dla istniejącej sesji za pomocą<prefix>:set-option set-titles on

przedpola
źródło
2
Niesamowite! Dzięki! <prefiks>: set-option set-titles-string tab-name-tutaj zrobił dokładnie to, co chciałem.
chevett
3
set-option -g set-titles na set-option -g set-titles-string '#S'
Chevett
Możesz dość łatwo przeładować konfigurację tmux tmux source-file ~/.tmux.conf. Źródło - blog.sanctum.geek.nz/reloading-tmux-config
studgeek
1
Nie działa to podczas korzystania z integracji tmux (np. Działającej z tmux -CC)
Bittenus,
Jakieś rozwiązanie do używania trybu sterowania (aka tmux -CC)? Może to być błąd w Tmuxie?
Steshaw,
4

Nie mogłem uruchomić zestawów tytułów podczas korzystania z integracji tmux w iTerm2 (działającej z tmux -CC)

Zamiast tego działa dobrze

function tabname {
  if [ -z $TMUX ] ; then
    printf "\e]1;$@\a"
  else
   tmux rename-window "$@"
  fi
}
Bittenus
źródło
Czy umieściłeś to w swoim pliku .bashrc / .zshrc? Czy możemy umieścić to w .tmux.conf?
danyim
.bashrc
Włożyłem
0

Ta odpowiedź nie jest bezpośrednią odpowiedzią na pytanie, przepraszam za to. Zamiast tego jest to zrobić z iTerm2 bez odpowiednika wiersza poleceń.

Pasek menu iTerm -> Powłoka ->

Muszla

tmux ->

tmux

Pulpit nawigacyjny -> wybierz okno ->

Deska rozdzielcza

Naciśnij klawisz Return, aby zmienić nazwę (tak jak w Finderze!) Naciśnij enter, aby zmienić nazwę

Graham P. Heath
źródło