[英]Autocompletion in Vim
我在自動完成時遇到問題。 我在輸入時如何獲得代碼建議?
我通常使用 PHP、Ruby、HTML、C 和 CSS 進行開發。
使用Ctrl - N在插入模式下獲取單詞建議列表。 輸入:help i_CTRL-N
查看 Vim 關於此功能的文檔。
這是一個將 Python 字典導入 Vim 的示例。
您可以使用AutoComplPop 之類的插件在您鍵入時自動完成代碼。
2015 年編輯:我現在個人使用YouCompleteMe 。
如果您使用的是 VIM 版本 8+,只需鍵入Ctrl + n
或Ctrl + p
。
您可以從內置的omnifunc
設置開始。
只是說:
filetype plugin on
au FileType php setl ofu=phpcomplete#CompletePHP
au FileType ruby,eruby setl ofu=rubycomplete#Complete
au FileType html,xhtml setl ofu=htmlcomplete#CompleteTags
au FileType c setl ofu=ccomplete#CompleteCpp
au FileType css setl ofu=csscomplete#CompleteCSS
在.vimrc
的底部,然后在插入模式下鍵入<Ctrl-X><Ctrl-O>
。
我總是依賴這個 CSS 補全。
還有https://github.com/Valloric/YouCompleteMe ,它包括 Jedi 之類的東西,也有模糊匹配。 到目前為止,我發現 YCM 是我嘗試過的最快的。
編輯:還有一些新的,比如https://github.com/maralla/completor.vim
另一種選擇是coc.nvim 。
它非常快並且完成非常好,因為它使用與 VScode 相同的自動完成功能。 它還具有 linting 功能。 所以它表明你可能有一個錯誤。 它支持多種語言。
設置和配置可能需要一些時間,但我認為這是最好的 vim 自動完成引擎。
我已經使用neocomplcache大約半年了。 它是一個插件,可以收集所有緩沖區中的單詞緩存,然后提供它們供您自動完成。
上一個鏈接中的項目頁面上有一系列屏幕截圖。 Neocomplcache 還有很多配置選項,項目頁面上也有基本示例。
如果您需要更深入的了解,可以查看我的vimrc中的相關部分 - 只需搜索 neocomplcache 一詞即可。
如果您只想從當前緩沖區的緩存中自動完成, supertab比neocomplete更容易安裝,可以在 Mac 預裝的 vim 上工作,無需 MacVim。
您可以在vim awesome上查看其他替代方案。
對於 PHP,使用Deoplete的Padawan是在 Neovim 中擁有強大的 PHP 自動完成功能的絕佳解決方案。 我嘗試了很多東西,學徒的工作就像一個魅力!
對於 Vim,您可以使用Neocomplete而不是 Deoplete。
如果有人感興趣,我寫了一篇如何制作Vim PHP IDE的文章。 當然,學徒是其中的一部分。
使用 vscode 和 vim 擴展。 那么你將獲得 vscode 的所有好處,以及 vim 鍵綁定。 如果您在終端上是 24*7 或使用 32 linux,則必須使用上述方法啟用它.....
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.