Estoy intentando pasar a VIM como mi editor de texto principal, ya pasé mucho tiempo configurando todo y leyendo sobre VIM.
Ahora todo está bastante bien, excepto una cosa que me molesta todo el tiempo que la veo. Cuando inicio VIM (estoy usando solo la versión de terminal), a veces hay algún tipo de secuencia de escape rota o algo en la línea de estado que no se ve bien
Tambiénescribiendocualquier comando con: reemplazará los símbolos a medida que escriba, lo que tampoco se ve bien.
Revisé mi .vimrc varias veces y no encontré nada que pudiera causar esto. Lo único que me viene a la mente es que tal vez me equivoqué con los eventos VIM y los ganchos TMUX.
en mi tmux.conf
set-hook -g pane-focus-in 'if -F "#{==:#{pane_current_command},Vim}" "set -g status off; set -g pane-border-status off" "set -g status on; set -g pane-border-status bottom"'
en .vimrc
autocmd VimEnter * silent !tmux set -g status off
autocmd VimEnter * silent !tmux set -g pane-border-status off
autocmd VimLeave * silent !tmux set -g status on
autocmd VimLeave * silent !tmux set -g pane-border-status bottom
au FocusLost * :set laststatus=0
au FocusGained * :set laststatus=2
autocmd InsertLeave * redraw!
Pero también se ven bien :/
Mi configuración es:
- MacOS 10.4.15
- iTerm2 3.2.9
- ohMyZsh
- tmux
- macvim 8.1.950
gracias por su ayuda
SOLUCIÓN: como@Nicolás MarriottSeñale que estas son respuestas al DSR (Informe de estado del dispositivo) que proviene del cambio de tamaño al ocultar/mostrar la barra de estado de tmux. En mi caso, la configuración fue un poco exagerada. Primero, había un gancho tmux para el foco del panel:
set-hook -g pane-focus-in 'if -F "#{==:#{pane_current_command},Vim}" "set -g status off; set -g pane-border-status off" "set -g status on; set -g pane-border-status bottom"'
Se supone que este muestra/oculta la barra tmux al cambiar entre paneles o ventanas con al menos uno con VIM abierto. Luego tuve este en mi .vimrc:
autocmd VimEnter * silent !tmux set -g status off
autocmd VimEnter * silent !tmux set -g pane-border-status off
Se suponía que eso haría lo mismo, pero en el evento VimEnter, los escribí porque pensé que pane-focus-in
el gancho tmux no se activaría cuando se iniciara Vim (el panel permanece igual con el mismo enfoque), en realidad eso no es cierto, lo haría.
Desafortunadamente, no entiendo qué sucede exactamente cuando set -g status off
y set -g pane-border-status off
se ejecuta dos veces, tal vez tmux ignora el segundo y vim no puede reconocerlo, pero eliminarlo de la configuración .vimrc ayudó a eliminar esos símbolos.
Respuesta1
Estas son respuestas al DSR (Informe de estado del dispositivo), supongo que vim envía esto al cambiar el tamaño (al activar y desactivar las líneas de estado de tmux se cambiará el tamaño). Parece que vim no está analizando correctamente las respuestas.