vim配置python版
https://www.cnblogs.com/cjy15639731813/p/5886158.html
https://www.cnblogs.com/linxiyue/p/7834817.html
基礎配置
vim的配置是在使用者主目錄下的 ~/.vimrc 檔案中完成的,如果沒有的話,需要自己新建一下:
1 2 |
|
首先做些簡單的配置:
1 2 3 4 5 6 7 8 9 10 |
|
為py檔案新增下支援pep8風格的配置:
1 2 3 4 5 6 7 8 |
|
分割視窗
vim在編輯的時候就可以開啟多個檔案:
:vs 或者 :vsplit 將當前視窗豎直分割,並在上面新視窗中顯示當前檔案
:vs filename 將當前視窗豎直分割,新檔案在新視窗中顯示
:sp 或者:sv或者:split 將當前視窗水平分割,並在左邊新視窗中顯示當前檔案
:sp filename 將當前視窗豎直分割,新檔案在左邊新視窗中顯示
:new 新建檔案並豎直分割
:vnew 新建檔案並水平分割
如果想讓新視窗在右邊或者下方開啟,新增配置:
1 2 |
|
在視窗之間切換可以用滑鼠,如果不想用滑鼠,切換按鍵如下:
Ctrl-w-j
切換到下方的分割視窗Ctrl-w-k
切換到上方的分割視窗Ctrl-w-l
切換到右側的分割視窗Ctrl-w-h
切換到左側的分割視窗
覺得三個按鍵多的話可以設定快捷鍵:
1 2 3 4 |
|
這樣就不用按w鍵了。
程式碼摺疊
當代碼行數很多的時候,程式碼摺疊是很必須的:
1 2 |
|
使用zc按鍵來建立摺疊,使用za來開啟或者關閉摺疊。
za經常會誤輸入,可以用空格鍵來替代za:
1 |
|
一鍵執行python程式碼
如果想直接在vim中執行python程式碼,可以新增(來自https://www.zhihu.com/question/20271508):
1 2 3 4 5 6 7 |
|
這樣,按F5鍵python程式碼就可以自動執行了
外掛
vim外掛中最主要的就是vundle了,vundle用來管理vim的其它外掛
Vundle
Vundle 是 Vim bundle 的簡稱,使用git來管理vim外掛,有了它,安裝其它外掛就方便很多。
專案地址https://github.com/VundleVim/Vundle.vim。
首先下載原始碼:
1 |
|
如果~/.vim/bundle目錄不存在,則新建目錄:
1 2 3 4 |
|
然後將下列配置放在.vimrc檔案的開頭:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
如果想下載某個外掛,比如自動縮排indentpython.vim外掛,需要將
1 |
|
置於call vundle#begin()和call vundle#end()之間,儲存配置後在vim中執行
1 |
|
即可以自動下載indentpython.vim外掛了。
bundle可以管理下載幾種不同的外掛,方式如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
下載方式除了在vim中執行:PluginInstall外,還可以在命令列中執行:
1 |
|
其它常用的命令:
1 2 3 4 |
|
YouCompleteMe
非常好用的自動補全外掛,就是比較重。
官網地址:http://valloric.github.io/YouCompleteMe/
github地址:https://github.com/Valloric/YouCompleteMe
YouCompleteMe安裝後還需要手動編譯,然後再在.vimrc中配置。
在ubuntu中使用,首先準備一些工具:
1 |
|
1 |
|
使用vundle安裝:
1 |
|
編譯:
1 2 |
|
引數 --clang-completer是為了加上C系列語言的自動補全,也可以不加:
1 2 |
|
耐心等待吧,要花很長時間...
複製一下預設配置檔案到使用者主目錄:
1 |
|
YCM常用的一些選項,可根據個人喜好調整:
1 2 3 4 |
|
程式碼跳轉:
1 |
|
開關YCM:
1 2 |
|
支援vim8的補全外掛
YouCompleteMe實際上是使用jedi-vim來補全python程式碼的,如果覺得YCM實在太重,可以使用支援vim8的maralla/completor.vim來補全程式碼:
下載:
1 |
|
下載jedi:
1 |
|
配置:
1 |
|
設定起來比YCM簡單很多了。
自動縮排外掛
寫python程式碼,自動縮排是必須的,可以使用indentpython.vim外掛:
1 |
|
語法檢查
安裝syntastic外掛,每次儲存檔案時Vim都會檢查程式碼的語法:
1 |
|
新增flake8程式碼風格檢查:
1 |
|
執行F7就可以進行flake8檢查了。
flake8 --select E123 my_project
配色方案
solarized配色方案已經流行很久了,github地址https://github.com/altercation/vim-colors-solarized。
手動下載:
1 2 3 |
|
或者vundle下載:
1 |
|
solarized有dark和light兩種配色,配置:
1 2 3 |
|
也可以根據gui模式和終端模式進行切換:
1 2 3 4 5 |
|
另外一種配色Zenburn方案:
1 |
|
兩種配色切換:
1 2 3 4 5 6 |
|
nerdtree
給vim新增一個樹形目錄,地址https://github.com/scrooloose/nerdtree。
下載:
1 |
|
新增開關樹形目錄的快捷鍵:
1 |
|
Ctrl+n就可以開啟目錄了。
設定忽略.pyc檔案:
1 |
|
為nerdtree新增git支援:
1 |
|
如果你想用tab鍵:
1 |
|
vim-powerline
美化狀態列,可以顯示當前的虛擬環境、Git分支、正在編輯的檔案等資訊。
1 |
|
indentLine
縮排指示線,地址https://github.com/Yggdroot/indentLine。
安裝:
1 |
|
python是靠程式碼縮排來判斷程式碼塊的,縮排指示線還是很方便的。
vim-autopep8
自動格式化工具,安裝後執行:Autopep8就可以自動依照pep8的標準自動格式化程式碼。
地址https://github.com/Yggdroot/indentLine。
首先安裝autopep8:
1 |
|
1 |
|
可以設定快捷鍵F8代替:Autopep8:
1 |
|
auto-pairs
自動補全括號和引號等,地址https://github.com/jiangmiao/auto-pairs。
1 |
|
ctrlp.vim
搜尋外掛,在vim normal模式下,按下ctrl+p,然後輸入你要尋找的檔案就行了。
地址https://github.com/kien/ctrlp.vim。
1 |
|
ag.vim
搜尋引擎使用了the_silver_searcher
1 2 3 |
|
外掛
1 |
|
使用
1 |
|
vim-fugitive
git整合外掛,可以在vim中執行git命令,https://github.com/tpope/vim-fugitive。
1 |
|