linux下Tab及shell 补全python
Python自动补全
Python自动补全有vim编辑下和python交互模式下,下面分别介绍如何在这2种情况下实现Tab键自动补全。
vim python自动补全插件:pydiction
可以实现下面python代码的自动补全:
    简单python关键词补全
    python 函数补全带括号
    python 模块补全
    python 模块内函数,变量补全
    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交互模式下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键进行补全。如下图:

linux下Tab及shell 补全python的更多相关文章
- Linux下QTCreator代码自动补全(是真的自动补全,不是手动触发)
		
在使用Windows下的QTCreator的时候,像visual studio一样代码自动补全十分方便,而在Linux下,QTCreator似乎不能做到. 网上有些说是可以设置成手动补全,今天试了一下 ...
 - python交互模式下tab键自动补全
		
import rlcompleter,readline readline.parse_and_bind('tab:complete')
 - linux中tab键不能补全,却能切换窗口
		
linux中所有程序-设置-窗口管理器-键盘-切换同一应用程序的窗口-清除
 - VIM自动补全Python代码
		
pydiction插件 https://codeload.github.com/rkulla/pydiction/zip/master 新建bundle文件夹 mkdir ~/.vim/bundle ...
 - python命令行添加Tab键自动补全
		
1.编写一个tab的自动补全脚本,名为tab.py #!/usr/bin/python # python tab complete import sys import readline import ...
 - Python之Tab键自动补全
		
首先备份一下Tab键自动补全代码: # python start file import sys import readline import rlcompleter import atexit im ...
 - vim编辑下Python2.0自动补全
		
Python自动补全有vim编辑下和python交互模式下,下面分别介绍如何在这2种情况下实现Tab键自动补全. 一.vim python自动补全插件:pydiction 可以实现下面python代码 ...
 - linux-----遇到的问题----tab键不补全sh文件不能运行
		
在linux上部署tomcat,进入bin目录后 遇到了tab键不补全sh文件不能运行的情况. 如果自己输入sh文件名后也会报错: [x@web bin]$ ./startup.shbash: ./s ...
 - 远程桌面中Tab键不能补全的解决办法
		
我们曾在之前的一篇文章中介绍了windows远程连接ubuntu的方法,在成功登陆远程桌面环境之后,发现在终端中Tab键不能自动补齐(但是Ctrl +Tab 可以用,但是需要按下组合键才能补全的话,时 ...
 
随机推荐
- IPFS开发团队是如何工作的?
			
小编不是一个很八卦的人,连当红明星都认不全.不过,今天还是带领大家来扒一扒ipfs开发团队是如何工作的. 工作方式: 全体会议:每周一有一个全体会议,这个会议是提前安排好的一个日程 任务讨论:把大任务 ...
 - 简单docker镜像修改方式
			
• 创建Dockerfile,文件内容如下: FROM nps:v1.0.1 ENTRYPOINT ["/usr/bin/init.sh"] • 启动基础镜像:docker run ...
 - load vs. initialize
			
这篇文章来对比一下NSObject类的两个方法,+load与+initialize. + (void)load; Invoked whenever a class or category is add ...
 - 归并排序及优化(Java实现)
			
普通归并排序 public class MergeSort { /** * @param arr 待排序的数组 * @param left 本次归并的左边界 * @param mid 本次归并的中间位 ...
 - ConcurrentHashMap源码解析(JDK1.8)
			
package java.util.concurrent; import java.io.ObjectStreamField; import java.io.Serializable; import ...
 - MySQL聚集索引和非聚集索引
			
索引分为聚集索引和非聚集索引,mysql中不同的存储引擎对索引的底层实现可能会不同,这里只关注mysql的默认存储引擎InnoDB. 利用下面的命令可以查看默认的存储引擎 show variables ...
 - [ZJOI2007] 矩阵游戏
			
Description 小Q是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏――矩阵游戏.矩阵游戏在一个N*N黑白方阵进行(如同国际象棋一般,只是颜色是随意的).每次可以对该矩阵进行两 ...
 - cloneNode和replaceChild
			
node.cloneNode(deep) var node=document.getElementById("myList2").lastChild.cloneNode(true) ...
 - http.request请求及在node中post请求参数解析
			
Post请求 var http=require('http'); var qs=require('querystring'); var post_data={a:123,time:new Date() ...
 - Axure RP初学2