在前面文章中介绍的关于vim基础插件之上加上一款专门为读写python程序的插件-Python-mode. 顾名思义,就是让vim在python模式下运行。这里介绍这款插件的功能以及如何使用。
本文主要摘录Python-mode的帮助文档中个人觉得用到较多的并且比较有意义的内容。
Introduction
Python-mode: includes libraries such as pylint, rope, pydoc, pyflakes, pep8, and mccabe。 Python-mode通过集成了多款插件来实现强大的功能。
Install
用Neobundle在vimrc中加入如下代码,或者直接下载解压.vim/plugin目录下
Bundle 'klen/python-mode'
Function
python-mode的功能和配置非常多,但大多数只需要使用默认配置即可。总结帮助文档(help pymode),可以通过介绍他的配置项可以了解它的功能:
1. Turn on the Plugin:
let g:pymode = 1 “关闭和打开python-mode插件
2. Choose python version:
let g:pymode_python = 'python' "or python3, disable. “选择python的版本
3. PEP8-compatible python indent:
let g:pymode_indent = 1 ”使用缩进的风格为pep8
4. Enable pymode folding:
let g:pymode_folding = 1 “使能折叠功能
5. Show Document:
let g:pymode_doc = 1 " 通过命令:PymodeDoc arg查阅文档
let g:pymode_doc_bind = 'K' "光标移到参数上面按快捷键K
6. Run code:
let g:pymode_run = 1
let g:pymode_run_bind = '<leader>r' ”在vim中运行
7. Add breakpoint
let g:pymode_breakpoint_bind = '<leader>b' “自动加入断点语句
8. Code checking:
let g:pymode_lint_on_write = 1 "修改后检查
let g:pymode_lint_checkers = ['pyflakes', 'pep8', 'mccabe'] " choose from pylint, pep8, mccabe, pep257, pyflakes
9. Rope support (建立项目文件的数据库来索引对象):
let g:pymode_rope_ropefolder='.ropeproject' “项目文件在的目录
let g:pymode_rope_show_doc_bind = '<C-c>d' ”查阅帮助文档
10. Completion
语法补全命令:<C-P>/<C-N>
11. Others
let g:pymode_trim_whitespaces = 1 "Trim unused white spaces on save
let g:pymode_options = 1 "Setup default python options
let g:pymode_options_max_line_length = 79 "Setup max line length
还有关于代码重铸以及虚拟环境的配置功能,因为没有用到,所以就不介绍了。 虽然配置很多,需要在vimrc中用到的也就一下几项:
423 " For python-mode
424 let g:pymode_rope_goto_definition_bind = "<C-]>"
425 let g:pymode_python = 'python' "or python3, disable
426 "let g:pymode_virtualenv_path = $VIRTUAL_ENV
427 let g:pymode_lint_on_write = 1
428 "let g:pymode_rope_goto_definition_cmd = 'new'"or vnew
最后总结一下命令使用
1).K :查阅对象文档
2).<leader>r: 运行python脚本
3). <leader>b:自动加入断点
4). <C-P>/<C-N>:自动补全
5). <C-]>: 跳转到函数定义