配置基于Vim的Python编程环境

出自Linux Wiki

在2008年11月19日 (三) 08:44由Chenxing (讨论 | 贡献)所做的修订版本

Vim的默认配置对Python支持有限,可以通过安装插件等方法提高在Vim中编写Python程序的效率。

目录

对缩进的设置

~/.vimrc中加入如下设置:

" 自动检测文件类型并加载相应的设置
filetype plugin indent on

Python文件中建议不出现Tab,而用空格代替,另外缩进量应为四个空格。故可再加入:

autocmd FileType python setlocal et | setlocal sta | setlocal sw=4 | setlocal sts=4
Hint.gif
提示:
关于上面几个设置的详细含义,参见Vim代码缩进设置


更好的语法高亮显示

默认的Python语法高亮功能有限,如对数字无高亮等。可以使用这个版本: http://www.vim.org/scripts/script.php?script_id=790

注释管理

vim的插件EnhCommentify或comments提供了注释管理功能。详见vim与程序注释

增强的代码补齐提示

Vim的代码自动补齐功能(Ctrl-N)很实用(见VI(VIM)编写程序技巧)。默认Vim只能识别当前文件中的变量名,这就使得代码补齐对Python的库函数变得没有意义了。[1]

pydiction改变了这一状况,它可以帮助实现对Python库函数的自动补全。[2]可以从这里下载pydiction,把解压出来的pydiction文件放到~/.vim/中。

再在~/.vimrc中增加如下设置:

" python auto-complete code
" Typing the following (in insert mode):
"   os.lis<Ctrl-n>
" will expand to:
"   os.listdir(
" Python 自动补全功能,用 Ctrl-N 调用
if has("autocmd")
  autocmd FileType python set complete+=k~/.vim/pydiction isk+=.,
endif

注意后面的isk+=.,表示把点和逗号都看做是单词的一部分,这样编辑时"单词"的定义就被改变了。

代码折叠

python_fold实现了针对Python的代码折叠[3],见: http://www.vim.org/scripts/script.php?script_id=515

Taglist

Taglist也是支持Python的,网站在: http://www.vim.org/scripts/script.php?script_id=273

参考资料

  1. http://wiki.woodpecker.org.cn/moin/VimPython
  2. http://vim.sourceforge.net/scripts/script.php?script_id=850
  3. http://hi.baidu.com/dengyuanzhong/blog/item/6b991ed81b36af3533fa1cf8.html
个人工具
简体繁体转换