1.文法高亮

  为了能在Vim中支持Python文法需要用到插件python.vim,该插件默认位于(/usr/share/vim/vim72/)<Vim安装目录>/<$VIMRUNTIME>/syntax/下,如果你在该路径下没有找到这个插件,需要到python.vim : Enhanced version of the python syntax highlighting script下载。然后为了能让Vim识别Python文法需要在vimrc中添加:

set filetype=python
au BufNewFile,BufRead *.py,*.pyw setf python

2.缩进

  在vimrc(/etc/)中添加如下缩进相关的代码:

set autoindent " same level indent
set smartindent " next level indent
set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4

3.项目视图

  像Visual Studio或Eclipse之类的IDE都会提供项目视图(位于左侧或右侧),程序员利用该视图在文件间或类间跳转。利用Ctags和插件Tasklist可以在vim中实现此功能。

  • 首先下载Exuberant Ctags
  • 然后解压Ctags,并进入解压后的目录,利用如下命令编译安装Ctags:
./configure && sudo make install
  • 通过这种方式,Ctags被安装在/usr/local/bin下。接下来在vimrc中添加如下命令告诉Vim Ctags的安装路径:
   """"""""""""""""""""""""""""""
   " Tag list (ctags)
   """"""""""""""""""""""""""""""
   if MySys() == "windows"                "设定windows系统中ctags程序的位置
     let Tlist_Ctags_Cmd = 'ctags'
   elseif MySys() == "linux"              "设定windows系统中ctags程序的位置
     let Tlist_Ctags_Cmd = '/usr/local/bin/ctags'
   endif
   let Tlist_Show_One_File = 1            "不同时显示多个文件的tag,只显示当前文件的
   let Tlist_Exit_OnlyWindow = 1          "如果taglist窗口是最后一个窗口,则退出vim
   let Tlist_Use_Right_Window = 1         "在右侧窗口中显示taglist窗口

在taglist窗口中,可以使用下面的快捷键:

<CR>          跳到光标下tag所定义的位置,用鼠标双击此tag功能也一样
o 在一个新打开的窗口中显示光标下tag
<Space> 显示光标下tag的原型定义
u 更新taglist窗口中的tag
s 更改排序方式,在按名字排序和按出现顺序排序间切换
x taglist窗口放大和缩小,方便查看较长的tag
+ 打开一个折叠,同zo
- 将tag折叠起来,同zc
* 打开所有的折叠,同zR
= 将所有tag折叠起来,同zM
[[ 跳到前一个文件
]] 跳到后一个文件
q 关闭taglist窗口
<F1> 显示帮助

可以用”:TlistOpen“打开taglist窗口,用”:TlistClose“关闭taglist窗口。或者使用”:TlistToggle“在打开和关闭间切换。

  • 接着安装Tasklist插件:下载TaskList.vim,然后把它放入plugin目录下
  • 最后使用命令:TlistToggle打开taglist窗口,下图展示了该窗口。4.MiniBufExplorer
  •   在Visual Studio或Eclipse中你打开的缓存会以tab的形式列在窗口的顶端或底部,在Vim中插件MiniBufExplorer来实现此功能。下载minibufexpl.vim并将其放在plugin目录下。接着在vimrc中添加如下命令:

    let g:miniBufExplMapWindowNavVim =1
    let g:miniBufExplMapWindowNavArrows =1
    let g:miniBufExplMapCTabSwitchBufs =1
    let g:miniBufExplModSelTarget =1

      下图展示了MiniBufExplorer的使用效果:

    5.Omnicompletion

      Vim7中添加了对文法提示和自动完成的支持,对于python来说需下载pythoncomplete.vim并将其放在<Vim安装目录>/<$VIMRUNTIME>/autoload/目录下,接着在vimrc中添加如下命令:

    filetype plugin on
    set ofu=syntaxcomplete#Complete
    autocmd FileType python set
    omnifunc=pythoncomplete#Complete
    autocmd FileType python runtime! autoload/pythoncomplete.vim

      最后在编写代码时通过ctrl-x ctrl-o来打开文法提示上下文菜单,如下图所示:

    参考文献

    1.http://www.swaroopch.com/notes/Vim

    2.http://blog.dispatched.ch/2009/05/24/vim-as-python-ide/

    3.http://www.phacks.net/macvim-code-completion-syntax-highlighting-for-python-pyqt4-twisted-on-mac-osx-snow-leopard/

    4.http://vim.wikia.com/wiki/Omni_completion

