• 技术文章 >后端开发 >Python教程

    使用vim+python打造自己的IDE插件的步骤详解

    高洛峰高洛峰2017-03-22 09:36:27原创1635
    今天同事小伙伴突然告诉我说,他用的编辑器sublime3导致笔记本突然卡顿,看当时内存吃到了30G,而他笔记本总共才8G内存,怀疑是内存泄漏,果断换回了原来用的PyCharm。因为我也用PyCharm学习python,深知它的内存使用基本也在1G以上,听到他这个消息,我决定还是换回我一直习惯的vim,毕竟“编辑器之神”并非浪的虚名。

    所谓打造,其实就是找一些适合自己的插件,先简单总结一些,我亲测过的几个插件。开始之前先说明一点,这里提到的几个插件都是非常强大和有名气的,但所谓适合自己的才是最好的,文中所说的缺点只是相对个人而言的感受,并不适用所有人。分享出来只是为给大家在选择时做个参考。谢谢~

    1.vim插件管理器

    vim-pathogen VS Vundle.vim:

    这两个插件都可谓是vim的神器,用来进行vim的插件管理。pathogen配置好之后使用方便之处在于只需要把你下载的vim插件放到~/.vim/bundle(也可自定义)目录下即可,而vundel每次需要更改vimrc文件,不过vundel的方便之处在于更改完vimrc文件之后,可以直接在vim里使用:PluginInstall来进行插件的一键安装,原理就是自动从GitHub等源上自动下载。

    这里我选择的是vundle,因为可以一眼从配置文件看出我安装了哪些插件,不需要的插件直接注释掉即可。如下图Plugin部分就是我安装的插件,一目了然。

    使用vim+python打造自己的IDE插件的步骤详解

    2.python支持

    对我来说,自动补全,和语法检测是最终选择了使用jedi-vim。

    简单说下自己的直观感受:

    python-mode:

    优点:能够自动补全,自带python语法检测和代码折叠等功能,很强大。

    缺点:自动补全时顺带显示函数的帮助信息,页面显示不够简洁、美观;语法检测功能一般。

    以下是截图示例:

    使用vim+python打造自己的IDE插件的步骤详解

    YouCompleteMe:

    优点:自动补全,界面简洁,支持多语言,功能非常强大、完整。三者之中在github上star数量最多。

    缺点:可能由于功能过于强大,加语法检测之后加载相对稍慢。配置略繁琐。

    使用vim+python打造自己的IDE插件的步骤详解

    jedi-vim:

    优点:优点对我来说,就是上面两个的缺点它都弥补了。加载速度挺快,页面也挺简洁。

    缺点:没有语法检测;功能没YCM强大,但是够用足矣。

    使用vim+python打造自己的IDE插件的步骤详解

    So,最终我选择了jedi-vim。

    3.python语法检测

    有了自动补全之后就是语法检测,个人倾向pep8标准,而且希望语法错误修正之后能够被编辑器马上识别。

    我测过用以下几种做checker:

    flake8、pep257、pep8、pycodestyle、syntastic

    pydocstyle、pyflakes、pylama、pylint、python

    而最终我选择了用插件:"w0rp/ale",它的语法检测最全面,界面简洁,错误修正之后能够被马上识别出,而且是异步的,不必担心加载过慢崩溃等问题。如下图:

    使用vim+python打造自己的IDE插件的步骤详解

    4.加强版自动补全

    之前提到在vim里面python的自动补全,为了使vim的功能更加强大,介绍一款插件neocomplete.vim,使用它可谓让vim的补全无处不在。如下图它会直接补全shell路径。

    需要注意一点:neocomplete requires Vim 7.3.885+ compiled with if_lua

    使用vim+python打造自己的IDE插件的步骤详解

    5.目录树插件

    目录树插件自然是NERDTree,外加一个vim-nerdtree-tabs补强功能。效果图如下:

    使用vim+python打造自己的IDE插件的步骤详解

    最后还是那句话,适合自己的才是最好的。

    以上就是使用vim+python打造自己的IDE插件的步骤详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:python IDE插件
    上一篇:Python的字符串匹配详细介绍 下一篇:利用python生成器实现生产者消费者模型的方法介绍
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 深入了解Python装饰器函数• Python图像处理之PIL库• python数据可视化之饼状图的绘制• 实例讲解Python批量修改文件名• Python实例详解pdfplumber读取PDF写入Excel
    1/1

    PHP中文网