1.下载源码
git clone git@github.com:vim/vim.git
2.编译
1.安装依赖软件
sudo 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
2.删除已经安装的vim
sudo apt-get remove vim-tiny vim-common vim-gui-common vim-nox
Ubuntu要加上以下的
sudo apt-get remove vim-tiny vim-common vim-gui-common vim-nox
3.配置vim,其中python路径要具体看,gui非ubuntu为gtk2,ubuntu用gtk2会有警告,看着闹心
./configure --with-features=huge \
--enable-multibyte \
--enable-rubyinterp \
--enable-pythoninterp \
--with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu \
--enable-python3interp \
--with-python3-config-dir=/usr/lib/python3.4/config-3.4m-x86_64-linux-gnu \
--enable-perlinterp \
--enable-luainterp \
--enable-gui=gtk2 --enable-cscope --prefix=/usr --enable-fontset
4.编译,路径要看readme里的版本号
make VIMRUNTIMEDIR=/usr/share/vim/vim80
5.安装vim
sudo apt-get install checkinstall
sudo checkinstall
3.安装clang和gcc/g++等软件
1.安装clang
去http://apt.llvm.org/看地址,用以下命令安装
sudo wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
sudo apt-add-repository "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.9 main" #修改/etc/apt/sources.list.d/additional-repositories.list文件,添加这个地址
sudo apt-get update
sudo apt-get install clang-3.9 lldb-3.9 libclang-3.9-dev
网站上也有完整安装包的命令
sudo apt-get install clang-4.0 clang-4.0-doc libclang-common-4.0-dev libclang-4.0-dev libclang1-4.0 libclang1-4.0-dbg libllvm-4.0-ocaml-dev libllvm4.0 libllvm4.0-dbg lldb-4.0 llvm-4.0 llvm-4.0-dev llvm-4.0-doc llvm-4.0-examples llvm-4.0-runtime clang-modernize-4.0 clang-format-4.0 python-clang-4.0 lldb-4.0-dev liblldb-4.0-dbg
2.安装gcc/g++
# Install GCC 4.9
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-4.9
# Prefer 4.9 to other versions
sudo update-alternatives --remove-all g++
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 50
4.安装universal-ctags
1.下载
git clone https://github.com/universal-ctags/ctags.git
2.安装autotools
sudo apt-get install autoconf automake pkg-config
3.配置,编译,安装
./autogen.sh
./configure --prefix=/usr
make
sudo checkinstall
4.使用
1. 默认配置文件是~/.ctags,目前如下,所以直接跑ctags就可以了
# Basic options
--sort=foldcase
--tag-relative=yes
--file-scope=yes
--fields=+l
--exclude=.git
--extra=+qf
--C-kinds=+pqxzL
--recurse=yes
#--langmap=c:.c.h
2. --list-kinds=c可以查看C语言支持的tag类型;--fields=+ 可以添加每个tag项里的拓展字段,说明更多信息
3. vim -t tags打开tag文件; ptag 标签项名打开窗口预览; pclose关闭; :tags显示当前tag栈; :tag跳转到tag栈中下一个项; CTRL+]跳转到定义处; CTRL+t跳转到tag栈中上一个项,gd或gD跳转到局部变量定义处
4. 其他跳转指令: CTRL + o跳转到上一处跳转点; CTRL+I跳转到下一处跳转点; :jumps列出跳转栈; g;跳转到上一个修改点; g,跳转到下一个修改点; :changs列出修改栈
5.v,V,CTRL+v选择相应的光标所经过的区域,:disp命令显示寄存器内容;寄存器名字前边都有","%是当前文件名,"*是系统剪切板的数据,“+是选中的数据;插入模式下CTRL+R后接寄存器名称,即可粘贴内容;命令模式中输入CTRL-R";CTRL+^会切换到上一个文件,即"#寄存器的内容
6.移动命令w,e,ge,b分别移动到下一个单词头,当前单词尾,上一个单词尾,上一个单词头。大写的W,E,gE,B则认为空白字符是分隔单词的,而非iskeyword定义的单词字符
7. 正常模式CTRL+R是redo,和U相反;/CTRL+R CTRL+W会搜索当前光标所在的单词,CTRL+R CTRL + W也可以在命令模式下和其他的命令搭配,比如ptag;[[为上一个函数体,]]为下一个函数体;diw或daw会剪切括号内或包含括号的单词