Cada vez que abro una sesión tmux en la terminal, se etiquetan todas las pestañas que contienen sesiones vim vim
.
Mi pregunta es: cómo configurarlo para etiquetar las pestañas tmux con el nombre del archivo editado o algo así vim | test.cpp
como el título de las pestañas en cuestión.
Respuestas:
Ahí tienes:
Descomponiendo:
En la lectura de búfer, lectura de archivo o evento de nuevo archivo de búfer (ver
:help autocmd-events
) ejecute el siguiente comando:Llame a una función del sistema y páselo el texto:
Cambiar el nombre de la ventana actual con una cadena que comience por
vim |
Agregue a la cadena el nombre de archivo (vea este artículo para el formato y esta publicación para la inserción expandida)
Agregue el final
'
para cerrar el comando.Después de expandir, se verá (mientras edita el archivo .vimrc):
Como @erthalion dijo en el comentario, puedes limpiar al dejar vim con:
fuente
BufEnter
evento en esta lista (para cambiar la etiqueta incluso cuando cambiemos entre buffers existentes), y algo asíautocmd VimLeave * call system("tmux rename-window 'tmux'")
para la limpieza.Para restaurar el esquema de nombres tmux predeterminado al salir de vim, también puede hacer lo siguiente:
fuente
Esto es lo que puse en mi vimrc gracias a la respuesta de @raphael
También instalo el complemento tmux-plugins / vim-tmux-focus-events para los eventos FocusGained y FocusLost.
fuente