O Vim rola muito lentamente quando uma linha é muito longa


23

Eu nunca teria pensado que Vim seria tão lento. Tudo o que tenho é a seguinte linha longa:

insira a descrição da imagem aqui
(Clique na imagem para ampliar)

Eu corro o Vim (MacVim) no Mac OS X com o aplicativo de terminal. Aqui está o meu vimrc . Espero que não tenha nada a ver com alguns dos meus plugins. Se eu quebrar a grande linha da imagem, tudo estará funcionando rapidamente novamente.


+1. Obrigado pela imagem! Essa linha em si é extremamente longa. Lembre-se de que os editores de texto da CLI costumavam limitar as linhas a 255 caracteres nos dias do DOS. O realce da sintaxe requer que cada tag HTML abra e feche seja monitorada, e cada aspas duplas também e, em seguida, cada variável. E tenho certeza de que cada vez que você aninha outra marca dentro da marca HREF, o editor precisa descobrir exatamente o que isso significa. Vi o emacs ter problemas para destacar o texto com o qual o VI não tem problemas: Você também pode escolher editores sob demanda, como fazemos com o chrome, o FF e o infame navegador IE.
Vlueboy

Respostas:


23

Este é um problema conhecido com o Vim e linhas muito longas. Eu vejo três soluções:

  1. Desative o destaque de sintaxe com :syntax off.
  2. Sintaxe de limite destacada com :set synmaxcol=200ou algum outro valor.
  3. Quebre sua linha longa em pedaços menores com :s/\s<a/<C-v><Enter><a.

Nesse caso em particular, eu recomendaria a solução 3.


36

tente o seguinte:

" Syntax coloring lines that are too long just slows down the world
set synmaxcol=128

caso contrário, eu recomendo acelerar o vim:

set ttyfast " u got a fast terminal
set ttyscroll=3
set lazyredraw " to avoid scrolling problems

2
+1. Isso será útil, mesmo que não tenha sido escolhido pelo solicitante como a "melhor" resposta.
Vlueboy

2
Wow synmaxcolfez essa diferença ao escrever postagens de blog em descontos.
Keith Smiley

lazyredrawfez o truque para mim. Mesmo sem nenhum plug-in, percorrer certos arquivos era terrivelmente lento. Este foi o caso no vim e no gvim. A criação de perfil não mostrou nada.
Confusão

set synmaxcol=4096completamente resolvida a questão do destaque de sintaxe que está sendo quebrado em longas filas :)
Jay Taylor

1

Eu acho que você parece ter definido o cursor. Descobri que costumava ser o maior colaborador do lag no meu vim. Você pode tentar desativar isso.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.