vim编译安装
A. Ubuntu14.04麒麟怎么安装vim
所有的安装步骤在Vundle,以及YouCompleteMe两个地址上面已经说的很透彻了,但是因为第一次安装,您可能没有太多经验,看到这么多需要安装的工具感到头大。下面我们一步一步来操作,我相信按照下面的操作,您一定能够顺利的完成代码补全功能。
首先,您要保证您的vim版本号要高于7.3.584,您可以通过在终端输入:
vim --version
来查看您的vim的版本号。如果没有vim,您需要自己安装。
第二步,安装cmake
sudo apt-get install build-essential cmake
第三步,安装 llvm 和 clang
到 www.llvm.org 下载相应版本的llvm和clang,因为我用的是ubuntu 14.04 64bit的系统所以我直接下载的pre-build binary版本的而不需要下载源码再自己重新编译了。省去了不少麻烦。
下载完成后,直接将下载后的压缩文件解压,并进入其目录
tar zxvf clang+llvm-3.7.0-amd64-Ubuntu-14.04..tar.gz
cd clang+llvm-3.7.0-amd64-Ubuntu-14.04.
其中 *.tar.gz就是您所下载的压缩文件。
运行命令:
sudo cp -R * /usr/
将目录里的所有文件拷贝到相应的系统目录下,然后再配置一下软链接:
sudo ln -sf /usr/bin/clang++ /etc/alternatives/c++
其中 “-sf”中 “s”代表了软链接,“f”即为force的意思。
运行:clang --version 如果您看到了它的版本号,就说明 llvm 和 clang配置好了。
第四步:安装Vundle,安装过程请参考 https://github.com/VundleVim/Vundle.vim#about ;P.S. :如果您是第一次安装vim,可能需要自己创建vim的配置文件,它是在 “~/ ” 目录下的的一个隐藏文件 .vim 前面的“小点”就说明这是一个隐藏的目录, 用 ls -a才能查看,如果没有,请创建该目录。即:mkdir ~/.vim
配置好Vundle , 请打开主目录下的.vimrc文件,这个文件是按照之前安装vundle时的步骤配置好的,请在call vundle#begin() 和 call vundle#end() 在之间添加 Plugin ‘Valloric/YouCompleteMe‘, 另外,把begin() 和 end()之间除了Plugin ‘VundleVim/Vundle.vim‘ 和 Plugin ‘Valloric/YouCompleteMe‘之外的其他PlugIn 都注释掉把,感觉没什么卵用。
第五步:利用Vundle安装插件
非常简单,在终端中打开vim, 输入" :PluginInstall ", 等待Vundle安装完毕。这可能需要花费一段时间。当vim的底栏显示:Done!(注意不是Done with error !!!) 就表示安装成功。
第六步:编译YouCompleteMe, 为了不保证出错,我用的是完全安装的方法。
cd ~
mkdir ycm_build
cd ycm_build
因为我要支持C/CPP的语义支持,我选择:
cmake -G "Unix Makefiles" -DUSE_SYSTEM_LIBCLANG=ON . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
这里,我选择使用系统的libclang,因为我们也从官网下载了LLVM+Clang(该目录下有 bin, lib, include 等文件夹),我们也可以执行:cmake -G "Unix Makefiles" -DPATH_TO_LLVM_ROOT=~/ycm_temp/llvm_root_dir . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp其中“~/ycm_temp/llvm_root_dir”就是我们解压过的文件的根目录
第七步:生成
make ycm_support_libs
到此为止,基本的配置工作就完成了,但是还有一点瑕疵:#include <iostream>, #include <stdio> vector, 什么的都不能补全,这是因为这些头文件的路径没有被找到,下面的工作就是要让YouCompleteMe找到这些头文件,而且,以后有什么库文件,比如OpenCV,OPenGL什么的,都可以按照这个方法添加。
打开 ~/下的.vimrc文件,确保查看是否有这样一条配置:
let g:ycm_global_ycm_extra_conf = ‘~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py‘
如果没有,请修改.ycm_extra_conf.py的路径是正确的。
打开~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py
vim ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py
您可以在flags[ * ]数组的后面添加你想要的路径,例如: stdio.h等C语言的头文件包含在/usr/include中,那么您需要添加这样一条
‘-isystem‘,
‘/usr/include’,
注意,不要忘记后面的“,”。
B. linux如何安装vim编辑器
方法/步骤 1、【下载vim源码】:从vim的官方网站下载vim的安装源码包。 linux系统怎么安装vim编辑器。
2、【解压安装包】:下载的安装包是经过压缩的tar格式,在linux可以使用自带的工具tar进行解压,在安装包所在目录执行命令:tar -zxvf vim-7.4.tar linux系统怎么安装vim编辑器。 3、【配置安装变量】:打开解压后的目录-执行命令:cd vim74;配置安装环境-执行命令:./configure --prefix=/usr/local/servers/vim ,“/usr/local/servers/vim”是安装路径。 linux系统怎么安装vim编辑器。
4、【编译源码】:在解压目录执行编译命令:make linux系统怎么安装vim编辑器。 5、【安装vim】:切换到root用户-执行命令:sudo su root;安装-执行命令:make install 创建软链:执行命令:ln -s /usr/local/servers/erlang/bin/vim /usr/local/bin/vim linux系统怎么安装vim编辑器。
6、【启动vim】:执行命令vim,如下图安装成功。 linux系统怎么安装vim编辑器。
C. 关于Ubuntu虚机内git submole的问题
一、Ubuntu系统默认内置:
实际上ubuntu默认没有安装老版本的vi,只装了vim。vi是vim.tiny(vim的最小化版本,不含 GUI,并且仅含有一小部分功能,并且默认与vi兼容。此软件包不依赖于vim-runtime软件包)的一个别名,可用命令ls -l /usr/bin/vi来进行查看vi是指向/etc/alternatives/vi,而/etc/alternatives/vi 又指向/usr/bin/vim.tiny,从命令update-alternatives --display vi可以看出默认情况下,vi当前指向的是vim.tiny。
二、VIM版本及其对比:
不同的编译选项编译出来的vim而已。比如vim是终端下的vim-basic跟vim-tiny,而vim-gnome是用了GNOME2 GUI的vim,在gnome桌面系统上推荐安装vim-gnome。
1、vim-tiny是tiny 版本的vim,就是功能比较少(前面有个+的表示有着功能),但是体积小,速度快。
1、vim-tiny是tiny 版本的vim,就是功能比较少(前面有个+的表示有着功能),但是体积小,速度快。
2、vim-basic:完整版的vim,不过同样没有图形界面,没有菜单
3、更多可以查看帮助文档:http://vimdoc.sourceforge.net/htmldoc/various.html#+feature-list
提示:
ctags的功能很强大,更详细的配置请参考其文档。
建议在~/.vimrc中添加如下配置以使Vim在父目录中寻找tags文件[10]:
set tags=tags;/
设置好后,可在Vim中使用如下功能:Ctrl-]转至最佳匹配的相应Tag,Ctrl-T返回上一个匹配。如果有多个匹配,g Ctrl-]可显示所有备选的tags。如有需要,可互换Ctrl-]和g Ctrl-][11]:
"在普通和可视模式中,将<c-]>与g<c-]>互换 nnoremap <c-]> g<c-]> vnoremap <c-]> g<c-]> nnoremap g<c-]> <c-]> vnoremap g<c-]> <c-]>
使用:make可调用make命令编译程序,配合Vim内置的QuickFix功能,可以像IDE一样打开一个窗口展示编译错误和警告,通过它还可以方便地跳转到各编译错误的产生位置。
常用的命令有:cw[indow](如有错误打开quickfix窗口)、:cn(跳到下一个错误)、:cp(跳到前一个错误)等,具体可:help quickfix。
如果想在有错时自动打开quickfix窗口[12]:
" 编译后,如有错误则打开quickfix窗口。(光标仍停留在源码窗口) " " 注意:需要开启netsting autocmd autocmd QuickFixCmdPost [^l]* nested cwindow autocmd QuickFixCmdPost l* nested lwindow
默认情况下,:mak[e]会跳转到第一个错误,如果不想启用这个功能,请使用:make!。
代码较长时可启用代码折叠功能,如按语法高亮元素折叠:
set foldmethod=syntax "默认情况下不折叠 set foldlevel=99
随后即可使用z系列命令管理代码折叠。如za会翻转当前位置的折叠状态,zA会递归翻转当前层所有代码的折叠状态等。当然也可以把功能键映射到za:
map <F3> za
K键可用于查看当前函数的文档。
近来仍被积极维护的代码托管在 GitHub 上的插件[13]: