Vim

vim:為自動完成操作字典彈出視窗

  • January 10, 2017

我想調整 vim 以有效地使用 cdo(氣候數據運算符)。因為我需要在(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: with 匹配

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 文件,並在Google上搜尋了 vim、字典、完整、completeopt、pmenu 等。

我很欣賞你的建議。

你不能影響字典補全的上下文資訊(除非你直接改變 Vim 的原始碼)。

然而,Vim 提供了實現自定義完成的能力。您可以在 中找到所有相關資訊和範例:help complete-functions。這樣,您就可以完全控制上下文(命名為menucp. :help complete-items)。

您可以堅持使用字典文件作為來源;您必須讀取文件(例如 via readfile())並稍微解析它(matchlist()),或者您在實現自定義完成的 Vim 腳本中直接將您的字典項定義為 Vim 列表。

引用自:https://unix.stackexchange.com/questions/308290