在 Vim 中使用 pydiction 对 Python 进行代码补全


Pydiction 允许你在 Vim 中实现 TAB 代码补全, 可以补全的内容包括:标准的、自定义的,以及第三方模块和包。外加关键字、BIFs,和字符串。

Pydiction 由 3 个主要文件构成:

  • python_pydiction.vim -- 该文件为 Vim 的 plugin 文件,实现 Python 文件的 TAB 补全功能。
  • complete-dict -- 该文件为 Vim 的 dictionary 文件,其中包含 Python 关键字和模块结构等信息。是 plugin 进行补全时所查找的参考文件。
  • pydiction.py -- (可选)该文件是 Python script 文件,用于生成 dictionary 文件。可以通过执行该脚本添加更多的可 TAB 补全模块。


用法
=====
在 Vim 中输入部分 Python 关键字、模块名、属性或方法名,然后按 Tab 键以弹出补全信息。
例如, 输入
os.p<Tab>
会弹出
os.pardir
os.path
os.pathconf(
os.pathconf_names
os.pathsep
os.pipe(
...

如果你发现在 TAB 完成菜单中得到的结果并不是你想要的,可能的一种原因是你没有设置 Vim 忽略大小写。可以通过 ":set noic" 方式进行设置。

【如何安装】
在 UNIX/LINUX 下,将 python_pydiction.vim 放入 ~/.vim/after/ftplugin/ ,若该目录不存在则手动创建,Vim 会自动去该目录下查找相关文件。不要把除 python_pydiction.vim 之外的其他文件放入该目录。

在你的 vimrc 文件中增加下面的字段来启用 ftplugins :
filetype plugin on
之后确保设置 "g:pydiction_location" 指向你放置的 complete-dict 文件所在的全路径,例如
let g:pydiction_location = 'C:/vim/vimfiles/ftplugin/pydiction/complete-dict'

网上有人做如下设置可以参考

# 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
...
# 增加
let g:pydiction_location = '/usr/share/vim/vim70/pydiction/complete-dict'
let g:pydiction_menu_height = 20
...

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

展示:

按 Tab 前

按 Tab 后

Ubuntu 下gVim/vim clang_complete自动补全安装

Ubuntu 12.04安装gVim问题及解决

gVim在Windows服务器中的安装部署

Ubuntu手动编译gVim7.3修复终端启动时与ibus的冲突

Vi/Vim/gVim颜色自定义

Python 的详细介绍:请点这里
Python 的下载地址:请点这里

Python脚本获取Linux系统信息

通过Shell、Python脚本管理KVM虚拟机

Zabbix自动添加删除主机的Python脚本

相关内容