No vim, a cor de fundo muda na rolagem

12

Ocasionalmente recebo um erro estranho com a cor de fundo no vim ao rolar para cima em um arquivo longo. O fundo sobre o texto está correto, mas em todos os lugares não há caracteres imprimíveis o fundo fica preto.

Depois de um pouco de caça e experimentação, descobri que: redesenhar! resolve o problema, mas gostaria de saber por que isso ocorre e se há algo que eu possa fazer para corrigir o problema permanentemente.

Embora eu tenha conseguido esse erro ocorrer com outros esquemas de cores, pelo que vale a pena estou usando o esquema de cores lucius com o vim 7.3 editando um monte de arquivos python.

    
por jlund3 05.08.2012 / 23:55

2 respostas

16

Como explicado aqui e aqui , você pode corrigir isso desativando Background Color Erase . Alterar seu .vimrc :

if &term =~ '256color'
    " Disable Background Color Erase (BCE) so that color schemes
    " work properly when Vim is used inside tmux and GNU screen.
    set t_ut=
endif

Você também pode digitar Ctrl + L para redefinir a tela.

    
por 26.04.2013 / 23:38
0

Isso pode ser um plugin ou configuração relacionada, talvez tente

vim -u NONE

para carregar o vim sem o vimrc e sem plugins e ver se o problema persiste.

No que diz respeito a configuração, acho que você provavelmente deveria olhar para lazyredraw e ttyfast.

Você pode ler a documentação digitando (: help lazyredraw) e descobrir se você, inadvertidamente, a configurou (: set lazyredraw?) e provavelmente desmarcá-la (: set nolazyredraw).

E isso pode ajudar se você definir ttyfast (: help ttyfast).

    
por 06.08.2012 / 00:06