cdoを使用するようにvimを調整したいです(気候データオペレータ)効率的。 (bash)スクリプトでcdoを使用する必要があるため、小さな説明(まだ検索中!)でオートコンプリートマッチ(実装済み)を追加したいと思いました。
環境を設定しましたが、基本レベルで実行されています。これで、一致する辞書キーワードの右ポップアップメニュー出力を操作できるかどうか疑問に思います。
これまで簡単なキーワード一致がありました。下記をご覧ください。
次の設定を使用します。
私の.vimrc:
set completeopt=longest,menuone
主に 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
私の辞書ファイル〜/.vim/dictionary/cdo.dic:次のように一致します。
abs -abs \
adisit -adisit \
...約700以上...
ターゲット:私が取得したい出力は、辞書ファイルのファイルパスではなく、右側に示す小さな説明です。したがって、演算子の簡単な説明を持つことをお勧めします(たぶん、演算子の後に辞書ファイルに保存することはできますか?)。説明目的で
selcode : Select parameters by code number {selcode,code ifile ofile}
辞書から行を読みます。
selcode -selcode {Select parameters by code number [selcode,code ifile ofile]}\
だから基本的に私は、多くのプログラミングや他の外部ツールプラグインを使わずに、クイック検索ツールを使って演算子の名前と簡単な説明を見つけます。それで「できるか、どう?」という質問なのに…
これまで、私はvimドキュメントとvim、Dictionary、Complete、Completeopt、pmenuなどを検索してみました。
アドバイスありがとうございます。
答え1
(Vimのソースコードを直接変更しない限り)プリコンプリートのコンテキストに影響を与えることはできません。
しかし、Vimはカスタム補完を実装する機能を提供します。ここではすべての関連情報と例を見つけることができます:help complete-functions
。これにより、コンテキスト(menu
、cp。という名前:help complete-items
)に対するフルアクセス権が得られます。
辞書ファイルをソースとして使用できます。ファイルを読み取って(たとえば、readfile()
)ビットを解析する(またはmatchlist()
)カスタムコンプリート機能を実装するVimスクリプトでは、辞書エントリをVimリストとして直接定義する必要があります。 。
答え2
この問題を発見した後、プラグインを作成しました。
https://github.com/jsit/vim-customcpt
Ingo Karkatの承認された回答に応じて構築されたaaron.springプラグインで構築されましたが、任意のjsonファイルをオートコンプリート「辞書」として受け入れます。