【原创】如何在vim中使用tab进行python代码补全

简介:
Pydiction : Tab-complete your Python code   

      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'   

网上有人做如下设置可以参考  
?
1
2
3
4
5
6
7
8
9
10
# 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 后
 
目录
相关文章
|
6月前
|
程序员 开发工具 Python
[oeasy]python017_万行代码之梦_vim环境_复制粘贴
在这个教程中,作者分享了如何在 Vim 编辑器中快速创建和操作大量代码行。首先,通过 `yy` 复制一行,然后使用 `p` 粘贴来增加代码行数。通过反复粘贴,可以迅速生成多行代码。为了加快操作,可以用 `9999p` 来一次性粘贴9999行。接着,介绍了撤销(`u`)和重做(`ctrl+r`)的操作,以及删除整篇文档的快捷方式。最后,作者提到虽然可以生成一万行代码,但并不建议这样做,因为可能会导致程序崩溃,并提醒大家适度编程。
164 2
|
6月前
|
缓存 Shell 开发工具
[oeasy]python0016_在vim中直接运行python程序
在 Vim 编辑器中,可以通过`:!`命令来执行外部程序,例如`:!python3 oeasy.py`来运行Python程序。如果想在不退出Vim的情况下运行当前编辑的Python文件,可以使用`%`符号代表当前文件名,所以`:!python3 %`同样能运行程序。此外,可以使用`|`符号连续执行命令,例如`:w|!python3 %`会先保存文件(`w`)然后运行Python程序。这样,就可以在不离开Vim的情况下完成编辑、保存和运行Python程序的流程。
52 0
|
开发工具 C语言 开发者
vim实现python函数跳转
网上很多帖子都是说通过 ctags 或者 ExuberantCtags 来实现函数跳转,如果你是 C 语言开发者,无可厚非,Python 怎么办?快来看下面操作吧!
|
JavaScript 搜索推荐 Linux
【vim && neovim】从入门到放弃(“四种”模式、常用命令、正则表达式、文件属性、插件安装--代码补全、一键格式化、显示目录)(二)
本文所有操作均通过ssh连接腾讯云服务器完成。如果你正在使用安装GNOME桌面的Linux,很多操作可以通过鼠标完成,或许更加直观。 推荐使用neovim(结合鼠标操作更加丝滑)。
【vim && neovim】从入门到放弃(“四种”模式、常用命令、正则表达式、文件属性、插件安装--代码补全、一键格式化、显示目录)(二)
|
API 开发工具 开发者
vim插件开发之python-helloworld插件
vim插件开发之python-helloworld插件
123 0
|
JavaScript Java Linux
【vim && neovim】从入门到放弃(“四种”模式、常用命令、正则表达式、文件属性、插件安装--代码补全、一键格式化、显示目录)(三)
本文所有操作均通过ssh连接腾讯云服务器完成。如果你正在使用安装GNOME桌面的Linux,很多操作可以通过鼠标完成,或许更加直观。 推荐使用neovim(结合鼠标操作更加丝滑)。
|
数据可视化 搜索推荐 Unix
【vim && neovim】从入门到放弃(“四种”模式、常用命令、正则表达式、文件属性、插件安装--代码补全、一键格式化、显示目录)(一)
本文所有操作均通过ssh连接腾讯云服务器完成。如果你正在使用安装GNOME桌面的Linux,很多操作可以通过鼠标完成,或许更加直观。 推荐使用neovim(结合鼠标操作更加丝滑)。
|
IDE 安全 前端开发
Win11系统下安装编辑器之神(The God of Editor)Vim并且构建Python生态开发环境
众神殿内,依次坐着Editplus、Atom、Sublime、Vscode、JetBrains家族、Comodo等等一众编辑器界的大佬们,偌大的殿堂内几无立锥之地,然而在殿内的金漆雕龙宝座上,端坐着一位睥睨众生的王者,那就是被称之为编辑器之神的Vim,作为一个有着30余年历史的老牌神器,没有任何编辑器可以和它媲美,其时江湖有云:神编Vim不会玩,纵称大神也枉然。Vim在 1976 年发布,奉行 Unix 传统的“Do one thing and do it well”哲学,每个程序只做一件事但求做到最好,通过程序之间的配合得到强大的功能,其两种模式(Normal/Insert) 的玄妙变换,幻
Win11系统下安装编辑器之神(The God of Editor)Vim并且构建Python生态开发环境
|
Linux 开发工具 数据安全/隐私保护
【Python零基础入门之终结篇】:虚拟机Linux命令、Vim编辑器、有趣的命令3
【Python零基础入门之终结篇】:虚拟机Linux命令、Vim编辑器、有趣的命令3
112 0
【Python零基础入门之终结篇】:虚拟机Linux命令、Vim编辑器、有趣的命令3
|
Linux 开发工具 Python
【Python零基础入门之终结篇】:虚拟机Linux命令、Vim编辑器、有趣的命令2
【Python零基础入门之终结篇】:虚拟机Linux命令、Vim编辑器、有趣的命令2
168 0
【Python零基础入门之终结篇】:虚拟机Linux命令、Vim编辑器、有趣的命令2
下一篇
无影云桌面