Первое, на что следует обратить внимание, это то, что вы можете сделать это через tmux, совершенно независимо от вашей оболочки. Добавьте следующее в ваш ~ / .tmux.conf; например:
set-option -g set-titles on set-option -g set-titles-string "#S / #W"
Кроме того, вам необходимо убедиться, что iTerm2 настроен так, чтобы программы могли устанавливать заголовок через escape-последовательность. См. Раздел «Терминал может установить заголовок вкладки / окна» в https://www.iterm2.com/documentation-one-page.html .
Но ваша настоящая проблема в том, что escape-последовательность, отправленная функцией fish_title, не передается через tmux. Вместо этого Tmux использует значение для установки заголовка панели. Это объясняется, хотя и не совсем понятно, в разделе «Имена и названия» man tmux
. Добавьте #T
к, set-titles-string
чтобы увидеть, что это на самом деле, будучи установлен на то же значение, что и имя окна через вашу fish_title
функцию.