前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >打造vim中的python IDE

打造vim中的python IDE

作者头像
py3study
发布2020-01-06 11:33:14
1K0
发布2020-01-06 11:33:14
举报
文章被收录于专栏:python3python3

 首先先介绍几个常用的插件:

1,ctags和taglist,这个大家估计都很常用,在ubuntu下只要安装exuberant-ctags即可啦,另外tagbar支持面向对象语言的展示

代码语言:javascript
复制
" 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命令的环境有关

代码语言:javascript
复制
let g:pydoc_cmd = '/usr/bin/pydoc2.4' 

3,pyflakes.vim 支持python实时语法检查, 输入 ‘:cc’ 定位语法错误,确保.vimrc中设置了

代码语言:javascript
复制
filetype plugin indent on 

另外这个只支持python2.5以上的版本,这个比较坑爹

4,nerd_tree.vim vim中的文件浏览器,我做了一个映射,只需按下F3就可弹出当前目录下文件结构

代码语言:javascript
复制
" 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模块,支持交互式调试,设置断点,跳出跳进函数,支持查看栈和变量,我的配置:

代码语言:javascript
复制
" 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文件,贴部分配置:

代码语言:javascript
复制
"不使用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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档