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里大整数相乘相关技巧指南
Sep 12 Python
python操作mysql中文显示乱码的解决方法
Oct 11 Python
神经网络理论基础及Python实现详解
Dec 15 Python
火车票抢票python代码公开揭秘!
Mar 08 Python
Python闭包执行时值的传递方式实例分析
Jun 04 Python
python3监控CentOS磁盘空间脚本
Jun 21 Python
Python修改文件往指定行插入内容的实例
Jan 30 Python
Pycharm远程调试原理及具体配置详解
Aug 08 Python
python实现删除列表中某个元素的3种方法
Jan 15 Python
python实现图片,视频人脸识别(dlib版)
Nov 18 Python
python Django框架快速入门教程(后台管理)
Jul 21 Python
python实现学员管理系统(面向对象版)
Jun 05 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
图书管理程序(三)
2006/10/09 PHP
解析VS2010利用VS.PHP插件调试PHP的方法
2013/07/19 PHP
用jquery实现输入框获取焦点消失文字
2013/04/27 Javascript
jquery js 重置表单 reset()具体实现代码
2013/08/05 Javascript
jquery.autocomplete修改实现键盘上下键自动填充示例
2013/11/19 Javascript
javascript实现动态导入js与css等静态资源文件的方法
2015/07/25 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
浅谈javascript中的constructor
2016/06/08 Javascript
JS限定手机版中图片大小随分辨率自动调整的方法
2016/12/05 Javascript
AngularJS中的按需加载ocLazyLoad示例
2017/01/11 Javascript
vue-awesome-swiper滑块插件使用方法详解
2017/11/27 Javascript
解决vue中无法动态修改jqgrid组件 url地址的问题
2018/03/01 Javascript
在小程序Canvas中使用measureText的方法示例
2018/10/19 Javascript
Vue项目环境搭建详细总结
2019/09/26 Javascript
通过js随机函数Math.random实现乱序
2020/05/19 Javascript
Vue 组件注册全解析
2020/12/17 Vue.js
python每次处理固定个数的字符的方法总结
2013/01/29 Python
基于scrapy实现的简单蜘蛛采集程序
2015/04/17 Python
Python对文件操作知识汇总
2016/05/15 Python
详解Python中的from..import绝对导入语句
2016/06/21 Python
Python在信息学竞赛中的运用及Python的基本用法(详解)
2017/08/15 Python
python3.6连接MySQL和表的创建与删除实例代码
2017/12/28 Python
python实现基于SVM手写数字识别功能
2020/05/27 Python
python表格存取的方法
2018/03/07 Python
解决Python print 输出文本显示 gbk 编码错误问题
2018/07/13 Python
使用Python实现一个栈判断括号是否平衡
2018/08/23 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
2020/05/19 Python
HTML5 canvas基本绘图之图形组合
2016/06/27 HTML / CSS
Bravofly德国:预订廉价航班和酒店
2019/09/22 全球购物
为什么Runtime.exec(“ls”)没有任何输出?
2014/10/03 面试题
机械电子工程专业推荐信范文
2013/11/20 职场文书
党的群众路线教育实践活动心得体会
2014/03/03 职场文书
安全保证书范文
2014/04/29 职场文书
英文推荐信格式范文
2014/05/09 职场文书
旅游文化节策划方案
2014/06/06 职场文书
超市优秀员工获奖感言
2014/08/15 职场文书