Potencia tmux con tmuxinator
2019-04-09
Índice
tmuxinator es una gema de ruby que nos va a permitir crear y configurar sesiones de tmux, a través de sus fichero de configuración podemos iniciar tmuxinator en función al proyecto con el que vayamos a trabajar, sin necesidad de volver a configurar las sesiones.
Así por ejemplo, yo he creado un fichero de configuración para que me divida la ventana de tmux en tres partes, una de ellas seria una terminal en limpio, en otra inicia una sesión SSH en mi raspberry pi, y la tercera ventana se posiciona en la carpeta la descargas.
Configuración
Para crear una nueva plantilla de configuración
tmuxinator new carlos
Esto nos crea una nueva plantilla de configuración ~/.config/tmuxinator/carlos.yml
, la cual tenemos que editar para configurarla según nuestras preferencias. Para el ejemplo de la captura
name: carlos
root: ~/
windows:
- editor:
layout: 67e8,168x40,0,0{99x40,0,0,0,68x40,100,0[68x20,100,0,1,68x19,100,21,2]}
panes:
-
- cd ~/Descargas
- ssh [email protected]
Configurando el aspecto
Con Ctrl+b
(o la tecla que hayas seteado, en mi caso Ctrl+a) + tecla del cursor, ajusta el tamaño de los paneles, cuando los tengas a tu gusto, ejecuta tmux list-windows
lo que nos dará una salida parecida a esto
tmux list-windows
1: term* (3 panes) [149x39] [layout d721,149x39,0,0{81x39,0,0,0,67x39,82,0[67x20,82,0,1,67x18,82,21,2]}] @0 (active)
De la salida del comando anterior nos interesa quedarnos con los números que siguen a layout y el último }
, es decir,=9244,149x39,0,0{90x39,0,0,0,58x39,91,0[58x20,91,0,1,58x18,91,21,2]}=, y añadirlo a la plantilla de configuración.
Te dejo otro ejemplo
name: carlos
root: ~/
windows:
- term:
layout: 9244,149x39,0,0{90x39,0,0,0,58x39,91,0[58x20,91,0,1,58x18,91,21,2]}
panes:
- terminal:
-
- vpn:
- cd ~/Descargas
- sudo openvpn ./portatil-acer.conf
- server:
- ssh [email protected]
Esto es un ejemplo sencillo, pero puedes llegar hacer un uso mas complejo para diferentes proyectos
Espero que te haya gustado, pasa un buen día. 🐧