Как переименовать панель в tmux?

Как переименовать панель в tmux?

Ответы

Ответ 1

Вы имеете в виду окно tmux? Ctrl + b + ,, если у вас есть C-b как префикс отправки (по умолчанию)

Также работают C-b :rename-window <new name> и tmux rename-window <new name>.

Как я знаю, вы не можете переименовать панель

Ответ 2

да, вы можете переименовывать имена панелей, а не только имена окон, начинающиеся с tmux> = 2.3. Просто введите в своей оболочке следующее:

printf '\033]2;%s\033\\' 'title goes here'

вам может понадобиться добавить следующее в ваш .tmux.conf для отображения имен панелей:

# Enable names for panes
set -g pane-border-status top

вы также можете автоматически назначить имя:

set -g pane-border-format "#P: #{pane_current_command}"

Ответ 3

Для этих сценариев tmux существует команда под названием rename-window так, например,

tmux rename-window -t <window> <newname>

Ответ 4

Также при написании сценариев вы можете указать имя при создании окна с -n <window name>. Например:

# variable to store the session name
SESSION="my_session"

# set up session
tmux -2 new-session -d -s $SESSION

# create window; split into panes
tmux new-window -t $SESSION:0 -n 'My Window with a Name'

Ответ 5

Для тех, кто хочет легко переименовать свои панели, это то, что у меня есть в .tmux.conf

set -g default-command '                      \
function renamePane () {                      \
  read -p "Enter Pane Name: " pane_name;      \
  printf "\033]2;%s\033\\r:r" "${pane_name}"; \
};                                            \
export -f renamePane;                         \
bash -i'
set -g pane-border-status top
set -g pane-border-format "#{pane_index} #T #{pane_current_command}"
bind-key -T prefix R send-keys "renamePane" C-m

Панелям автоматически присваиваются имена с указанием индекса, имени машины и текущей команды. Чтобы изменить имя машины, вы можете запустить <C-b>R, который предложит вам ввести новое имя.

* Переименование панели работает только тогда, когда вы находитесь в оболочке.

Ответ 6

Самым простым вариантом для меня было вместо этого переименовать заголовок терминала. Пожалуйста, смотрите: https://superuser.com/info/362227/how-to-change-the-title-of-the-mintty-window

В этом ответе они упоминают об изменении переменной PS1. Примечание: моя ситуация была особенной для Cygwin.

TL; DR Поместите это в свой файл .bashrc:

function settitle() {
      export PS1="\[\e[32m\]\[email protected]\h \[\e[33m\]\w\[\e[0m\]\n$ "
      echo -ne "\e]0;$1\a"
}

Поместите это в свой файл .tmux.conf или аналогичное форматирование:

set -g pane-border-status bottom
set -g pane-border-format "#P #T #{pane_current_command}"

Затем вы можете изменить заголовок панели, набрав в консоли:

settitle titlename