Estou atualizando minhas habilidades em vim e mexendo na conclusão usando o comando Ctrl-n. Estou programando em Perl. Quando estou no modo de inserção e pressiono Ctrl-n, recebo uma mensagem de que está "Verificando arquivo incluído" na parte inferior do terminal e parece que está verificando arquivos nos diretórios de distribuição perl. Isso pode levar alguns segundos antes de terminar. Parece que ele faz isso com os pacotes que eu incluo que são comentados:
#use Moose;
Portanto, tenho que excluir essas linhas para que esse recurso seja de qualquer valor. Estou esquecendo de algo?
Estou usando o plugin perl-support.
autocompletion
StevieD
fonte
fonte
let g:ctrlp_custom_ignore = { 'dir': '^/usr/' } let g:ctrln_custom_ignore = { 'dir': '^/usr/' }
Respostas:
Por padrão, quando você pressiona
C-n
ouC-p
, o Vim procura dentro de várias fontes para encontrar candidatos que preencherão o menu de conclusão.Essas fontes podem ser configuradas com a
'complete'
opção buffer-local .O valor dessa opção é uma lista de sinalizadores separados por vírgula. Cada bandeira tem seu próprio significado descrito em
:h 'cpt
:Por padrão, seu valor é
.,w,b,u,t,i
, o que significa:Se você achar que a verificação dos arquivos incluídos leva muito tempo, tente remover o
i
sinalizador da'cpt'
opção.Se você deseja removê-lo do valor global, para afetar todos os buffers por padrão, escreva em
vimrc
:Se você quiser fazer a mesma coisa, mas apenas para
perl
arquivos, poderá instalar um autocmd dentro do seuvimrc
:Ou melhor, você pode criar um plug-in de tipo de arquivo, por exemplo
~/.vim/after/ftplugin/perl.vim
, no qual você simplesmente escreveria:Para verificar quais são os valores globais e locais atuais de sua
'complete'
opção e onde eles foram definidos pela última vez, você pode usar estes comandos:Ou mais curto:
Se a única fonte na qual você está interessado é o buffer atual, então, em vez de usar
C-n
, você pode usá-loC-x C-n
. Veja:h i_^x^n
para mais informações.fonte
'complete'
mencionam "arquivos incluídos", mas não apontam para mais detalhes sobre o que isso significa. Então leia:he include-search
. Lá, você pode ver que a'include'
opção define o que isso significa e'path'
é usada para pesquisar. Eles são úteis para fazer uma personalização mais refinada do que apenas ativar / desativar todo o recurso.