Potencia tmux con tmuxinator

Introducción

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 carlos@192.168.1.3

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 user-server@192.168.1.3

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.