244 votes

Comment renommer un volet dans tmux ?

Comment renommer un volet dans tmux ?

398voto

Voulez-vous dire la fenêtre tmux ? Ctrl + b + , si vous avez C-b comme préfixe d'envoi (c'est par défaut)

Aussi C-b :rename-window <new name> y tmux rename-window <new name> travailler aussi.

Comme je le sais, vous ne pouvez pas renommer le volet.

0 votes

Lorsque je renomme la fenêtre actuelle, je ne peux pas voir ce que je tape, est-ce par défaut ? Ou est-ce dû à ma configuration ? Bien que je pense que ma configuration n'empêche pas tmux de le montrer.

1 votes

Pour clarifier, vous puede renommer un volet, et ceci est nécessaire lorsqu'une sortie binaire accidentelle le corrompt. La réponse de @Mapad résout ce problème.

9 votes

Comment renommer la fenêtre, lorsque renommer le volet est demandé - devient la réponse acceptée.

61voto

Mapad Points 3033

Oui, vous pouvez renommer les noms de volets, et pas seulement les noms de fenêtres à partir de tmux >= 2.3. Tapez simplement ce qui suit dans votre shell :

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

vous devrez peut-être ajouter ce qui suit à votre fichier .tmux.conf pour afficher les noms des volets :

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

vous pouvez également attribuer automatiquement un nom :

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

1 votes

Existe-t-il un moyen de mettre les arguments d'une commande au format de la bordure d'un volet ? Oh, il existe une commande correspondante numéro sur github.

0 votes

La longueur du titre est de 21

26voto

DenLilleMand Points 622

Pour ceux qui utilisent le script tmux, il existe une commande appelée rename-window donc, par exemple

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

1 votes

Dans mon cas, c'était quelque chose comme : tmux rename-window -t 9 my-project .

15voto

raman Points 313

Pour ceux qui veulent renommer facilement leurs volets dans un shell bash, voici ce que j'ai dans mon .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

Les panneaux sont automatiquement nommés avec leur index, le nom de la machine et la commande en cours. Pour changer le nom de la machine, vous pouvez exécuter <C-b>R qui vous invitera à saisir un nouveau nom.

*Le renommage des volets ne fonctionne que lorsque vous êtes dans un shell.

6voto

Tech Nomad Points 381

Vous pouvez ajuster le titre du volet en définissant la bordure du volet dans le fichier tmux.conf, par exemple comme ceci :

###############
# 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

Où pane_index, pane_title et pane_current_path sont des variables fournies par tmux lui-même.

Après avoir rechargé la configuration ou démarré une nouvelle session tmux, vous pouvez alors définir le titre du volet actuel comme ceci :

tmux select-pane -T "fancy pane title";
#or
tmux select-pane -t paneIndexInteger -T "fancy pane title";

Si tous les volets ont des processus en cours d'exécution, et que vous ne pouvez pas utiliser la ligne de commande, vous pouvez également taper les commandes après avoir appuyé sur le préfixe bind (C-b par défaut) et un deux-points ( :) sans avoir "tmux" devant la commande :

select-pane -T "fancy pane title"
#or:
select-pane -t paneIndexInteger -T "fancy pane title"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X