Nvim用的是Shougo開發的NCM,可是在VIM 8+就要用同一個做者開發的Deoplete.
參考官網:Shougo/deoplete.nvimpython
注意:這裏只講怎麼給vim8安裝。git
# 安裝VIM 8 # .... # 安裝Python3 # .... # 安裝vim的Python-client庫pynvim pip2 install --user pynvim pip3 install --user pynvim # 安裝插件 python的neovim庫 pip2 install --user neovim pip3 install --user neovim
set encoding=utf-8 set pyxversion=3 " 或 set pyxversion=2 " Python3的可執行文件位置 g:python3_host_prog = "/path/to/bin/python3" " 在插件管理器中,好比vim-plug中,加入以下: if has('nvim') Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } else Plug 'Shougo/deoplete.nvim' Plug 'roxma/nvim-yarp' Plug 'roxma/vim-hug-neovim-rpc' endif let g:deoplete#enable_at_startup = 1
保存重啓vim,並在vim中輸入命令:PlugInstall
安裝插件。github
如下命令不能報錯才行:vim
:python3 import neovim
不報錯,或:python2 import neovim
不報錯:echo has('pythonx')
返回1:echo exepath('python3')
可以顯示python3的執行文件位置,或:echo exepath('python2')
可以顯示python2的執行文件位置:echo neovim_rpc#serveraddr()
能顯示服務器的IP地址在Insert模式下,直接輸入文字就會彈出自動補全。而後用Ctrl+n
和Ctrl+p
上下選擇。c#
通常若是沒有安裝任何源,則自動補全只會根據當前文件已有的名字進行猜想。這確定不是咱們要的。
咱們要的效果是:根據語言的特性,補全引用自帶庫、第三方庫的全部類、函數等。服務器
參考官方推薦的各語言的補全源:Completion Sourceside
Deoplete的Python推薦使用deoplete-jedi
參考:zchee/deoplete-jedi函數
安裝依賴:測試
Neovim and neovim/python-clientlua
python-client: pynvim
pip2 install pynvim --user
pip3 install pynvim --user
pip install jedi --user
安裝方法是利用vim-plug管理器:
Plug 'zchee/deoplete-jedi'
默認下,什麼都不用配置,安裝好後就能夠很好的用起來了。
C/C++用的是deoplete-clangx
插件,須要本機安裝Clang輕量級C編譯器支持。
依賴:
而後直接在插件管理器中加入安裝便可:
Plug 'Shougo/deoplete-clangx'
若是本機沒有pip2
和pip3
的話,最方便的是用包管理器從新安裝。
Mac上:
brew install python@2 brew reinstall python@2
Ubuntu上:
sudo apt-get install -y python-pip python3-pip
若是以上這些都很難知足,那麼是時候考慮從新編譯VIM了。
若是是Mac的話,能夠用brew install vim --with-cscope --with-python --with-lua --override-system-vim
直接按照可選的語言支持編譯vim。
測試可行