linux vim python编辑代码补全

在网上折腾了好久,找了好多的文章,比如什么Pydiction 这个插件,最后还是没办法使用。最终找到了jedi-vim这个插件,以下说明下这个插件的用法:

第一步:升级vim到8.0
最新jedi-vim 插件需要 Vim 的版本至少不应该低于7.3,并且需要支持 python2 或 python3 ,可以用vim --version 查看版本号,如下图显示,不支持python2 跟python3,需要重新编译安装。

在这里插入图片描述
执行先卸载原来的:
apt-get remove vim-tiny vim-common

第二步:安装依赖包:
apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \
libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \
libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev \
python3-dev ruby-dev lua5.1 lua5.1-dev git
第三步:下载vim源码并安装
cd ~
git clone https://github.com/vim/vim.git
cd vim
 ./configure --with-features=huge \
          --enable-multibyte \
          --enable-rubyinterp=yes \
          --enable-pythoninterp=yes \
          --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu  \
          --enable-python3interp=yes \
          --with-python3-config-dir=/usr/lib/python3.5/config-x86_64-linux-gnu  \
          --enable-perlinterp=yes \
          --enable-luainterp=yes \
          --enable-gui=gtk2 --enable-cscope --prefix=/usr
make VIMRUNTIMEDIR=/usr/share/vim/vim80 
make install  

其中参数说明如下: 
–with-features = huge:支持最大特性 
–enable-multibyte:多字节支持可以在Vim中输入中文 
–enable-rubyinterp:启用Vim对ruby编写的插件的支持 
–enable-pythoninterp:启用Vim对python2 编写的插件的支持 
–enable-python3interp: 启用Vim对python3 编写的插件的支持 
–enable-luainterp:启用Vim对于lua 编写的插件的支持 
–enable-perlinterp:启用Vim对perl编写的插件的支持 
–enable-cscope:Vim对cscope支持 
–with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu :指定python路径 
–enable-gui = gtk2:gtk2支持,也可以使用gnome,表示生成gvim 
-prefix = / usr:编译安装路径
第四步:非必需,可不执行

可以安装checkinstall工具将从源码安装的软件变得像用deb包安装的一样,方便以后可以直接用sudo dpkg -P vim删除vim:

apt-get install checkinstall
cd vim
checkinstal
第五步:设置vim默认编辑器

试了下,设置失败了,不过也不影响

update-alternatives --install /usr/bin/editor editor /usr/bin/vim 1
update-alternatives --set editor /usr/bin/vim
update-alternatives --install /usr/bin/vi vi /usr/bin/vim 1
update-alternatives --set vi /usr/bin/vim

以上步骤是升级vim8的操作,以下操作是安装vim8插件的操作:

第六步:下载Vundl管理插件
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
第七步:配置.vimrc
vim  ~/.vimrc

set nocompatible              " be iMproved, required
filetype off                  " required
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-fugitive'
Plugin 'git://git.wincent.com/command-t.git'
Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
Plugin 'davidhalter/jedi-vim'
call vundle#end()            " required
filetype plugin indent on    " required
let g:jedi#completions_enabled = 1
set backspace=indent,eol,start
" 设置utf8编码
set fileencodings=utf-8,gbk,cp936
set fileencoding=utf-8
set encoding=utf-8
set termencoding=utf-8
" 设置标签栏
set showtabline=2

" 去除启动界面
set shortmess=atI

" 设置帮助信息为中文
set helplang=cn

" 设置自动对齐
set autoindent
set smartindent

" 设置c系缩进方式
set cindent
set tabstop=4

" 空格替换Tab
set expandtab
set shiftwidth=4
set softtabstop=4
set smarttab

" 增强命令补全
set wildmenu
" 设置语法高亮
syntax enable
"
" 显示行数
" set nu
第八步:安装jedi插件

vim ~/.vimrc 打开该文件
在这里插入图片描述

:PluginInstall ##插入模式下输入

看到提示done完成,才退出来。这样就完成了。
在这里插入图片描述

第九步:验收
输入导入time模块,然后按"."即可使用(但目前还不支持import 时候自动显示库的功能)

在这里插入图片描述

参考文档:
https://github.com/davidhalter/jedi-vim
https://github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source
https://github.com/VundleVim/Vundle.vim

额外操作:安装YouCompleteMe插件,功能类似jedi
git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/plugged/
cd ~/.vim/bundle/YouCompleteMe
./install.py --clang-completer 

这一步操作可能不成功,不成功的话先执行下面的

 git submodule update --init --recursive
apt-get install build-essential cmake 
里面的vim插件已经包含了taglist,omnicppcomplete等插件,无需再下载,详细的配置参考.vimrc,注意快捷键使用即可。有什么不喜欢和bug的地方,自行调整.vimrc。ctags命令工具还是要下载安装的。 1. 安装ctags和cscope yum install即可 在.vimrc文件中增加map :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q . 就可以在vim中使用快捷键F12来随时生成当前目录下的tags,这样后续配好omni自动补全以后,自己工程下定义的类中的public成员,也可以通过. :: ->来自动补全了。全局定义的查找。局部的符号不会生成tags,这个要使用superTab。 Ctrl ] 跳转到光标所在位置的符号的定义,前提是tags中有。 Ctrl t 回到上次跳转前的位置。 2. 下载其他vim插件 echofunc.vim 在底部状态栏显示函数原型 Alt - 和 Alt + 可以在多个函数原型间切换 winmanager 侧边栏显示文件浏览 直接把.vim文件拷贝到~/.vim/plugin/下即可 自动打开winmanager,参考http://blog.csdn.net/xuanwu_yan/article/details/43736299 : 在.vimrc中添加: let g:autoOpenWinManager=1 然后需要手动修改winmanager.vim文件,在末尾加入: " set auto open WinManager if g:autoOpenWinManager autocmd VimEnter * nested call s:StartWindowsManager() endif 调整winmanager窗口的大小,参考http://blog.csdn.net/yangzhongxuan/article/details/7944927 : let g:bufExplorerMaxHeight=30 let g:bufExplorerMoreThanOne=0 miniBufferExplorer,直接下载minibufexpl.vim 折叠设置 " --fold setting --- set foldmethod=syntax "用语法高亮来定义折叠 set foldlevel=100 "启动vim时不要自动折叠代码 set foldcolumn=5 "设置折叠栏宽度 常用命令: za 打开/关闭在光标下的折叠 zA 循环地打开/关闭光标下的折叠 zc 关闭close在光标下的折叠 zo 打开在光标下的折叠 安装SuperTab,参考http://blog.csdn.net/bokee/article/details/6633193 ,配了之后没反应 使Tab键具有更快捷的上下文提示功能,从http://www.vim.org/scripts/script.php?script_id=1643 下载安装,它是个vba文件,即Vimball格式的安装包,安装方法: 1)用vim打开supertab.vba文件 2)在vim命令行下运行命令UseVimball ~/.vim。就会将安装包安装到~/.vim目录下。 在~/.vimrc文件中添加: let g:SuperTabDefaultCompletionType="" 使用Ctrl - P键弹出SuperTab的自动补全 Ctrl - w - ] 弹出定义的位置 Ctrl - ] 跳到符号定义的位置,Ctrl - t返回上次跳走的位置 Ctrl-x Ctrll-o 弹出omni自动补全 F12 生成当前目录下的tags
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值