Python-mode:在Vim編輯器中開發Python應用
Python-mode 是一個 Vim 插件,它使你能夠在 Vim 編輯器中更快的利用包括 pylint、rope、pydoc、pyflakes、pep8、autopep8、pep257 和 mccable 在內的各種庫來寫 Python 代碼,這些庫提供了一些編碼功能,比如靜態分析、特徵重構、摺疊、補全和文檔等。 -- Aaron Kili
本文導航
-Python-mode 的特性 …… 13%
-如何在 Linux 系統中為 Vim 安裝 Python-mode …… 28%
-在 Debian 和 Ubuntu 中安裝 Python-mode …… 51%
-在 Linux 中定製 Python-mode …… 66%
編譯自: https://www.tecmint.com/python-mode-a-vim-editor-plugin/
作者: Aaron Kili
譯者: ucasFL
Python-mode 是一個 Vim 插件,它使你能夠在 Vim 編輯器[1]中更快的利用包括 pylint、rope、pydoc、pyflakes、pep8、autopep8、pep257 和 mccable 在內的各種庫來寫 Python 代碼,這些庫提供了一些編碼功能,比如靜態分析、特徵重構、摺疊、補全和文檔等。
推薦閱讀: 如何用 Bash-Support 插件將 Vim 編輯器打造成編寫 Bash 腳本的 IDE[2]
這個插件包含了所有你在 Vim 編輯器中可以用來開發 Python 應用的特性。
Python-mode 的特性
它包含下面這些值得一提的特性:
支持 Python 2.6+ 至 Python 3.2 版本
語法高亮
提供 virtualenv 支持
支持 Python 式摺疊
提供增強的 Python 縮進
能夠在 Vim 中運行 Python 代碼
能夠添加/刪除斷點
支持 Python 代碼的快捷移動和操作
能夠在運行的同時檢查代碼(pylint、pyflakes、pylama ……)
支持自動修復 PEP8 錯誤
允許在 Python 文檔中進行搜索
支持代碼重構
支持強代碼補全
支持定義跳轉
在這篇教程中,我將闡述如何在 Linux 中為 Vim 安裝設置 Python-mode,從而在 Vim 編輯器中開發 Python 應用。
如何在 Linux 系統中為 Vim 安裝 Python-mode
首先安裝 Pathogen[3] (它使得安裝插件超級簡單,並且運行文件位於私有目錄中),從而更加容易的安裝 Python-mode
運行下面的命令來獲取 pathogen.vim 文件和它需要的目錄:
# mkdir -p ~/.vim/autoload ~/.vim/bundle &&# curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
然後把下面這些內容加入 ~/.vimrc 文件中:
execute pathogen#infect()syntax on
filetype plugin indent on
安裝好 pathogen 以後,你可以像下面這樣把 Python-mode 插件放入 ~/.vim/bunble 目錄中:
# cd ~/.vim/bundle# git clone https://github.com/klen/python-mode.git
然後像下面這樣在 Vim 中重建 helptags :
:helptags
你需要啟用 filetype-plugin (:help filetype-plugin-on)和 filetype-indent (:help filetype-indent-on)來使用 Python-mode 。
在 Debian 和 Ubuntu 中安裝 Python-mode
另一種在 Debian 和 Ubuntu 中安裝 Python-mode 的方法是使用 PPA,就像下面這樣
$ sudo add-apt-repository https://klen.github.io/python-mode/deb main$ sudo apt-get update
$ sudo apt-get install vim-python-mode
如果你遇到消息:「The following signatures couldn』t be verified because the public key is not available」,請運行下面的命令:
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B5DF65307000E266
現在,使用 vim-addon-manager 啟用 Python-mode:
$ sudo apt install vim-addon-manager$ vim-addons install python-mode
在 Linux 中定製 Python-mode
如果想覆蓋默認鍵位綁定,可以在 .vimrc 文件中重定義它們,比如:
" Override go-to.definition key shortcut to Ctrl-]let g:pymode_rope_goto_definition_bind = "
" " Override run current python file key shortcut to Ctrl-Shift-e
let g:pymode_run_bind = "
" " Override view python doc key shortcut to Ctrl-Shift-d
let g:pymode_doc_bind = "
"
注意,默認情況下, Python-mode 使用 Python 2 進行語法檢查。你可以在 .vimrc 文件中加入下面這行內容從而啟動 Python 3 語法檢查。
let g:pymode_python = "python3"
你可以在 Python-mode 的 GitHub 倉庫找到更多的配置選項: https://github.com/python-mode/python-mode
這就是全部內容了。在本教程中,我向你們展示了如何在 Linux 中使用 Python-mode 來配置 Vim 。請記得通過下面的反饋表來和我們分享你的想法。
作者簡介:
Aaron Kili 是一個 Linux 和 F.O.S.S 愛好者、Linux 系統管理員、網路開發人員,現在也是 TecMint 的內容創作者,他喜歡和電腦一起工作,堅信共享知識。
via: https://www.tecmint.com/python-mode-a-vim-editor-plugin/
作者:Aaron Kili[4] 譯者:ucasFL 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出
[1]: Vim 編輯器 - https://www.tecmint.com/vi-editor-usage/
[2]: 如何用 Bash-Support 插件將 Vim 編輯器打造成編寫 Bash 腳本的 IDE - https://linux.cn/article-8467-1.html
[3]: Pathogen - https://github.com/tpope/vim-pathogen
[4]: Aaron Kili - https://www.tecmint.com/author/aaronkili/
※我是見鬼了么?這是史上最邪惡的腳本!沒有之一!
※如何使用 Cream 提高 Vim 的用戶友好性
※如何在 Linux 下當個遊戲主播
※六月北京,誰是你最想見的開源領袖?
TAG:Linux技術 |
※python開發學習:Python 3 VS Python 2
※Mixed Reality Toolkit-Unity開發系列—Sharing模塊
※望城經濟技術開發區概況Wangcheng Economy and Technology Development Zone
※iOS開發 適配iPhoneX/iPhoneXr/iPhoneXs/iPhonexs max
※如何在Windows下開發Python:在cmd下運行Python腳本
※安卓開發中的Model-View-Presenter
※適用於Android和iPhone的Swype鍵盤停止開發
※Python web開發:Flask的項目配置
※微軟收購VR遊戲《The Mage』s Tale》開發商inXile Entertainment
※Justin Timberlake 著用未公開發售「Air Higher」Air Jordan 3 Sample
※《Pokemon Go》開發商收購AR公司Escher Reality
※BCH應用開發的門戶網站:developer.bitcoin.com
※谷歌開發者節DevFest&TensorFlow Day,約~
※谷歌開發新系統Fuchsia 計劃取代Android和Chrome OS
※python開發利器,python shell和vim中都需要的tab補全方法
※Python web開發:Flask的URL和視圖
※RogueInitiative與EmblematicGroup合作開發全新沉浸式內容
※python web開發-flask連接sqlite資料庫
※Mozilla發布Firefox Reality WebVR開發者指南
※谷歌開發者節DevFest&TensorFlowDay,約!