必威体育Betway必威体育官网
当前位置:首页 > IT技术

Ubuntu下使用AutoComlPop和OmniCppComplete实现变量补全和代码补全

时间:2019-09-05 01:40:00来源:IT技术作者:seo实验室小编阅读:74次「手机版」
 

www.blogbus.com

一 使用AutoComlPop实现变量补全

1 下载AutoComlPop:

下载地址:http://www.vim.org/scripts/script.php?script_id=1879

2 安装

查看根目录

$ cd ~  
$ ll    

若根目录下没有.vim目录,则创建

$ mkdir .vim

进入.vim目录

$ cd ~/.vim

解压下载的zip文件包(默认下载路径为~/Download)

$ unzip vim-autocomplpop.zip

重新打开vim即可使用,效果如下图:

变量补全效果

二 使用OmniCppComplete实现代码补全:

参考链接:http://vim.wikia.com/wiki/C%2B%2B_code_completion?action=edit&section=1

1 下载OmniCppComplete并解压到~/.vim/目录下

下载地址:https://vim.sourceforge.io/scripts/script.php?script_id=1520

$ cd ~/.vim
$ unzip ~/Downloads/omnicppcomplete-0.41.zip

2 在.vim目录下创建tags目录

$ mkdir ~/.vim/tags

3 下载并解压tags for std c++文件到tags文件夹

下载地址:https://vim.sourceforge.io/scripts/script.php?script_id=2358

移动压缩文件到本目录(最后一行有个”.”)

$ cd ~/.vim/tags
$ mv ~/Downloads/cpp_src.tar.bz2 . 

解压命令

$ tar -jxvf cpp_src.tar.bz2

4 运行ctags命令

$ ctags -R --sort=1 --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f cpp cpp_src

5 增加其余的ctags命令

$ ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f OpenCV /usr/include/opencv/ # for opencv

$ ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f opencv2 /usr/include/opencv2/ # for opencv2

以上代码针对opencv2,也可以自己添加想要添加的代码库,例子如下:

$ ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f <ctags名称> <库的绝对路径> 

6 修改.vimrc配置文件

如果你的~/目录下没有.vimrc文件,将/etc/vim/路径下的vimrc文件复制到~/目录下

复制vimrc文件至~目录下

$ cp /etc/vim/vimrc ~
$ cd ~         

将vimrc文件重命名为.vimrc

$ mv vimrc .vimrc 

如果权限不允许,请用root执行以上操作,并将.vimrc的所有者改为你的用户

7 编辑你的.vimrc配置文件

$ vim ~/.vimrc

向其中加入如下代码:

set nocp           "vim不工作兼容模式下
filetype plugin indent on "网上很多教程都没有这两行,导致最后无法实现补全功能

" configure tags - add additional tags here or comment out not-used ones
set tags+=~/.vim/tags/cpp
set tags+=~/.vim/tags/opencv
set tags+=~/.vim/tags/opencv2  "此处添加第5部中添加的ctags名称
" build tags of your own project with Ctrl-F12
map <C-F12> :!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q .<CR>

" OmniCppComplete
let OmniCpp_NamespaceSearch = 1
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_ShowprototypeInAbbr = 1 " show function parameters
let OmniCpp_MayCompleteDot = 1 " autocomplete after .
let OmniCpp_MayCompleteArrow = 1 " autocomplete after ->
let OmniCpp_MayCompleteScope = 1 " autocomplete after ::
let OmniCpp_DefaultNamespaces = ["std", "_GLIBCXX_STD"]
" automatically open and close the popup menu / preview window
au CursorMovedI,InsertLeave * if pumvisible() == 0|silent! pclose|endif
set completeopt=menuone,menu,longest,preview

重新打开vim即可使用,效果如下图:

这里写图片描述

相关阅读

find命令的使用

find命令的使用 find ./ -name ‘*.txt’ -exec rm -rf {} ;例:删除/home/raven下,包括子目录里所有名为abc.txt的文件:find /home/r

adb工具包使用介绍 adb工具包安装使用方法

adb工具包是一款资深机友常使用道德软件,这款软件可以帮您进行手机解锁等,有些人需啊哟用到这款软件的时候却不知道该怎么安装使用,

2019天猫618大促购物券跨店满减如何使用吗?

2019天猫618大促购物券跨店满减如何使用吗?这是2019天猫618大促活动开始报名以来,天猫卖家询问最多的问题了!今天,就由seo实验室小

c语言中的creat()函数使用及参数详解

头文件:#include <sys/types.h>   #include <sys/stat.h>   #include <fcntl.h> #include <fcntl.h>           

CouchDB安装以及使用

系统 [root@fabric-cli ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) 安装 安装rpm仓库 vi /e

分享到:

栏目导航

推荐阅读

热门阅读