Linux中 vim 实现代码补全
vim 中代码补全
此部分内容主要是介绍如何实现在vim
中进行代码补全,其可分为以下几个步骤:
步骤1:判断
判断当前系统中是否具有补全功能,即随便创建一个文件,比如 test.c
,
在其命令行模式中输入
:set omnifunc?
若结果呈现
omnifunc=ccomplete#Complete
即
则说明此时可利用 Ctrl+n
或 Ctrl+p
实现C
程序补全,但无法实现C++
程序补全!
步骤2:安装 OmniCppComplete
于 OmniCppComplete : C/C++ omni-completion with ctags database 中下载 OmniCppComplete
,如图,并进行安装!
安装比较简单,可直接在对应文件夹下解压即可!为了使其他用户亦可实现此功能,可在 /home/
中自己添加一个文件夹如 .vim
并进行上述包的解压,具体代码如下:
cd /home/
mkdir .vim //可利用 ls -a 进行查看
cd .vim
mkdir tags //方便后续操作
然后将OmniCppComplete
放入.vim
中,此处一个简单方法是先下载到桌面,然后直接拖入到xshell
(我用的是xshell
)中,然后输入
unzip omnicppcomplete-0.41.zip //解压
如下
解压成功则如
步骤3:
于 tags for std c++ (STL, streams, …) 中下载 cpp_src
包,如图,并解压于上述 tags
文件夹中
代码为
cd tags/
bunzip2 cpp_src.tar.bz2
tar -xvf cpp_src.tar
步骤4:些许其他操作
在 tags
目录下运行
ctags -R –c++-kinds=+p –fields=+iaS –extra=+q –language-force=C++ cpp_src
当运行结束后,若出现 tags
文件则说明可以继续后续操作!如下
然后在 vimrc
文件中插入下述语句
set tags+=/your path/tags
可通过pwd
进行当前路径的查看,然后根据自己的路径将上述语句添加到vimrc
中,如下
结果
当成功进行上述步骤后,便可利用 Ctrl+n
或 Ctrl+p
对程序进行补全操作,如图
利用 Tab 键进行补全
此处操作比较简单,即将下述代码添加进 vimrc
文件中即可
function! CleverTab()
if strpart( getline('.'), 0, col('.')-1 ) =~ '^\s*$'
return "\<Tab>"
else
return "\<C-N>"
endif
endfunction
inoremap <Tab> <C-R>=CleverTab()<CR>
如图
此时便可利用 Tab
键进行代码补全!
以上内容结合了多个教程,比如 Linux——VIM开发C++自动补全(STL、括号)和开发环境配置 、LINUX操作系统VIM代码TAB自动补全配置,读者可根据自身需求进行查看!
侵权删~