Estou tentando mudar para o VIM como meu editor de texto principal, já passei muito tempo configurando tudo e lendo sobre o VIM.
Agora está tudo bem, exceto uma coisa que me incomoda sempre que vejo. Quando eu inicio o VIM (estou usando apenas a versão do terminal), às vezes há algum tipo de sequência de escape quebrada ou algo na linha de status, que não parece certo
Tambémdigitandoqualquer comando com: substituirá os símbolos conforme você digita, o que também não parece bom.
Verifiquei meu .vimrc várias vezes e não encontrei nada que pudesse causar isso. A única coisa que me vem à mente é que talvez eu tenha bagunçado os eventos VIM e os ganchos TMUX
no meu 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"'
em .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!
Mas eles também parecem bons :/
Minha configuração é:
- macOS 10.4.15
- iTerm2 3.2.9
- ohMeuZsh
- tmux
- macvim 8.1.950
obrigado pela ajuda
SOLUÇÃO: como@Nicholas Marriotapontar, Estas são respostas ao DSR (Device Status Report) que vem do redimensionamento ao ocultar/mostrar a barra de status do tmux. No meu caso, houve um pouco de exagero na configuração. Primeiro, havia o gancho tmux para o foco do painel:
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"'
este deveria mostrar/ocultar a barra tmux ao alternar entre painéis ou janelas com pelo menos um com o VIM aberto. Então eu tinha este no meu .vimrc:
autocmd VimEnter * silent !tmux set -g status off
autocmd VimEnter * silent !tmux set -g pane-border-status off
isso deveria fazer o mesmo, mas no evento VimEnter, eu os escrevi porque pensei que pane-focus-in
o gancho tmux não dispararia quando o Vim iniciasse (o painel permanece o mesmo com o mesmo foco), na verdade isso não é verdade, seria.
Infelizmente, não entendo exatamente o que acontece quando set -g status off
e set -g pane-border-status off
é executado duas vezes, talvez o segundo seja ignorado pelo tmux e o vim não consiga reconhecê-lo, mas removê-lo da configuração .vimrc ajudou a se livrar desses símbolos
Responder1
Estas são respostas ao DSR (Relatório de status do dispositivo), meu palpite é que o vim envia isso no redimensionamento (ativar e desativar as linhas de status do tmux será redimensionado). Parece que o vim não está analisando corretamente as respostas.