Pergunta

Na maioria das vezes, o recurso de preenchimento automático no Vim funciona bem para mim, mas às vezes parece estar verificando arquivos aos quais o arquivo atual faz referência e, em seguida, torna-se dolorosamente lento, às vezes demorando vários segundos para liberar o foco de volta para mim.

Às vezes, o Vim me diz simplesmente que está "digitalizando" outras vezes, está dizendo "digitalizando tags"

Isso só aconteceu em arquivos Ruby, e acontece principalmente quando há um requerimento no arquivo.

Meu palpite é que este é algum tipo de recurso que verifica arquivos relacionados em busca de opções de preenchimento automático, mas eu realmente não preciso disso e prefiro um preenchimento automático mais rápido.

Foi útil?

Solução

Como mencionei em um comentário, tive o mesmo problema.Aqui está o que encontrei;

Há uma configuração que informa ao VIM onde procurar conclusões, chamada complete.

:set complete
complete=.,w,b,u,t,i

Este é o valor padrão.Meu problema é (na verdade ..) o 'i', que verifica todos os arquivos incluídos.Aqui estão dois problemas, o primeiro, encontrar todos esses arquivos podem demorar um pouco, especialmente se você, como eu, tiver

:set path=**

Segundo problema, uma vez encontrados, eles precisam ser lidos e, se você estiver usando um sistema de arquivos em rede (estou no clearcase), localizar e ler todos esses arquivos pode causar falhas no cache, tornando-o dolorosamente lento.

Eu removi o i por enquanto, pois tenho um arquivo de tags e, na maioria das vezes, também tenho os arquivos relevantes em meus buffers (carregados ou descarregados) que serão pesquisados ​​como resultado de 'b' e 'u '.

Usar

set complete-=i

para remover o i da lista, observe que isso é local para o buffer.

Outras dicas

Teve um problema muito semelhante desde a atualização para o Vim 7.3 (de 7.2): eu estava usando o (excelente) Plugin ACP E em arquivos de origem mais longos (arquivos C, 1700 LOC), o pop-up levou anos para pular as sugestões quando eu estava editando perto da parte inferior do arquivo.

Usando o PerformanceValidator (a partir de Softwareverify), Descobri que alguns métodos de dobra foram chamados repetidamente e levaram a carga de processador muito alta e conclusão lenta.

Minha solução alternativa era definir o foldmethod (fdm) para manual. E isso resolveu ...

Você tem um arquivo de tags para o projeto em que está trabalhando? Caso contrário, tente gerar um com CTAGs exuberantes e o VIM deve buscá-lo com o taglist pluglin.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top