22
0
Fork 0

Personnalisation du préfix + formattage

This commit is contained in:
jlecour 2017-02-27 09:43:33 +01:00
parent 3b7950828d
commit 34d64453f9
1 changed files with 38 additions and 27 deletions

View File

@ -5,14 +5,14 @@ categories: sysadmin
Tout comme screen, Tmux permet de gérer des terminaux lancés en arrière plan. Il s'agit d'une alternative enrichie qui prend notamment en charge des splits plus complexes.
Il diffère de screen avec le concept de fenêtres et "panes". Un "pane" tmux est une fenêtre dans la terminologie de screen. Une fenêtre tmux est un agencement d'un ou plusieurs "pane(s)" (par exemple, deux fenêtres côte à côte).
Il diffère de screen avec le concept de fenêtres ("windows") et panneaux ("panes"). Un panneau tmux est une fenêtre dans la terminologie de Screen. Une fenêtre Tmux est un agencement d'un ou plusieurs panneaux (par exemple, deux fenêtres côte à côte).
D'autres points de comparaison :
- les fenêtres sont des entités indépendantes qui peuvent être attachées simultanément à plusieurs sessions et peuvent être déplacées librement entre les sessions d'un même serveur tmux
- plusieurs buffers
- choix des raccourcis vi ou emacs
- sous licence BSD
* Les fenêtres sont des entités indépendantes qui peuvent être attachées simultanément à plusieurs sessions et peuvent être déplacées librement entre les sessions d'un même serveur Tmux ;
* Plusieurs buffers ;
* Choix des raccourcis VI ou Emacs ;
* Sous licence BSD.
<http://man.openbsd.org/OpenBSD-current/man1/tmux.1>
@ -38,7 +38,7 @@ Pour lancer une nouvelle session :
$ tmux
~~~
Pour lancer une nouvelle session sous le nom test:
Pour lancer une nouvelle session sous le nom "test" :
~~~
$ tmux new -s test
@ -50,7 +50,7 @@ Pour lancer une nouvelle session avec mutt par exemple :
$ tmux new mutt
~~~
Pour se rattacher à la session tmux 1 (voir tmux ls) :
Pour se rattacher à la session Tmux 1 (voir `tmux ls`) :
~~~
$ tmux attach -t 1
@ -58,39 +58,50 @@ $ tmux attach -t 1
À noter que plusieurs clients peuvent de rattacher à la même session simultanément (partage).
Une fois attaché à une session tmux, voici la liste des commandes de base utiles :
## Personnaliser le préfix
Par défaut, Tmux utilise la séquence `<Ctrl>+b` comme préfix pour les commandes internes.
Il est possible de modifier ce préfix dans la configuration, par exemple pour avoir `<Ctrl>-a` comme dans Screen :
~~~
<Ctrl>+b+d : sortir de tmux
<Ctrl>+b+c : créer une nouvelle fenêtre
<Ctrl>+b+n : se déplacer sur la fenêtre suivante
<Ctrl>+b+w : lister les fenêtres disponibles
set -g prefix C-a
~~~
Cette personnalisation étant fréquente, pour faciliter la documentation, nous indiquerons ici `<Prefix>` à la place de `<Ctrl>+b`.
Une fois attaché à une session Tmux, voici la liste des commandes de base utiles :
~~~
<Prefix>+d : sortir de tmux
<Prefix>+c : créer une nouvelle fenêtre
<Prefix>+n : se déplacer sur la fenêtre suivante
<Prefix>+w : lister les fenêtres disponibles
~~~
## Utilisation avancée
### panneaux
Une fois attaché à une session tmux, voici la liste des commandes pour gérer les "panes" :
Une fois attaché à une session Tmux, voici la liste des commandes pour gérer les panneaux :
~~~
<Ctrl>+b+x : fermer un pane
<Ctrl>+b+% : créer un pane vertical
<Ctrl>+b+" : créer un pane horizontal
<Ctrl>+b+z : passer le pane courant en plein écran
<Ctrl>+b+s : envoyer le pane courant vers une autre fenêtre
<Ctrl>+b+<flèche> : se déplacer entre les régions splitées
<Ctrl>+b+} : déplacer un pane vers la gauche
<Ctrl>+b+{ : déplacer un pane vers la droite
<Ctrl>+b+, : renommer un pane
<Prefix>+x : fermer un panneau
<Prefix>+% : créer un panneau vertical
<Prefix>+" : créer un panneau horizontal
<Prefix>+z : passer le panneau courant en plein écran
<Prefix>+s : envoyer le panneau courant vers une autre fenêtre
<Prefix>+<flèche> : se déplacer entre les régions splitées
<Prefix>+} : déplacer un panneau vers la gauche
<Prefix>+{ : déplacer un panneau vers la droite
<Prefix>+, : renommer un panneau
~~~
### copier/coller
~~~
<Ctrl>+b+[ : sélectionner la zone à copier
<Ctrl>+b+] : coller
<Ctrl>+b+= : se déplacer dans le buffer
<Prefix>+[ : sélectionner la zone à copier
<Prefix>+] : coller
<Prefix>+= : se déplacer dans le buffer
~~~
### clients attachés
@ -108,7 +119,7 @@ Si on souhaite détacher proprement un des clients, 3 méthodes :
La méthode facile :
~~~
<Ctrl>+b+D : (c'est bien un D majuscule) donne la liste des clients attachés, on choisi avec <Enter> celui ou ceux à détacher.
<Prefix>+D : (c'est bien un D majuscule) donne la liste des clients attachés, on choisi avec <Enter> celui ou ceux à détacher.
~~~
La méthode bas niveau :
@ -123,7 +134,7 @@ La méthode "à la hache" :
$ tmux kill-client /dev/pts/8
~~~
Dans tous les xcas on peut vérifier ensuite que le client a été détaché :
Dans tous les cas on peut vérifier ensuite que le client a été détaché :
~~~
$ tmux list-clients