今天同事小夥伴突然告訴我說,他用的編輯器sublime3導致筆記本突然卡頓,看當時內存吃到了30G,而他筆記本總共才8G內存,懷疑是內存洩漏,果斷換回了原來用的PyCharm。因為我也用PyCharm學習python,深知它的內存使用基本上也在1G以上,聽到他這個消息,我決定還是換回我一直習慣的vim,畢竟“編輯器之神”並非浪的虛名。
所謂打造,其實就是找一些適合自己的插件,先簡單總結一些,我親測過的幾個插件。在開始之前先說明一點,這裡提到的幾個插件都是非常強大和有名氣的,但所謂適合自己的才是最好的,文中所說的缺點只是相對個人而言的感受,並不適用所有人。分享出來只是為給大家在選擇時做個參考。謝謝~
1.vim外掛程式管理器
vim-pathogen VS Vundle.vim:
這兩個外掛程式都可謂是vim的神器,用來進行vim的插件管理。 pathogen配置好之後使用方便之處在於只需要把你下載的vim插件放到~/.vim/bundle(也可自訂)目錄下即可,而vundel每次需要更改vimrc文件,不過vundel的方便之處在於更改完vimrc檔案之後,可以直接在vim裡使用:PluginInstall來進行插件的一鍵安裝,原理就是自動從GitHub等來源自動下載。
這裡我選擇的是vundle,因為可以一眼從設定檔看出我安裝了哪些插件,不需要的插件直接註解掉即可。如下圖Plugin部分就是我安裝的插件,一目了然。
2.python支援
對我來說,自動補全,和語法偵測是最終選擇了使用jedi-vim。
簡單說下自己的直覺感受:
python-mode:
優點:能夠自動補全,自備python語法偵測和程式碼折疊等功能,很強大。
缺點:自動補全時順帶顯示函數的幫助訊息,頁面顯示不夠簡潔、美觀;語法偵測功能一般。
以下是截圖範例:
YouCompleteMe:
優點:自動補全,介面簡潔,支援多語言,功能非常強大、完整。三者之中在github上star數量最多。
缺點:可能由於功能過於強大,加上語法偵測之後載入相對稍慢。配置略繁瑣。
jedi-vim:
優點:優點對我來說,就是上面兩個的缺點它都彌補了。載入速度挺快,頁面也挺簡潔。
缺點:沒有語法偵測;功能沒YCM強大,但是夠用足矣。
So,最後我選擇了jedi-vim。
3.python語法檢測
有了自動補全之後就是語法檢測,個人傾向pep8標準,而且希望語法錯誤修正之後能夠被編輯器馬上識別。
我測過用以下幾種做checker:
flake8、pep257、pep8、pycodestyle、syntastic
pydocstyle、pyflakes、pylama、pylint、python
## 而最終我選擇了用插件:"w0rp/ale",它的語法檢測最全面,介面簡潔,錯誤修正之後能夠被馬上識別出,而且是異步的,不必擔心加載過慢崩潰等問題。如下圖:
4.加強版自動補全
之前提到在vim裡面python的自動補全,為了讓vim的功能更加強大,介紹一款外掛程式neocomplete.vim,使用它可謂讓vim的補全無所不在。如下圖它會直接補全shell路徑。
要注意一點:neocomplete requires Vim 7.3.885+ compiled with if_lua。
5.目錄樹插件
目錄樹外掛程式自然是NERDTree,外加一個vim-nerdtree-tabs補強功能。效果圖如下:
最後還是那句話,適合自己的才是最好的。
以上是使用vim+python打造自己的IDE插件的步驟詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!