成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

VIM自動(dòng)補(bǔ)全插件:deoplete

Ajian / 1489人閱讀

摘要:添加補(bǔ)全源一般如果沒有安裝任何源,則自動(dòng)補(bǔ)全只會(huì)根據(jù)當(dāng)前文件已有的名字進(jìn)行猜測(cè)。我們要的效果是根據(jù)語言的特性,補(bǔ)全引用自帶庫(kù)第三方庫(kù)的所有類函數(shù)等。

Nvim用的是Shougo開發(fā)的NCM,但是在VIM 8+就要用同一個(gè)作者開發(fā)的Deoplete.

參考官網(wǎng):Shougo/deoplete.nvim

注意:這里只講怎么給vim8安裝。

安裝 第一步:安裝所有依賴
# 安裝VIM 8
# ....

# 安裝Python3
# ....

# 安裝vim的Python-client庫(kù)pynvim
pip2 install --user pynvim
pip3 install --user pynvim

# 安裝插件 python的neovim庫(kù)
pip2 install --user neovim
pip3 install --user neovim
第二步:在vimrc中添加配置
set encoding=utf-8

set pyxversion=3
" 或
set pyxversion=2

" Python3的可執(zhí)行文件位置
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安裝插件。

第三步:在vim中輸入測(cè)試命令

以下命令不能報(bào)錯(cuò)才行:

:python3 import neovim 不報(bào)錯(cuò),或

:python2 import neovim 不報(bào)錯(cuò)

:echo has("pythonx") 返回1

:echo exepath("python3") 能夠顯示python3的執(zhí)行文件位置,或

:echo exepath("python2") 能夠顯示python2的執(zhí)行文件位置

:echo neovim_rpc#serveraddr() 能顯示服務(wù)器的IP地址

使用方法

在Insert模式下,直接輸入文字就會(huì)彈出自動(dòng)補(bǔ)全。然后用Ctrl+nCtrl+p上下選擇。

Add Completion Source 添加補(bǔ)全源

一般如果沒有安裝任何源,則自動(dòng)補(bǔ)全只會(huì)根據(jù)當(dāng)前文件已有的名字進(jìn)行猜測(cè)。這肯定不是我們要的。
我們要的效果是:根據(jù)語言的特性,補(bǔ)全引用自帶庫(kù)、第三方庫(kù)的所有類、函數(shù)等。

參考官方推薦的各語言的補(bǔ)全源:Completion Sources

[Python Source]

Deoplete的Python推薦使用deoplete-jedi
參考:zchee/deoplete-jedi

安裝依賴:

Neovim and neovim/python-client

python-client: pynvim

pip2 install pynvim --user

pip3 install pynvim --user

jedi: pip install jedi --user

安裝方法是利用vim-plug管理器:

Plug "zchee/deoplete-jedi"

默認(rèn)下,什么都不用配置,安裝好后就可以很好的用起來了。

[C/C++ Source]

C/C++用的是deoplete-clangx插件,需要本機(jī)安裝Clang輕量級(jí)C編譯器支持。

參考:Shougo/deoplete-clangx

依賴:

本機(jī)安裝Clang

已經(jīng)能正常使用deoplet

然后直接在插件管理器中加入安裝即可:

Plug "Shougo/deoplete-clangx"
更新

如果本機(jī)沒有pip2pip3的話,最方便的是用包管理器重新安裝。

Mac上:

brew install python@2
brew reinstall python@2

Ubuntu上:

sudo apt-get install -y python-pip python3-pip
更新

如果以上這些都很難滿足,那么是時(shí)候考慮重新編譯VIM了。

如果是Mac的話,可以用brew install vim --with-cscope --with-python --with-lua --override-system-vim直接按照可選的語言支持編譯vim。

測(cè)試可行

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/25063.html

相關(guān)文章

  • 使用 Vim 搭建 Lua 開發(fā)環(huán)境

    摘要:使用搭建開發(fā)環(huán)境原文鏈接是一個(gè)模塊化的,針對(duì)這一語言的支持主要依靠模塊以及與之相關(guān)的其它模塊。在閱讀這篇文章之前,可以先閱讀使用搭建基礎(chǔ)的開發(fā)環(huán)境,對(duì)語言相關(guān)以外的功能有一個(gè)大致的了解。該模塊默認(rèn)使用這一異步語法檢查工具。 使用 Vim 搭建 Lua 開發(fā)環(huán)境 原文鏈接:https://spacevim.org/cn/use-v... SpaceVim 是一個(gè)模塊化的 Vim IDE...

    Freeman 評(píng)論0 收藏0
  • SpaceVim - 一個(gè)模塊化加載的vim配置

    摘要:是一個(gè)社區(qū)驅(qū)動(dòng)的模塊化配置集合,其中包含了多種功能模塊,并且針對(duì)做了功能優(yōu)化。有多種功能模塊可供選擇,用戶只需要選擇需要的模塊,就可以配置出一個(gè)適合自己的開發(fā)環(huán)境。 SpaceVim 中文手冊(cè) showImg(https://segmentfault.com/img/remote/1460000007968382);showImg(https://segmentfault.com/im...

    megatron 評(píng)論0 收藏0
  • 如何讓 vim 成為我們的神器

    摘要:是一個(gè)上古神器,剛剛接觸的同學(xué)可能很難駕馭,本篇文章主要帶領(lǐng)大家快速入門,并持續(xù)分享當(dāng)前流行的一些安裝新手指南教程移動(dòng)光標(biāo)向前移動(dòng)兩個(gè)單詞向前移動(dòng)到第個(gè)單詞的末尾移動(dòng)到行首當(dāng)前行的末尾文件第一行文件最后一行行號(hào)指定行跳轉(zhuǎn)回之前的位置返回 showImg(https://segmentfault.com/img/bVXn2m?w=1920&h=1080); Vim 是一個(gè)上古神器,剛剛...

    Scorpion 評(píng)論0 收藏0
  • Vim 寫 Python 的最佳實(shí)踐

    摘要:本文內(nèi)容整理自我在知乎的回答用寫的最佳實(shí)踐是什么,下面的內(nèi)容是對(duì)知乎舊有回答的一個(gè)補(bǔ)充,尤其有一些主要針對(duì)如果想要更多內(nèi)容,可以查看知乎對(duì)于該問題的一些回答。主要是針對(duì)提供的內(nèi)容進(jìn)行再提取進(jìn)行展示。 先來曬個(gè)圖: showImg(https://segmentfault.com/img/bVIDeB?w=1434&h=1430); 對(duì)于一些 Python 的小項(xiàng)目,使用 vim 是一個(gè)...

    TANKING 評(píng)論0 收藏0
  • Vim 寫 Python 的最佳實(shí)踐

    摘要:本文內(nèi)容整理自我在知乎的回答用寫的最佳實(shí)踐是什么,下面的內(nèi)容是對(duì)知乎舊有回答的一個(gè)補(bǔ)充,尤其有一些主要針對(duì)如果想要更多內(nèi)容,可以查看知乎對(duì)于該問題的一些回答。主要是針對(duì)提供的內(nèi)容進(jìn)行再提取進(jìn)行展示。 先來曬個(gè)圖: showImg(https://segmentfault.com/img/bVIDeB?w=1434&h=1430); 對(duì)于一些 Python 的小項(xiàng)目,使用 vim 是一個(gè)...

    cloud 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<