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中两种列表元素去重函数性能的比较方法
Jun 29 Python
根据DataFrame某一列的值来选择具体的某一行方法
Jul 03 Python
Python之循环结构
Jan 15 Python
python+pyqt5实现24点小游戏
Jan 24 Python
python 判断字符串中是否含有汉字或非汉字的实例
Jul 15 Python
Pandas透视表(pivot_table)详解
Jul 22 Python
python 标准差计算的实现(std)
Jul 29 Python
python单例设计模式实现解析
Jan 07 Python
使用Python第三方库pygame写个贪吃蛇小游戏
Mar 06 Python
python求解汉诺塔游戏
Jul 09 Python
python 多线程共享全局变量的优劣
Sep 24 Python
python中validators库的使用方法详解
Sep 23 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
mysql5写入和读出乱码解决
2006/11/25 PHP
PHP中strtotime函数使用方法详解
2011/11/27 PHP
PHP SPL标准库之接口(Interface)详解
2015/05/11 PHP
PHP使用socket发送HTTP请求的方法
2016/02/14 PHP
php使用正则验证中文
2016/04/06 PHP
JS中==与===操作符的比较
2009/03/21 Javascript
IE之动态添加DOM节点触发window.resize事件
2010/07/27 Javascript
在新窗口打开超链接的方法小结
2013/04/14 Javascript
js格式化时间和js格式化时间戳示例
2014/02/10 Javascript
Javascript中的delete操作符详细介绍
2014/06/06 Javascript
深入分析JQuery和JavaScript的异同
2014/10/23 Javascript
jQuery插件windowScroll实现单屏滚动特效
2015/07/14 Javascript
JS获取子窗口中返回的数据实现方法
2016/05/28 Javascript
AngularJs expression详解及简单示例
2016/09/01 Javascript
原生js实现网页顶部自动下拉/收缩广告效果
2017/01/20 Javascript
JavaScript编写的网页小游戏,很给力
2017/08/18 Javascript
微信小程序实现的一键拨号功能示例
2019/04/24 Javascript
vue data对象重新赋值无效(未更改)的解决方式
2020/07/24 Javascript
[08:08]DOTA2-DPC中国联赛2月28日Recap集锦
2021/03/11 DOTA
Python入门篇之字典
2014/10/17 Python
使用Python中的greenlet包实现并发编程的入门教程
2015/04/16 Python
基于Django用户认证系统详解
2018/02/21 Python
TensorFlow搭建神经网络最佳实践
2018/03/09 Python
手把手教你使用Python创建微信机器人
2019/04/29 Python
浅谈Python协程
2020/06/17 Python
利用Python函数实现一个万历表完整示例
2021/01/23 Python
Java的基础面试题附答案
2016/01/10 面试题
采用怎样的方法保证数据的完整性
2013/12/02 面试题
大学生未来职业生涯规划书
2014/02/15 职场文书
心理咨询专业自荐信
2014/07/07 职场文书
国庆节慰问信
2015/02/15 职场文书
初中生思想道德自我评价
2015/03/09 职场文书
酒店财务部岗位职责
2015/04/14 职场文书
迎新年主持词
2015/07/06 职场文书
SQL Server——索引+基于单表的数据插入与简单查询【1】
2021/04/05 SQL Server
SpringBoot详解执行过程
2022/07/15 Java/Android