python交换模式vim模式TAB自动补齐

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python交换模式vim模式TAB自动补齐相关的知识,希望对你有一定的参考价值。

1、交换模式自动补齐

#登陆python交换模式,导入sys模块,sys.path查看python搜索路径

[[email protected] python]# python
Python 2.6.6 (r266:84292, Jan 22 2014, 09:42:36) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
[‘‘, ‘/usr/lib64/python26.zip‘, ‘/usr/lib64/python2.6‘, ‘/usr/lib64/python2.6/plat-linux2‘, ‘/usr/lib64/python2.6/lib-tk‘, ‘/usr/lib64/python2.6/lib-old‘, ‘/usr/lib64/python2.6/lib-dynload‘, ‘/usr/lib64/python2.6/site-packages‘, ‘/usr/lib64/python2.6/site-packages/gtk-2.0‘, ‘/usr/lib/python2.6/site-packages‘]
>>>

#切换到python第三方模块搜索路径下,创建tab.py模块文件

[[email protected] python]# cd /usr/lib64/python2.6/site-packages
[[email protected] site-packages]# cat tab.py
#!/usr/bin/python
#pyton startup tab
import sys
import readline
import rlcompleter
import atexit
import os
readline.parse_and_bind(‘tab: complete‘)
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

#在交换模式下导入tab模块,测试tab补齐

>>> import tab,sys
>>> sys.
sys.__class__(              sys.executable
sys.__delattr__(            sys.exit(
sys.__dict__                sys.exitfunc(
sys.__displayhook__(        sys.flags
sys.__doc__                 sys.float_info


2、vim编辑模式下TAB自动补齐


首先下载vim中Tab建第三方模块,其中也介绍详细的使用方法

官网地址:http://rkulla.github.io/pydiction/

wget https://github.com/rkulla/pydiction/zipball/master
unzip -q master
cd rkulla-pydiction-41c7143/

在宿主目录下创建(.vim)文件夹,官网介绍,complete-dict和pydiction.py这两个文件只能安装在(.vim)目录下

[[email protected] rkulla-pydiction-41c7143]# mkdir ~/.vim
[[email protected] rkulla-pydiction-41c7143]# \cp after/ ~/.vim -r
[[email protected] rkulla-pydiction-41c7143]# \cp complete-dict ~/.vim
[[email protected] rkulla-pydiction-41c7143]# cd ~/.vim
[[email protected] .vim]# tree
.
├── after
│   └── ftplugin
│       └── python_pydiction.vim
└── complete-dict

在宿主目录下,新建文件(.vimrc),开启filetype插件,指定complete-dict的完整路径:

[[email protected] .vim]# vim ~/.vimrc
"python TAB补齐
"启用filetype插件
filetype plugin on
"指定complete-dict的完整路径
let g:pydiction_location = ‘~/.vim/complete-dict‘
"设置菜单的高度,默认为8
let g:pydiction_menu_height = 3

测试是否生效:

技术分享技术分享

注意:vim编辑文件只针对后缀为.py的文件,或者在文件开头声明为python运行的头信息(#!/usr/bin/python)


附个人vim配置文件:

cat ~/.vimrc

"语法高亮
syntax on
"显示行号
set number
"启用鼠标
set mouse=a
set selection=exclusive
set selectmode=mouse,key
"侦听文件类型
filetype on
"记录历史的行数
set history=1000
"下划线高亮显示光标所在行
set cursorline
"背景使用黑色
set background=dark
"第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格
set tabstop=4
"设置自动缩进长度为4格
set shiftwidth=4
"在编辑过程中,在右下角显示光标位置的状态行
set ruler
"设置编码自动识别,中文引号显示
set fileencoding=uft-8
set ambiwidth=double
"设置高亮搜索
set hlsearch
"在搜索时,输入的词句的逐字符高亮
set incsearch
"显示括号匹配
set showmatch
"括号匹配显示时间为1(单位是十分之一秒)
set matchtime=1
"python TAB补齐
"启用filetype插件
filetype plugin on
"指定complete-dict的完整路径
let g:pydiction_location = ‘~/.vim/complete-dict‘
"设置菜单的高度,默认为8
let g:pydiction_menu_height = 3

本文出自 “80后小菜鸟” 博客,请务必保留此出处http://zhangxinqi.blog.51cto.com/9668428/1964100

以上是关于python交换模式vim模式TAB自动补齐的主要内容,如果未能解决你的问题,请参考以下文章

vim里添加自动补齐插件,与python 函数补齐

交互模式下PYTHON自动补全和VIM中PYTHON自动补全

为Python添加交互模式下TAB自动补全以及命令历史功能

linux环境下给python添加tab自动补齐

Vim自动缩进配置原理和tab键替换空格-Vim使用技巧

vim模式如何关闭回绕