2011-05-18 64 views
2

我正在盡我所能按照這裏的安裝說明:http://vim.sourceforge.net/scripts/script.php?script_id=1785,但我無法得到它的工作,它似乎有點模糊。vim java omnicomplete

這是我所做的。

  • 我證實我有vim 7或更高版本。
  • 我創建了一個$ HOME/vim的目錄
  • 我解壓最新到$ HOME/vim的
  • 添加以下兩行的.vimrc:

:setlocal omnifunc=javacomplete#Complete 
:setlocal completefunc=javacomplete#CompleteParamsInfo 

從那裏我不知道我應該怎麼做才能讓它工作。想法?

回答

0

:setlocal命令只設置當前緩衝區的值,它在.vimrc內部沒有任何區別。相反,你應該告訴vim爲每個java類型的文件設置值。這是它是如何做:

if has("autocmd") 
    autocmd Filetype java setlocal omnifunc=javacomplete#Complete 
    autocmd Filetype java setlocal completefunc=javacomplete#CompleteParamsInfo 
endif 

.vimrc與線替換上面的命令,並重新加載它(你可以運行:source ~/.vimrc爲)。

請注意,您需要autocmd(當在vim中運行:echo has("autocmd")時,您必須注意值1)。

+0

爲什麼':execute「echo有('autocmd')」'而不是':echo has('autocmd')'? – ZyX 2011-05-18 19:59:37

+0

ops ...是的,你是對的。我剛剛只嘗試過':has(「autocmd」)',但沒有答案,我想這是因爲'has(string)'函數只能在腳本中使用。我將編輯答案..謝謝 – freitass 2011-05-19 12:57:03

+0

好的,然後什麼是轉義序列來完成自動完成? – Kevin 2011-05-19 17:42:37

相關問題