¿Cómo puedo reordenar eficientemente Windows en tmux? Por ejemplo, tener este conjunto de ventanas:
0:zsh 1:elinks 2:mutt 3:irssi 4:emacs 5:rss 6:htop
¿Qué tendría que hacer para moverme rss
entre elinks
y mutt
, terminando con:
0:zsh 1:elinks 2:rss 3:mutt 4:irssi 5:emacs 6:htop
Sé cómo usar move-window
para mover una ventana a un índice aún no utilizado, y podría usar una serie de ellos para lograr esto, pero, obviamente, esto es muy tedioso.
Respuestas:
swap-window
puedo ayudarte:Mueve la ventana actual hacia la izquierda en una posición.
De man tmux :
Puedes vincularlo a una clave:
Luego puede usar
Shift+Left
yShift+Right
para cambiar la posición actual de la ventana.fuente
swap-window
comandos (tres para el caso de ejemplo), ¿correcto?swap-window -s 2 -t 5
. Esta ventana de intercambio número 2 con la ventana número 5.swap-window
comando, pero no conocía los prefijos-
/+
para apuntar a la ventana anterior / siguiente.swap-window
en las nuevas versiones de tmuxLa respuesta aceptada y altamente votada es correcta, aunque el comportamiento en las versiones recientes de tmux ve que el comando swap-window no te mantiene en la misma ventana. Por lo tanto, funciona de manera poco intuitiva, su ventana activa se intercambiará en esa dirección, ¡pero usted permanecerá en la misma ranura!
Para solucionar ese problema, simplemente aumente el enlace para seguirlo. Por ejemplo, desde mi tmux config:
fuente
Aquí hay una solución de trabajo envuelta en la función bash.
Bonificación: permanezca en la misma ventana si la ventana activa actual no se ve afectada.
fuente
Si
tmux
es la versión 1.7 o superioro
en
.tmux.conf
hacer automáticamente, en el futuro.fuente