已经有很多博客介绍怎样配置Vim的Python编程环境了,这周末我将这些优秀的文章读了一遍,并将我在MacVim配置python编程环境的步骤记录在这篇文章里。

安装MacVim和Python

下列两种方式中的任一种均可用来安装MacVim。

方式一:通过Mac ports

首先确保你的Mac ports是最新版:


1  
 $
 
 安装:
 
1  
 $
 
方式二:自己编译
 
1  
 $ git clone git://github.com/b4winckler/macvim.git  
 
2  
 $ cd macvim/src  
 
3  
 $ ./configure –enable-pythoninterp –with-macsdk = 10.6  
 
4  
 $ 
 然后键入:
 
1  
 $


并把MacVim图表拖到/Applications文件夹。

(source: MacVim Github )

外观

默认的主题似乎不是那么吸引人。我发现黑色背景对眼睛更好一点,亮色的背景对眼睛刺激性太强。要安装一个新的配色的话,首先需要新建一个文件夹:


1  $


然后,到 这里 选择一个配色方案,将下载下来的.vim文件放到刚刚新建的文件夹中。

Lucius这个配色 还不错,而且支持亮色和蓝色方案。我们将lucius放到colors文件夹中,然后编辑.vimrc文件,开启语法高亮并设置主题。


1  $ mv lucius.vim ~/.vim/colors 
2  $


1  set nocompatible 
2 syntax  on 
3  colorscheme lucius 
4  “colorscheme mustang 
5  set


对于字体,可以这样设置:


1  set


下面是一些其它有用的设置:

01  
 set tabstop = 4  
 
02  
 set shiftwidth = 4  
 
03  
 set expandtab  
 
04  
 set softtabstop = 4  
 
05  
 set smartindent  
 
06  
 set autoindent  
 
07  
 
08  
 set hlsearch  
 
09  
 set incsearch  
 
10  
 set showmatch  
 
11  
 
12  
 set  
 number


在新标签中打开文件

通常情况下,在Terminal中键入”vi a_new_file”会在一个新的窗口中打开文件。你也许想将新的文件在一个新的tab中打开。

编辑mvim:
 
1  
 $
 
 将下列语句添加在最上方.
 
1  
 tabs
 
 然后将文件末尾的if结构替换为下面的语句:
 
01  
 # Last step: fire up vim.  
 
02  
 if [ "$gui" ] ;  
 then  
 
03  
 if  
 $tabs && [[ `  
 $binary --serverlist ` = "VIM" ]] ;  
 then 
 
04     exec “$binary” -g  
 $opts –remote-tab-silent  
 ${  
 1 :+ “$@”  
 }  
 
05  
 else  
 
06     exec “$binary” -g  
 $opts  
 ${  
 1 :+ “$@”  
 }  
 
07  
 fi  
 
08  
 else  
 
09     exec “$binary”  
 $opts  
 ${  
 1 :+ “$@”  
 }  
 
10  
 fi 
 <gt>用来切换标签.
 CTags and Tag List
 安装ctags:
 
1  
 $

安装taglist:

在 这里 下载taglist,并将taglist.vim复制到~/.vim/plugin

在~/.vimrc中添加:


1  
 filetype  
 on  
 
2  
 filetype plugin  
 on


在你的项目目录中运行ctags来生成tags文件,文件中包含了所有类、成员和函数的位置信息。例如,我们在”my_django_project”中运行:

1  
 $ cd my_django_project  
 
2  
 $ 
 在.vimrc中,我们将绑定到ctags命令实现快捷的生成tags文件:
 
1 nnoremap : ! /opt/ local /bin/ ctags - R – python - kinds =- i *. 
 py

关于ctags的更多用法请Google之。

在MacVim中,键入:TlistToggle来打开tag list.使用组合键来在窗口之间切换,当光标停留在某个变量上时可以用来跳到变量的定义,用回到之前的位置。在tag list窗口中按空格键打开相应的方法签名。对于tag list中的所有快捷键,参照 这篇文章 。

Omni Complete

如果你之前用过Visual Studio或Eclipse等IDE,我想你已经知道Omni Complete是干什么的了。

在~/.vimrc中添加下列代码来打开vim中python的自动完成。

1 autocmd FileType python  
 set

Task list

在你的代码中标记TODO和FIXME是个良好的习惯,TaskList插件为我们完成这一任务。

在 这里 下载,然后复制到~/.vim/plugin文件夹。

在MacVim中键入:TaskList打开列表。

Pyflakes

Pyflakes用来分析并找出python程序中的错误,对于我来讲这个插件必不可少。

在 这里 下载,然后解压到~/.vim/文件夹:

1  
 $

SnipMate

TextMate最酷的功能之一就是snippet,如键入”for”按下Tab键就可以自动将for语句块生成。用SnipMate插件,Vim也可以做到这一点。

在 这里 下载,解压到~/.vim/文件夹。

^_^

更多有趣有用的插件请参考原文,这里不再一一翻译。