在 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 前
在 Vim 中使用 pydiction 对 Python 进行代码补全的更多相关文章
- vim中使用pydiction对python代码进行补全
在配置完vim插件YouCompleteMe之后,在vim编写python的时候按tab键会报错,E121: Undefined variable: g:pydiction_location Pydi ...
- 在vim编辑器中实现python的tab补全
在vim编辑器中实现python的tab补全 在vim编辑器中实现python tab补全插件有Pydiction,Pydiction可以实现下面python代码的自动补全: 1.简单python ...
- vim中凝视多行python代码
在vim中凝视多行python代码比較麻烦,主要由下面几种方法: (1)将须要凝视的代码以文档字符串的形式呈现 (2)将须要凝视的代码以函数的形式呈现 (3)使用vim自身快捷键 我们主要使用第三种方 ...
- 代码补全——Vim/Neovim中YouCompleteMe添加第三方库的支持
参考链接: https://github.com/ycm-core/YouCompleteMe#c-family-semantic-completion https://cloud.tencent.c ...
- 在windows中python安装sit-packages路径位置 在Pycharm中导入opencv不能自动代码补全问题
在Pycharm中导入opencv不能自动代码补全问题 近期学习到计算机视觉库的相关知识,经过几个小时的探讨,终于解决了opencv不能自动补全代码的困惑, 我们使用pycharm安装配置可能会添加多 ...
- python~实现tab补全
文章摘自:http://www.jb51.net/article/58009.htm 第一.如在在vim下实现代码的补全功能. 想要为vim实现自动补全功能,则要下载插件 cd /usr/local/ ...
- Vim使用Vundle安装代码补全插件(YouCompleteMe)
安装 Vundle 它的使用方法很简单,安装一个插件只需要在 ~/.vimrc 按照规则中添加 Plugin 的名称,某些需要添加路径,之后在 Vim 中使用:PluginInstall既可以自动化安 ...
- vim代码补全-spf13,YouCompleteMe
vim代码补全 现在的图形界面的IDE(Integrated Development Environment)一般具有语法高亮,语法检查,自动补全功能,大大提高了编程的效率. vim作为文本编辑器其强 ...
- Windows 10环境安装VIM代码补全插件YouCompleteMe
Windows 10环境安装VIM代码补全插件YouCompleteMe 折腾一周也没搞定Windows下安装VIM代码补全插件YouCompleteMe,今天在家折腾一天总算搞定了.关键问题是在于P ...
随机推荐
- ios之单例模式
原帖地址:http://www.galloway.me.uk/tutorials/singleton-classes/ 本文为博主自行翻译,转载请注明出处:http://blog.csdn.net/i ...
- Android之取消ViewPage+Fragment的预加载
用过ViewPage+Fragment组合的童鞋自然知道这个问题,没有遇到的同学祝愿你们永远不会遇到,呵呵.直接上关键代码 注释:setUserVisibleHint每次fragment显示与隐藏都会 ...
- django的数据库操作
ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中,ORM在业务逻辑层和数据库层之间充当了桥梁的作用. django的交互式shell python manage ...
- Python json模块dumps loads
python中json数据的使用. dumps和loads也是需要成对使用的,就像c++ new/delete malloc/free一样需要成对使用. 看着像json的字符串,也不一定是json字符 ...
- 开源3D软件——大集合【转】
要3D打印一件作品,自然少不了3D建模.以下是一些免费开源3D模型设计软件: Blender Blender是最受欢迎的免费开源3D模型制作软件套装. 跨平台支持所有的主要操作系统. 功能非常强大,但 ...
- 升级项目到Vs2010,编译时出现:MSB6006: “LC.exe”已退出,解决方法
最近装了Vs2010 准备把一些项目,升级到.Net 4.0 在编译时,总是出现 MSB6006: “LC.exe”已退出 的错误.很是郁闷.刚开始以为是第三方控件的,去掉了,也不行.后来在网上找了一 ...
- [leetcode]Reverse Linked List II @ Python
原题地址:https://oj.leetcode.com/problems/reverse-linked-list-ii/ 题意: Reverse a linked list from positio ...
- 读书笔记,《Java 8实战》,第四章,引入流
集合是Java中使用最多的API,但集合操作却远远算不上完美.主要表现在两点, 第一,集合不能让我们像数据库的SQL语言一样用申明式的语言指定操作: 第二,现在的集合API无法让我们 ...
- 构建配置 defaultConfig signingConfigs buildTypes productFlavors dependencies
测试项目位置:https://github.com/baiqiantao/FragmentTest.git 项目结构: project 目录的 build.gradle 文件 // Top-level ...
- 设置让php能够以root权限来执行exec() 或者 shell_exec()
一.查看启动你php的进程的用户是谁. 可以通过在命令行执行:ps -ef | grep php来看.或者在php中执行 echo exec('whoami') 来查看.centos下默认会是nobo ...