vim---打造Python IDE的更多相关文章

  1. vim as python IDE

    参照Martin Brochhaus大神的视频,今天我也尝试了一下配置vim python IDE以后使用过程中只需要https://github.com/wyj1239630590/vim-as-a ...

  2. macvim打造python IDE

    昨天安装了macvim,今天在上面配置了一下python的ide: 大家也可参考http://blog.dispatched.ch/2009/05/24/vim-as-python-ide/ 1.文法 ...

  3. vim打造开发IDE

    个人的插件和配置 set nocompatible " 去除VI一致性,必须要添加 filetype off " 必须要添加 " advanced keys " ...

  4. Ubuntu下将vim配置为Python IDE(转)

    工欲善其事,必先利其器. 配置好了Django的环境,该把vim好好配置一下当做python的IDE来用. 在Windows下用惯了各种现成的工具,转到Linux下,一下没了头绪……好歹google出 ...

  5. Vim as a Python IDE

    参考视频:http://v.youku.com/v_show/id_XNDY4NTM4NzY0.html 好的,在我们默认的centos6的操作系统中使用的python2,我们一般会再去安装一个pyt ...

  6. Use Vim as a Python IDE

    Use Vim as a Python IDE I love vim and often use it to write Python code. Here are some useful plugi ...

  7. # Pycharm打造高效Python IDE

    Pycharm打造高效Python IDE 建议以scientific mode运行,在科学计算时,可以方便追踪变量变化,并且会提示函数的用法,比普通模式下的提示更加智能,一般在文件中引入了numpy ...

  8. 两个命令把 Vim 打造成 Python IDE

    运行下面两个命令,即可把 Vim(含插件)配置成 Python IDE.目前支持 MAC 和 Ubuntu. Shell   curl -O https://raw.githubusercontent ...

  9. vim下打造python编辑器

    在前面文章中介绍的关于vim基础插件之上加上一款专门为读写python程序的插件-Python-mode. 顾名思义,就是让vim在python模式下运行.这里介绍这款插件的功能以及如何使用. 本文主 ...

  10. 【转】谁说Vim不是IDE?(一)

    谁说Vim不是IDE?(一)   话说操作系统.编程语言和编辑器似乎是程序员永恒的吐槽话题,技术发展了几十年,大家讨论起这几个“之争”还是充满愤怒.津津乐道.有人描述过Emacs和VI程序员,大家沿着 ...

随机推荐

  1. windows eclipse IDE打开当前类所在文件路径

    1. 展开如下菜单: Run ---- External Tools ---- External Tools Configurations 2. 在 program 下面新建一个工具 program- ...

  2. Mono For Android 之 配置环境

    下载 Xamarin Mono For Android 4.6.07004 完整离线破解版 (包括除 Android SDK 外的所有文件) Android SDK. 资源源自 http://www. ...

  3. python远程执行命令

    def run(): try: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ...

  4. s11 day 101 python Linux环境安装 与路飞项目支付功能

    from django.conf.urls import urlfrom django.contrib import adminfrom app01 import viewsurlpatterns = ...

  5. Day 62 Django第三天

    2.GET请求能够被cache,GET请求能够被保存在浏览器的浏览历史里面(密码等重要数据GET提交,别人查看历史记录,就可以直接看到这些私密数据)POST不进行缓存. 3.GET参数是带在URL后面 ...

  6. 队列的实现——java

    同样实现方法有两种: 1. 数组的实现,可以存储任意类型的数据(略): 2. Java的 Collection集合 中自带的"队列"(LinkedList)的示例: import ...

  7. Java的HashMap

    FAQ: 为什么要有HashMap? 答:我非常期待能在Java 中使用Hash表 这种数据结构 ,因为它的快速存取特性. Hash表 和HashMap的关系? 答:Hash表 是一种逻辑数据结构,H ...

  8. Sysbench0.5初体验

    最近工作中需要测试数据库的OLTP的性能,参考了下MariaDB的benchmark中的测试脚本,发现脚本中已经使用了Sysbench-0.5,可以在这里https://launchpad.net/s ...

  9. Archlinux Setup AUR

    方案一 pacman -Sy yaourt yaourt -Sy pacaur pacaur -Sa xxx 方案二 git clone git clone https://aur.archlinux ...

  10. HTML5技术要点

    HTML5技术要点 1.HTML5视频 <!DOCTYPE HTML> <html> <body> <video src="/i/movie.ogg ...