1.要求vim的版本在7.4.143以上,支持python2/3,通過vim --version查看。
2.下載源碼: https://github.com/Valloric/YouCompleteMe#ubuntu-linux-x64
3.安裝Cmake:
sudo apt-get install build-essential cmake
4.確保安裝了python的頭文件:
sudo apt-get install python-dev python3-dev
5.在.vim/下建立目錄:
sudo mkdir ~/.vim/bundle
然后將下載的YouCompleteMe拷貝到這個目錄中。
6.進入到這個目錄編譯:
cd ~/.vim/bundle/YouCompleteMe sudo ./install.py
出現如下提示:
kent@ubuntu:~/.vim/bundle/YouCompleteMe$ ./install.py File /home/kent/.vim/bundle/YouCompleteMe/third_party/ycmd/build.py does not exist; you probably forgot to run: git submodule update --init --recursive
按照提示下載就是了:
sudo git submodule update --init --recursive
這個下載的時間比較長,等下載完之后重新執行:
sudo ./install.py
這里記得加上sudo,不然無法創建目錄,會報錯。
7.我后來重新編譯了YouCompleteMe:
./install.py --clang-completer
自己會查找沒有clang編譯器,然后自己會去網上下載,等待編譯完成。
8.配置vim
在~/.vimrc里面添加如下內容:
set runtimepath+=~/.vim/bundle/YouCompleteMe let g:ycm_collect_identifiers_from_tags_files = 1 " 開啟 YCM 基於標簽引擎 let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注釋與字符串中的內容也用於補全 let g:syntastic_ignore_files=[".*\.py$"] let g:ycm_seed_identifiers_with_syntax = 1 " 語法關鍵字補全 let g:ycm_complete_in_comments = 1 let g:ycm_confirm_extra_conf = 0 let g:ycm_key_list_select_completion = ['<c-n>', '<Down>'] " 映射按鍵, 沒有這個會攔截掉tab, 導致其他插件的tab不能用. let g:ycm_key_list_previous_completion = ['<c-p>', '<Up>'] let g:ycm_complete_in_comments = 1 " 在注釋輸入中也能補全 let g:ycm_complete_in_strings = 1 " 在字符串輸入中也能補全 let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注釋和字符串中的文字也會被收入補全 let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py' let g:ycm_show_diagnostics_ui = 0 " 禁用語法檢查 inoremap <expr> <CR> pumvisible() ? "\<C-y>" : "\<CR>" | " 回車即選中當前項 nnoremap <c-j> :YcmCompleter GoToDefinitionElseDeclaration<CR>| " 跳轉到定義處 "let g:ycm_min_num_of_chars_for_completion=2 " 從第2個鍵入字符就開始羅列匹配項
安裝到此結束。
安裝完之后發現也許沒我上面寫的那么復雜:
1.直接去.vim目錄下創建bundle目錄。
2.進到這個目錄直接下載YouCompleteMe源碼。
3.執行./install.py --clang-completer命令,如果遇到權限問題則在前面加sudo,如果遇到clang沒有則直接去sudo安裝clang。
4.最后一步就是配置VIM。
安裝好YouCompleteMe之后不知道怎么配置,參考了下面鏈接,在此非常感謝: