Saltar al contenido principal

Vim + Tmux: El Dúo Dinámico

Si Vim es tu editor, Tmux es tu escritorio. Tmux es un "multiplexor de terminales". ¿Qué significa eso? Que te permite tener múltiples sesiones, ventanas y paneles dentro de una sola terminal. Juntos, Vim y Tmux crean un entorno de desarrollo increíblemente potente y ligero.

¿Por qué usarlos juntos?

Imagina que estás editando código en Vim en un panel, tienes el servidor corriendo en otro panel al lado, y una consola de git en una ventana separada. Todo esto sin tocar el ratón y persistente (puedes desconectarte y volver más tarde y todo seguirá igual).

Conceptos Básicos de Tmux

Tmux se maneja con un "prefijo" (por defecto Ctrl + b) seguido de una tecla.

Gestión de Paneles (Splits)

  • Ctrl + b luego %: Divide verticalmente.
  • Ctrl + b luego ": Divide horizontalmente.
  • Ctrl + b luego flechas: Moverse entre paneles.

Gestión de Ventanas

  • Ctrl + b luego c: Crear nueva ventana.
  • Ctrl + b luego n: Siguiente ventana.
  • Ctrl + b luego p: Ventana anterior.

Uno de los mayores problemas al principio es que moverse entre paneles de Vim (Ctrl + w + h/j/k/l) es diferente a moverse entre paneles de Tmux.

Para solucionar esto, existe un plugin maravilloso llamado vim-tmux-navigator.

Configuración

  1. En Vim (.vimrc o init.lua): Instala el plugin christoomey/vim-tmux-navigator.
  2. En Tmux (.tmux.conf): Añade la configuración para reconocer si estás en Vim o en Tmux.

Con esto configurado, podrás usar Ctrl + h/j/k/l para moverte fluidamente entre tus archivos abiertos en Vim Y tus paneles de Tmux. ¡Es magia!

Flujo de Trabajo Típico

  1. Abres tu terminal.
  2. Creas una sesión: tmux new -s proyecto.
  3. Divides la pantalla: Ctrl + b + %.
  4. En la izquierda abres Vim: vim ..
  5. En la derecha corres tus tests o servidor.

Conclusión

Tmux potencia a Vim dándole capacidades de gestión de ventanas que rivalizan con cualquier IDE moderno. Pero hablando de IDEs... ¿y si pudiéramos convertir Vim en un IDE completo con autocompletado, explorador de archivos y más? Eso es lo que veremos en la siguiente lección con AstroNvim.