首先先介绍几个常用的插件:
1,ctags和taglist,这个大家估计都很常用,在ubuntu下只要安装exuberant-ctags即可啦,另外tagbar支持面向对象语言的展示
- " toggle Tagbar display
- map <F4> :TagbarToggle<CR>
- " autofocus on Tagbar open
- let g:tagbar_autofocus = 1
这样的话,只需按下f4就会弹出taglist窗口,默认是打开。
2,pydoc.vim 在vim中查找python文档,这个相当管用,你可以调用Pydoc <keyword>,也可以当光标停在某个关键词的位置时,按下K就能弹出文档,设置pydoc的执行路径如下,后面的路径和你的执行pydoc命令的环境有关
- let g:pydoc_cmd = '/usr/bin/pydoc2.4'
3,pyflakes.vim 支持python实时语法检查, 输入 ‘:cc’ 定位语法错误,确保.vimrc中设置了
- filetype plugin indent on
另外这个只支持python2.5以上的版本,这个比较坑爹
4,nerd_tree.vim vim中的文件浏览器,我做了一个映射,只需按下F3就可弹出当前目录下文件结构
- " NERDTree (better file browser) toggle
- map <F3> :NERDTreeToggle<CR>
5,自动补全,AutoComplPop 支持直接pop,在输入代码的同时给予提示,但是vim版本必须是vim 7.2以上,另外支持自动补全比较好的就是pydiction.vim,比系统自带自动补全强大多了,支持tab补全,这家伙有3个组成部分。一个是插件本身python_pydiction.vim,另外一个是生成diction文件的python脚本pydiction.py,最后是一个自带的complete-dict文件
6,python调试,vim-debug 这个依赖于系统的vim-debug模块,支持交互式调试,设置断点,跳出跳进函数,支持查看栈和变量,我的配置:
- " debugger keyboard shortcuts
- map <F5> :Dbg over<CR>
- map <F6> :Dbg into<CR>
- map <F7> :Dbg out<CR>
- map <F8> :Dbg here<CR>
- map <F9> :Dbg break<CR>
- map <F10> :Dbg watch<CR>
- map <F11> :Dbg down<CR>
- map <F12> :Dbg up<CR>
7,conque_term 提供在vim中打开终端的功能,非常有用,可以vim buffer中执行python 命令(:ConqueTerm shell )也可执行bash命令(:ConqueTerm bash)
接下来,我们再来分析下.vimrc文件,贴部分配置:
- "不使用vi兼容模式
- set nocompatible
- " allow plugins by file type
- filetype plugin on
- filetype indent on
- " tabs and spaces handling
- "使用扩展tab,即所有tab都是空格组成
- set expandtab
- set tabstop=4
- "插入模式下tab代表空格数
- set softtabstop=4
- "使用shift+>移动空格数
- set shiftwidth=4
- " always show status bar
- set ls=2
- " incremental search
- set incsearch
- " highlighted search results
- set hlsearch
- " line numbers
- set nu
- " toggle Tagbar display
- map <F4> :TagbarToggle<CR>
- " autofocus on Tagbar open
- let g:tagbar_autofocus = 1
- " 调用F3,显示文件树
- map <F3> :NERDTreeToggle<CR>
- " tab导航,tt表示新开一个tab页,tn下一个tab页,tp上一个tab页,tm最后一个tab页
- map tn :tabn<CR>
- map tp :tabp<CR>
- map tm :tabm<CR>
- map tt :tabnew
- map <C-S-Right> :tabn<CR>
- imap <C-S-Right> <ESC>:tabn<CR>
- map <C-S-Left> :tabp<CR>
- imap <C-S-Left> <ESC>:tabp<CR>
- " 支持alt+方向键在各个口中切换
- map <M-Right> <c-w>l
- map <M-Left> <c-w>h
- map <M-Up> <c-w>k
- map <M-Down> <c-w>j
- imap <M-Right> <ESC><c-w>l
- imap <M-Left> <ESC><c-w>h
- imap <M-Up> <ESC><c-w>k
- imap <M-Down> <ESC><c-w>j
- " 当鼠标滚动的时候,鼠标一直在倒数第三行的位置
- set scrolloff=3
- "执行python文件运行E即可 map <buffer> <S-e> :w<CR>:!/usr/bin/env python % <CR>
贴个照片:
参考文献:https://github.com/fisadev/fisa-vim-config
本文出自 “python ubuntu” 博客,请务必保留此出处http://3502990.blog.51cto.com/3492990/985750