Respostas:
Você quer dizer janela do tmux? Ctrl + b + ,
se você tiver Cb como prefixo de envio (é por padrão)
Também C-b :rename-window <new name>
e tmux rename-window <new name>
trabalho também.
Como eu sei, você não pode renomear o painel
ls
set-option -g allow-rename off
sim, você pode renomear nomes de painéis, e não apenas nomes de janelas começando com tmux> = 2.3. Basta digitar o seguinte em seu shell:
printf '\033]2;%s\033\\' 'title goes here'
pode ser necessário adicionar o seguinte ao seu .tmux.conf para exibir os nomes dos painéis:
# Enable names for panes
set -g pane-border-status top
você também pode atribuir um nome automaticamente:
set -g pane-border-format "#P: #{pane_current_command}"
Para aqueles que fazem script do tmux, existe um comando chamado rename-window
assim, por exemplo
tmux rename-window -t <window> <newname>
tmux rename-window -t 9 my-project
.
Para aqueles que desejam renomear facilmente seus painéis, isto é o que eu tenho em meu .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
Os painéis são nomeados automaticamente com seu índice, nome da máquina e comando atual. Para alterar o nome da máquina, você pode executar o <C-b>R
que solicitará que você insira um novo nome.
* A renomeação do painel só funciona quando você está em um shell.
Além disso, durante o script, você pode especificar um nome ao criar a janela com -n <window name>
. Por exemplo:
# 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'
A opção mais fácil para mim foi renomear o título do terminal. Consulte: /superuser/362227/how-to-change-the-title-of-the-mintty-window
Nesta resposta, mencionam modificar a variável PS1. Nota: minha situação era particular para o cygwin.
TL; DR Coloque isso em seu arquivo .bashrc:
function settitle() {
export PS1="\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n$ "
echo -ne "\e]0;$1\a"
}
Coloque isso em seu arquivo .tmux.conf ou em uma formatação semelhante:
set -g pane-border-status bottom
set -g pane-border-format "#P #T #{pane_current_command}"
Em seguida, você pode alterar o título do painel digitando no console:
settitle titlename
Você pode ajustar o título do painel definindo a borda do painel no tmux.conf, por exemplo:
###############
# pane border #
###############
set -g pane-border-status bottom
#colors for pane borders
setw -g pane-border-style fg=green,bg=black
setw -g pane-active-border-style fg=colour118,bg=black
setw -g automatic-rename off
setw -g pane-border-format ' #{pane_index} #{pane_title} : #{pane_current_path} '
# active pane normal, other shaded out
setw -g window-style fg=colour28,bg=colour16
setw -g window-active-style fg=colour46,bg=colour16
Onde pane_index, pane_title e pane_current_path são variáveis fornecidas pelo próprio tmux.
Depois de recarregar a configuração ou iniciar uma nova sessão tmux, você pode definir o título do painel atual como este:
tmux select-pane -T "fancy pane title";
#or
tmux select-pane -t paneIndexInteger -T "fancy pane title";
Se todos os painéis têm alguns processos em execução, então você não pode usar a linha de comando, você também pode digitar os comandos após pressionar o prefixo bind (Cb por padrão) e dois pontos (:) sem ter "tmux" na frente do comando:
select-pane -T "fancy pane title"
#or:
select-pane -t paneIndexInteger -T "fancy pane title"
tmux
de mostrar isso.