Não é possível de forma nativa, mas demorou cerca de um minuto para encontrar este script e < href="http://www.vim.org/scripts/script.php?script_id=1480"> este em vim.org .
Existe uma maneira de obter o Vim no modo de comando para completar palavras do arquivo atual? Digamos que eu tenha este arquivo:
one
two
three
once
e eu entro no modo de linha de comando
:myruncommand o|
onde |
indica a posição do cursor. Como faço para que o Vim complete one
ou once
ao pressionar Tab?
Não é possível de forma nativa, mas demorou cerca de um minuto para encontrar este script e < href="http://www.vim.org/scripts/script.php?script_id=1480"> este em vim.org .
A resposta do jamesc costuma ser a mais conveniente, mas para quando você sabe antecipadamente que você use o autocomplete para um comando ou string de pesquisa ou outras funções disponíveis apenas em um buffer, eis uma outra maneira de obter os buffers apropriados:
Basicamente, q : faz o mesmo que : Ctrl + F : permite que você insira comandos como se estivesse inserindo texto em um buffer. Da mesma forma, q / e / Ctrl + F ambos permitem digitar strings de busca em um buffer.
A conclusão estará disponível se você entrar no histórico do modo de comando. Muito útil para alterar ou repetir comandos usados anteriormente.
Pressione q: no modo normal para entrar no painel de histórico de comandos.
Veja link para mais detalhes.
Embora seja verdade que isso não pode ser concluído nativamente com 'tab', existe a possibilidade de:
Inserindo o comando desejado no modo de linha de comando. Para o exemplo acima, isso foi:
:myruncommand o
Agora pressione Ctrl-F
para entrar na janela de comando.
A
para ir até o final da linha e entrar no modo de inserção. Ctrl-N
/ Ctrl-P
para abrir a conclusão de palavras-chave e selecione a opção desejada. Nesse exemplo, one
e once
devem estar disponíveis, pois estão em um buffer aberto. Eu adicionei esta resposta porque a minha pesquisa por "palavra completa do vim no modo de comando" me trouxe até aqui e parece ser uma solução viável, mesmo que não use a tecla 'tab'.
Isso funciona para mim no Vim 7.4
Tags vim tab-completion