• python开发环境必备之vim配置


    俗话说:工欲善其事,必先利其器。最近使用python,习惯了liunx和vim,打算将vim作为python开发工具,下面就配置vim,以让它成为python开发的利器,增强我们的开发体验!废话少说,看下面。

    1、检查vim是否支持python,确保安装7.x版本,我的是vim7.4,检查方法:vim --version|grep python 如看到python前有加号,表示支持,减号表示不支持。

    2、在/root/.vim下创建plugin目录,如存在则不用创建了。

    3、安装MiniBufExplorer,主要用来方便buffer的浏览和操作,在编程的时候不可能永远只编辑一个文件, 你肯定会打开很多源文件进行编辑, 如果每个文件都打开一个vim进行编辑的话那操作起来将是多麻烦啊, 所以vim有buffer(缓冲区)的概念。下载地址http://www.vim.org/scripts/script.php?script_id=159 直接将 minibufexpl.vim 文件复制到~/.vim/plugin目录下,并到~/.vimrc中添加如下内容:

    1 let g:miniBufExplMapWindowNavVim = 1
    2 let g:miniBufExplMapWindowNavArrows = 1
    3 let g:miniBufExplMapCTabSwitchBufs = 1
    4 let g:miniBufExplModSelTarget = 1

    当你打开多个文件是,MiniBufExplorer就会自动出现了,效果如下图:

    4、高效地浏览源码:taglist,下载地址:http://vim.sourceforge.net/scripts/script_search_results.php?order_by=rating,直接将文件扔到~/.vim/plugin目录下,并到~/.vimrc中添加如下内容:

    map P :TlistToggle<CR>

    然后到用vim打开一个文件,输入P或者:TlistToggle,效果如下:

    5、代码中快速定位与切换,也就是实现在代码中跳来跳去:Ctags 下载地址:http://ctags.sourceforge.net/,下载好直接减压安装,如下

    tar zxvf ctags-5.8.tar.gz 
    cd ctags-5.8  
    ./configure && sudo make install

    安装完成后到/root/.vimrc中添加

    let $Tlist_Ctags_Cmd='/usr/local/bin/ctags'

    别激动,现在还没有完成,假设我经常工作目录是/home/django,到你经常编码的地方最上层目录,执行:ctags -R,这样就会在该目录下生成tags目录,用来存tags。

    最后在/root/.vimrc中添加

    :set tags=/home/django/tags

    至此,你就可以定位函数并跳来挑去啦,这里我就不演示了。

    6、python代码自动补全:Pydiction下载地址:http://www.vim.org/scripts/script.php?script_id=850 减压后将python_pydiction.vim、complete-dict、pydiction.py文件复制到 ~/.vim/after/ftplugin/ 路径下,如没有目录进行mkdir新建。然后在/root/.vimrc中添加

    let g:pydiction_location = '~/.vim/after/ftplugin/complete-dict'

    下面看看效果吧:


    7、其他一些设置,如高亮显示关键字,自动缩进等。在/root/.vimrc中添加如下:

    set backspace=indent,eol,start
    set expandtab
    set textwidth=79
    set tabstop=8
    set softtabstop=4
    set shiftwidth=4
    set autoindent
    
    syntax enable
    syntax on
    
    set nu

    到此为止,一个功能还算可以得开发IDE环境就配置完成了,以后可以加入更多的功能,如错误提示,debug等。

  • 相关阅读:
    Asp.Net2.0中的缓存
    webpartzone无法显示最小化和关闭按钮?
    TransactionScope分布式事务和非分布式事务
    JS获取GET参数的两种方法
    js 文件上传下载功能
    android动态设置布局LayoutInflater的使用详解
    Eclipse大括号换行显示
    Java强引用、 软引用、 弱引用、虚引用(转载)
    Android扭曲图像(水面落叶壁纸初步实现)
    win7系统自带的屏幕录制软件
  • 原文地址:https://www.cnblogs.com/mysql-dba/p/4907948.html
Copyright © 2020-2023  润新知