Python 自动补全(vim)


Posted in Python onNovember 30, 2014

一、vim python自动补全插件:pydiction

可以实现下面python代码的自动补全:

1.简单python关键词补全
2.python 函数补全带括号
3.python 模块补全
4.python 模块内函数,变量补全
5.from module import sub-module 补全

想为vim启动自动补全需要下载插件,地址如下:

http://vim.sourceforge.net/scripts/script.php?script_id=850
https://github.com/rkulla/pydiction

安装配置:

wget https://github.com/rkulla/pydiction/archive/master.zip
unzip -q master
mv pydiction-master pydiction
mkdir -p ~/.vim/tools/pydiction
cp -r pydiction/after ~/.vim
cp pydiction/complete-dict ~/.vim/tools/pydiction

确保文件结构如下:

# tree ~/.vim
/root/.vim
├── after
│   └── ftplugin
│       └── python_pydiction.vim
└── tools
    └── pydiction
        └── complete-dict

创建~/.vimrc,确保其中内容如下:

# cat ~/.vimrc
filetype plugin on
let g:pydiction_location = '~/.vim/tools/pydiction/complete-dict'

用vim编辑一个py文件,import os.,这时候应该出现提示,证明成功,如下图

Python 自动补全(vim)

二、python交互模式下Tab自动补齐

创建文件如下:

# cat ~/.pythonstartup
# python startup file
#!/usr/bin/env python
import sys
import readline
import rlcompleter
import atexit
import os
# tab completion
readline.parse_and_bind('tab: complete')
# history file
histfile = os.path.join(os.environ['HOME'], '.pythonhistory')
try:
  readline.read_history_file(histfile)
except IOError:
  pass
atexit.register(readline.write_history_file, histfile)
 
del os, histfile, readline, rlcompleter
1
	
echo 'export PYTHONSTARTUP=~/.pythonstartup' >> ~/.bash_profile

重新登陆shell,输入python命令进入交互模式,就可以用Tab键进行补全。如下图:

Python 自动补全(vim)

Python 相关文章推荐
Python之py2exe打包工具详解
Jun 14 Python
Python图形绘制操作之正弦曲线实现方法分析
Dec 25 Python
Python不使用int()函数把字符串转换为数字的方法
Jul 09 Python
python使用ddt过程中遇到的问题及解决方案【推荐】
Oct 29 Python
PyQt5使用QTimer实现电子时钟
Jul 29 Python
Python 日期区间处理 (本周本月上周上月...)
Aug 08 Python
Django框架 查询Extra功能实现解析
Sep 04 Python
简单了解python中的与或非运算
Sep 18 Python
python画微信表情符的实例代码
Oct 09 Python
jupyter notebook 多环境conda kernel配置方式
Apr 10 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
Jul 02 Python
Python+OpenCV检测灯光亮点的实现方法
Nov 02 Python
给Python IDLE加上自动补全和历史功能
Nov 30 #Python
让 python 命令行也可以自动补全
Nov 30 #Python
Python lambda和Python def区别分析
Nov 30 #Python
Python内置函数之filter map reduce介绍
Nov 30 #Python
Python Queue模块详解
Nov 30 #Python
Python socket C/S结构的聊天室应用实现
Nov 30 #Python
Python open()文件处理使用介绍
Nov 30 #Python
You might like
详细介绍PHP应用提速面面观
2006/10/09 PHP
php 删除无限级目录与文件代码共享
2008/11/22 PHP
PHP最常用的ini函数分析 针对PHP.ini配置文件
2010/04/22 PHP
PHP中的switch语句的用法实例详解
2015/10/21 PHP
PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法分析
2019/06/12 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
2019/10/16 PHP
Jquery弹出层插件ThickBox的使用方法
2014/12/09 Javascript
js判断手机和pc端选择不同执行事件的方法
2015/01/30 Javascript
AngularJS 表达式详细讲解及实例代码
2016/07/26 Javascript
mac中利用NVM管理不同node版本的方法详解
2017/11/08 Javascript
微信小程序配置服务器提示验证token失败的解决方法
2019/04/03 Javascript
layui自己添加图片按钮并点击跳转页面的例子
2019/09/14 Javascript
vue 中this.$set 动态绑定数据的案例讲解
2021/01/29 Vue.js
[36:02]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第一局
2016/02/28 DOTA
[54:53]完美世界DOTA2联赛PWL S2 GXR vs PXG 第二场 11.18
2020/11/18 DOTA
Python函数中*args和**kwargs来传递变长参数的用法
2016/01/26 Python
Python二叉树的定义及常用遍历算法分析
2017/11/24 Python
numpy排序与集合运算用法示例
2017/12/15 Python
Python编写Windows Service服务程序
2018/01/04 Python
Python学习笔记之open()函数打开文件路径报错问题
2018/04/28 Python
树莓派采用socket方式文件传输(python)
2019/06/22 Python
Python shelve模块实现解析
2019/08/28 Python
numpy:找到指定元素的索引示例
2019/11/26 Python
解决Django no such table: django_session的问题
2020/04/07 Python
打印机墨盒:123Inkjets
2017/02/16 全球购物
北欧最好的童装网上商店:Babyshop
2019/09/15 全球购物
在weblogic中发布ejb需涉及到哪些配置文件
2012/01/17 面试题
大学毕业的自我鉴定
2013/10/08 职场文书
饲料采购员岗位职责
2013/12/19 职场文书
电钳专业个人求职信
2014/01/04 职场文书
本科毕业生求职信
2014/06/15 职场文书
诉讼代理人授权委托书
2014/10/11 职场文书
综合素质自我评价评语
2015/03/06 职场文书
五星级酒店前台接待岗位职责
2015/04/02 职场文书
小学运动会入场词
2015/07/18 职场文书
优秀的商业计划书,让融资一步到位
2019/05/07 职场文书