vim: manipula o pop-up do dicionário para preenchimento automático

2

Eu gostaria de ajustar o vim para usar cdo ( Operadores de Dados Climáticos ) de maneira eficiente. Como preciso usar scripts cdo in (bash), gostaria de adicionar uma correspondência de preenchimento automático (implementada!) Com uma descrição pequena (ainda procurando!).

Eu configurei o ambiente e ele funciona em um nível básico. Por enquanto, eu estou querendo saber se é possível manipular a saída do menu pop-up no lado direito das palavras-chave do dicionário.

Eu tenho uma palavra-chave simples correspondente até agora, veja a imagem abaixo:

Usando a seguinte configuração:

Meu .vimrc: set completeopt=longest,menuone

Inclui dicionários diferentes, principalmente cdo.dic: ~ / .vim / ftdetect / cdo.vim:

au BufRead,BufNewFile *.sh set dictionary+=~/.vim/dictionary/cdo.dic au BufRead,BufNewFile *.sh set dictionary+=~/.vim/dictionary/hamocc.dic au BufRead,BufNewFile *.sh set dictionary+=~/.vim/dictionary/mpiom.dic

Meu arquivo de dicionário ~ / .vim / dictionary / cdo.dic: com é comparado com

abs -abs \ %código% ... cerca de 700 mais ....

Objetivo : O que eu adoraria obter como saída é uma pequena descrição exibida à direita, em vez do caminho de arquivo do arquivo de dicionário. Então, de preferência, uma breve explicação do operador (que também pode ser armazenada no arquivo do dicionário após o operador?), Por exemplo. para fins ilustrativos

adisit -adisit \

lê a partir de uma linha de dicionário:

selcode : Select parameters by code number {selcode,code ifile ofile}

Então, basicamente, eu ferramenta de pesquisa rápida para nomes de operadores e descrição curta, sem grande programação, plugins com outras ferramentas externas. Então é um 'é possível e como?' pergunta ...

Eu tentei até agora a documentação do vim, e pesquisando sobre o vim, dicionário, complete, completeopt, pmenu, ...

Agradeço suas sugestões.

    
por aaron.spring 06.09.2016 / 23:11

2 respostas

0

Você não pode influenciar as informações de contexto da conclusão do dicionário (a menos que você altere diretamente o código-fonte do Vim).

No entanto, o Vim fornece a capacidade de implementar conclusões personalizadas. Você encontrará todas as informações relevantes e um exemplo em :help complete-functions . Com isso, você tem controle total sobre o contexto (chamado menu , cp. :help complete-items ).

Você pode ficar com os arquivos de dicionário como sua fonte; você teria que ler o arquivo (por exemplo, via readfile() ) e analisá-lo ligeiramente ( matchlist() ) ou definir diretamente seus itens de dicionário como uma Lista Vim, no script Vim que implementa sua conclusão personalizada.

    
por 08.09.2016 / 15:05
0

Encontrar esta pergunta levou-me a escrever um plug-in:

link

Ele é construído a partir do plug-in que o aaron.spring construiu em resposta à resposta aceita por Ingo Karkat, mas aceita qualquer arquivo json arbitrário como um "dicionário" de autocompletar.

    
por 10.01.2017 / 15:41