2015-12-11 31 views
0

我剛剛安裝了Neocomplete,並嘗試了C文件,ruby和python,並且它完美地工作。 我有vim文件的問題,因爲我根本沒有得到任何omnicompletion。我試過C-x C-o並得到omnifunc is not set錯誤Neocomplete不適用於vim文件

我在做什麼錯?我認爲這會從頭開始。

+0

vimscript沒有任何omnicompletion。 – romainl

+0

我在說vim中的Neocomplete插件。它如何爲vim腳本提供自動完成功能?爲什麼它不適合我的情況? –

+0

再一次,vimscript有* no * omnicompletion。 – romainl

回答

1

你沒有做錯什麼。這不是neocomplete的工作提供omnifunc

Neocomplete在omni完成時可以很好地工作:它使用omnifunc來提供很好的完成候選項以及vim提供的其他完成項。但是,neocomplete本身並不爲不同的文件類型提供或設置omnifunc。這就是爲什麼its configuration example有多行set omnifunc=..

它與蟒蛇等,因爲相應的功能被Vim運行時文件提供(例如/usr/local/share/vim/vim74/autoload/pythoncomplete.vim)或其它插件(如jedi-vim),以及omnifunc選項相應設置(如果你想知道在哪裏,嘗試:verbose set omnifunc?) 。

不幸的是,默認情況下,沒有爲Vim腳本提供全方位完成功能,所以您需要i)找到一個和ii)set omnifunc=(that function)。之後,neocomplete將能夠使用該功能提供全面完成。


編輯:作爲@馬丁Macak指出,neocomplete-vim的GitHub的頁面確實顯示出類似全完成。經過一番挖掘,看起來這些完井來自Shougo/neco-vim,簡要提及in the doc。提到的i_CTRL-X_CTRL-V也值得一試。

+1

然後我不明白neocomplete.vim github頁面上的圖片是什麼。有一個動畫gif顯示了vim文件中的omnicompletion,提供了函數名稱等等。 –

+1

@MartinMacak似乎neco-vim在那裏使用。請參閱我的編輯。 – Yosh

+0

哦,對不起,謝謝你的答案 –

相關問題