Fedora 27安裝vim插件YouCompleteMe
阿新 • • 發佈:2018-04-03
YCM YouCompleteMe vim
1. YouCompleteMe是一款強大的Vim插件,它可以實現代碼的自動補全,跳轉到定義等功能,並且支持java, python, go, c家族等多種語言。
網址: https://github.com/Valloric/YouCompleteMe
2. 其github的網站上詳細地給出了安裝該插件的步驟,但是由於該插件所依賴的軟件和庫比較多,稍有出入就會出錯,所以該插件也被稱為史上最難安裝VIM插件。經過了一天在CentOS6.8系統上痛苦的折磨之後,我終於放棄了CentOS6.8,轉投到fedora27上重新折騰(其實是因為我把CentOS搞崩了)。這次的安裝還算比較順利。下面記錄一下安裝過程。
3. 首先要檢查VIM的版本,目前需要大於7.4.1578,fedora27的vim版本是8.0,通過。如果你的系統是低於要求版本的,需要升級vim.
4. 跟隨官網推薦,使用Vundle這個vim插件管理器來安裝YouCompleteMe,需要先安裝Vundle.
按照這裏的方法基本上就沒有問題:https://github.com/VundleVim/Vundle.vim#about
需要註意的是Vundle官網給出的.vimrc的例子中包含了很多額外的插件,我們需要裝的只有兩個就是:Plugin ‘VundleVim/Vundle.vim‘,和Plugin ‘Valloric/YouCompleteMe‘, 我們要確保這兩行被添加在.vimrc文件中,其他是都是可選的。如果是小白,最好先把其他的都刪掉以免不必要的麻煩。其他可選的步驟都可以先略去。
5. 等待漫長的時間後------也許很快,我的就很快,不到一分鐘,是因為一開始就出錯了。
報錯:YouCompleteMe unavailable: no module named xxx, 具體模塊名忘記了。
這時參考網站:https://www.jianshu.com/p/d908ce81017a?nomobile=yes 中‘通過git安裝YCM‘的步驟,同時也參考YCM官網的‘Full Installation Guide‘中的說明:
If you don‘t install YCM with Vundle, make sure you have run git submodule update --init --recursive after checking out the YCM repository (Vundle will do this for you) to fetch YCM‘s dependencies.
這裏指出如果沒有通過Vundle來YCM安裝的話,需要先git clone YCM, 再執行git submodule update --init --recursive 這條命令來獲取YCM依賴包。
我雖然用了Vundle安裝YCM, 但是貌似沒有安裝成功,那就算是滿足 ‘沒有通過Vundle來安裝’ 這個條件吧。照著執行了git submodule update命令,大約十幾分鐘後,執行完成,沒有報錯。打開vim,也沒有先前的錯誤,說明已經安裝YCM插件。
還要說明的是我並沒有按照簡書上面的步驟安裝libclang, 也沒有編譯ycm_core庫,我僅僅是git submodule update,然後就執行第6步了。
6. 到此,可以按照YCM官網後續步驟操作了,依次為安裝開發工具和cmake, 安裝python headers, 編譯YCM. 我用的是沒有c-family語義支持的。都比較順利,沒有出現過在CentOS中出現的升級glibc,升級gcc等問題。
7. 打開vim編輯一個python文件,發現已經可以代碼補全。Great job !
Fedora 27安裝vim插件YouCompleteMe