Windows 10環境安裝VIM代碼補全插件YouCompleteMe
折騰一周也沒搞定Windows下安裝VIM代碼補全插件YouCompleteMe,今天在家折騰一天總算搞定了。關鍵問題是在於Python環境:必須確保環境變量Path里只有一個python.exe。
ycmd是client-server架構。ycmd本身是server,可以為多種客戶端所用,如VIM/YouComplete,emacs/emacs-ycmd等。服務端有不同引擎,如clang補全c-familiy語言,其他引擎如可以補全javascript,python,c#等。
因為我想把ycmd用在其他環境,故這里把ycmd與YouCompleteMe分開設置。這與官網上的教程不太一致。
0. 依賴
下載最新版安裝就可,並把所有安裝路徑加到環境變量Path里去。必須確保環境變量Path里面只有一個python.exe和它的dll,否則編譯能通過,但運行出錯。我這一個星期的折騰都是因為這個,好郁悶。可以運行命令where python來檢查,只有一條輸出就可以了。
1. ycmd
打開cmd.exe, 運行:
1 cd %USERPROFILE% 2 git clone https://github.com/Valloric/ycmd.git ycmd.git 3 cd ycmd.git
4 git submodule update --init --recursive 5 python build.py --clang-completer 6 cd examples 7 pip install -r requirements.txt 8 python example_client.py
其他第五步編譯時間較長,編譯完后檢查有無錯誤。第8步有些錯誤輸出,但只要python代碼無錯誤,服務能起來就好。
2. VIM
上VIM官網下載最新版安裝即可,並把安裝路徑加入環境變量Path.
3. YouCompleteMe
打開cmd.exe, 運行:
1 cd %USERPROFILE% 2 git clone https://github.com/Valloric/YouCompleteMe.git YouCompleteMe.git 3 cd YouCompleteMe.git 4 cd third_party 5 rename ycmd ycmd.bak 6 mklink /J ycmd ..\..\ycmd.git
按照YouCompleteMe的默認設置,ycmd目錄在YouCompleteMe目錄下,故這里我們創建一個鏈接到ycmd.git.
打開gvim配置文件_vimrc,加入一行:
set rtp+=%USERPROFILE%/YouCompleteMe.git
保存,用gvim打開一個.cc文件,若無錯誤提示,則配置成功。我這里提示python import module requests_futures錯誤,用pip安裝即可:
pip install requests_futures
