`

配置 vim Python IDE 开发环境

阅读更多

在 Linux 下对 vim 进行一些配置,使之支持如下特性:

1. 加强的 Python 语法高亮显示;

2. 对脚本、项目生成 ctag 序列;

3. 在 vim 中显示 ctag 序列列表;

4. Python 函数、类的自动补全;

5. Python 代码自动折叠;

一、准备

本文以 CentOS 5.6 为例对系统默认自带的 vim 进行配置。在开始之前需要确认系统已经安装了以下 RPM 包:vim-enhanced、ctags。

1. 配置 vim alias,使 vim 成为默认的 vi 编辑器:

# echo alias vi=\'vim\' >> ~/.bashrc
# source ~/.bashrc

2. 复制默认的 .vimrc 初始化文件:

# cp /usr/share/vim/vim70/vimrc_example.vim  ~/.vimrc
# vi ~/.vimrc

可以添加一些配置:

1
2
3
4
5
6
set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
set autoindent
set number

这样,我们就完成了对 vim 的一些前期准备。下面开始进行 vim Python IDE 环境的配置。

二、Python IDE 环境配置

1. 加强 Python 语法高亮显示
下载增强的 Python 语法高亮脚本最新版本:http://www.vim.org/scripts/script.php?script_id=790 下载后得到 python.vim。

# mv /usr/share/vim/vim70/syntax/python.vim  /usr/share/vim/vim70/syntax/python.vim.ori
# cp python.vim  /usr/share/vim/vim70/syntax/

2. 对脚本/项目生成 ctag  序列
进入到 python 程序脚本(项目)所在的目录,在该目录下执行:

# ctag -R *

会在当前目录下自动生成一个 ctags 文件,该文件记录了程序/项目的函数、类等的分析序列记录。有关 ctag 的详细用法请阅读 ctag 的 manpage。

3. 在 vim 中显示 ctag 序列列表
下载 taglist 插件:http://www.vim.org/scripts/script.php?script_id=273 下载后得到 taglist_45.zip。

# unzip taglist_45.zip
解压后得到两个文件:plugin/taglist.vim(taglist 插件)、doc/taglist.txt(taglist 帮助文件)

# cp plugin/taglist.vim  /usr/share/vim/vim70/plugin/
# cp doc/taglist.txt  /usr/share/vim/vim70/doc/
# vi

启动一个 vi 编辑器,并输入以下命令:

1
2
:helptags  /usr/share/vim/vim70/doc    "生成 taglist 帮助文件列表
:help  taglist.txt    "查看 taglist 帮助信息

为了更方便的使用 tablist,我们还可以在 vim 中做一些设置:

# vi ~/.vimrc

添加如下指令:

1
2
3
let Tlist_Show_One_File = 1            "不同时显示多个文件的tag,只显示当前文件的。
let Tlist_Exit_OnlyWindow = 1          "如果 taglist 窗口是最后一个窗口,则退出 vim。
let Tlist_Use_Right_Window = 1         "在右侧窗口中显示 taglist 窗口。

当编辑程序代码文件时,可以在 vi 中输入 :Tlist 来启动 taglist 窗口。

下面是一些 .vimrc 中有关 taglist 的配置参数:

1
2
3
4
Tlist_Auto_Open=1    "在启动 vim 后,自动打开 taglist 窗口。
Tlist_File_Fold_Auto_Close=1    "taglist 只显示当前文件 tag,其它文件的tag折叠。
Tlist_WinHeight & Tlist_WinWidth    "可以设置taglist窗口的高度和宽度。
Tlist_Use_Horiz_Window=1    "设置taglist窗口横向显示。

在 taglist 窗口中,可以使用以下操作指令:

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

4. Python 函数、类的自动补全
CentOS 5.6 自带的 vim7.0 已经支持了 PHP、Python、Ruby 等多种语言的自动补全,只需进行开启即可。

开启 Python 自动补全支持:

# echo 'autocmd FileType python set omnifunc=pythoncomplete#Complete' >> ~/.vimrc

这样,当编写 python 脚本时,使用 + x    + o 即可打开自动补全菜单,在顶部,还有对应的说明帮助信息 (docstring)。

vim 自带的 pythoncomplete.vim 虽然很方便,还支持 docstring,但是有时并不能方便的列出一些函数的自动补全。所以,懒人可以继续安装 Pydiction 插件:

下载 Pydiction 插件:http://www.vim.org/scripts/script.php?script_id=850 下载后得到 pydiction-1.2.zip。

# unzip  pydiction-1.2.zip
# cp python_pydiction.vim  /usr/share/vim/vim70/ftplugin
# mkdir  /usr/share/vim/vim70/pydiction
# cp complete-dict  pydiction.py  /usr/share/vim/vim70/pydiction/
# vi ~/.vimrc

增加如下两行:

1
2
let g:pydiction_location = '/usr/share/vim/vim70/pydiction/complete-dict'
let g:pydiction_menu_height = 20

打开 python 脚本文件,在编写 python 程序时,按 TAB 键即可激活自动补全菜单。

5. Python 代码自动折叠
下载 python_fold 插件:http://www.vim.org/scripts/script.php?script_id=515 下载后得到 python_fold.vim。

# cp python_fold.vim  /usr/share/vim/vim70/plugin/
# vi ~/.vimrc

添加:

1
set foldmethod=indent

这样,再编辑 python 文件时会发现代码已经作了折叠处理。下面是有关折叠的一些命令:

zo: 打开光标位置的折叠代码;
zc: 折叠光标位置的代码;
zr: 将文件中所有折叠的代码打开;
zm: 将文件中所有打开的代码折叠;
zR: 作用和 zr 类似,但会打开子折叠(折叠中的折叠);
zM: 作用和 zm 类似,但会关闭子折叠;
zi: 折叠与打开操作之间的切换命令;

分享到:
评论

相关推荐

    介绍Python程序员常用的IDE和其它开发工具.doc

    IDE的全称是Integration Development Environment(集成开发环境),一般以代码编辑器为核心,包括一系列周边组件和附属 功能。一个优秀的IDE,最重要的就是在普通文本编辑之外,提供针对特定语言的各种快 捷编辑...

    vim-ide:将vim设置为IDE

    利用coc插件打造开发环境 以下参考 C / C ++ #termux apt安装clang #vim :CocInstall coc-clangd Python #termux apt安装python 点安装绝地#vim :CocInstall安装coc-python 高朗 #termux apt安装golang #...

    vimIde:将Vim设置为IDE

    杀虫剂利用coc插件打造开发环境以下参考Java IDEC / C ++ #termux apt安装clang #vim :CocInstall coc-clangdPython #termux apt安装python 点安装绝地#阿里巴巴代理商pip配置设置global.index-url #vim :...

    Windows下用PyCharm和Visual Studio开始Python编程

    Windows搭建python开发环境 首先需要去python的官网下载环境。鼠标移动到Downloads的tab上,在这里可以下载。 python的环境还是很人性化的,没有那么多罗里吧嗦的配置什么的,下载好以后直接无脑next就行了,直到...

    akimous:机器学习辅助的Python IDE

    Akimous是具有独特功能的Python IDE,可提高开发人员的工作效率。 特征 机器学习辅助/ NLP辅助的上下文感知自动完成 精美呈现的功能文档 分层键盘控制(比vim和Emacs更直观的键绑定) 实时代码格式化器 交互式...

    harmonyos2-TheVimIDE:现代VimIDE,支持C/C++、Java、Python、Lua、PHP、JavaScript、Ru

    的目标是为编辑器提供一个功能齐全的集成开发环境。 TheVimIDE 的后代是一个小插件集合,让我在 Vim 的日常工作中更加舒适。 随着时间的推移和其他 IDE 的启发,我有了一个想法,让 Vim 一步一步地成为一个具有所有...

    Python的运行环境Jupyter Notebook

      Python开发工具大体分两种:代码编辑器、集成工具IDE。   常用到的编辑器有Vim, Atom、Sublime Text、VS Code、IDLE。   常用到的IDE:Pycharm、Jupyter Notebook、Spyder、Wing IDE。   我是使用Python...

    Eclipse中搭建Python开发环境

    虽然使用Vim编辑器+命令行的方式比较酷,然而一个优秀的IDE确实能让开发速度提升不少。于是笔者想到Eclipse——一个神一样的利器。经过一番曲折,终究修成正果。整理成文,希望对热爱的Python的童鞋有所帮助。 ...

    基于Python代码编辑器的选用(详解)

    Python开发环境配置好了,但发现自带的代码编辑器貌似用着有点不大习惯啊,所以咱们就找一个“好用的”代码编辑器吧,网上搜了一下资料,Python常用的编辑器有如下一些: 1. Sublime Text 2. Vim 3. PyScripter 4. ...

    linux-专为DevOps人员设计的效率工具

    专为DevOps人员设计的效率工具,旨在提高开发和文本处理效率,使用docker封装。内部包含vim-ide,python/go开发环境,各种常用系统工具及命令行工具。

    dev-environment:我基于Docker的开发环境

    我是Vim,但是我的设置不是git clone,因此,我决定构建基于docker的IDE,以在服务器上编辑实际代码。 目录 建立它 docker build -t nemanjan00/dev . 运行 docker run -ti nemanjan00/dev 在其中打开项目 docker ...

    liteidex36.windows.zip

    Go语言的流行开发IDE 当今新兴语言中最实用的当数 lua 和 go 语言。lua 在游戏界可 谓是大红大紫,而 golang 在服务器也是隐隐有了霸主地位。我曾经在一个 golang 群中听说他们组(游戏行业)年终奖上千万 ... 在...

    Visual Studio Code.app.zip

    当然,微软称 Visual Studio Code 并非完整版的 Visual Studio,它只是一款轻量级的代码编辑器,而不是一个重量级的完整 IDE (集成开发环境),它的竞争对手将会是 Sublime Text、Atom、VIM、Notepad++ 等产品。...

    IT:小型合成技术(进化)。 联合国综合制,国际考古制和国际化制

    I-开发环境 01. IDE还是文本编辑器? (VSC,Vim,emacs,nano,Notepad ++,outlets Jetbrains,repl.it等) 02.环境保护(virtualenv(python),RVM(ruby)等) 03.笔记本界面:Jupyter,Colaboratory等 04.包...

    matlab说话代码-math-802-course-materials:数学802的额外课程材料

    在下面,您将找到有关正确设置开发环境的提示。 我可能会在整个学期中更新此内容,以解决各种问题。 设定思路 如果您不能(或不想)使用教学大纲中推荐的设置,请参考以下一些入门指南。 您可以选择其他IDE。 例如,...

    逐步回归法matlab代码-awesome-R:真棒

    集成开发环境 集成开发环境 -R的强大而高效的用户界面。在Windows,Mac和Linux上都可以很好地工作。 -Emacs Speaks Statistics是emacs文本编辑器的附加软件包。 -Sublime Text 2/3的附加软件包。 -TextMate 1/2的...

    Visual Studio Code 1.0 Windows stable 版本

    微软出品的轻量级跨平台源代码编辑器,支持众多的语言和插件。...集成vim快捷键插件,like vim on VS。 集成所见即所得编辑环境。 进一步提高debug的灵活性,做web开发界的VS。 在此前提下流畅性不要损失太大就好。

Global site tag (gtag.js) - Google Analytics