VIM配置

以前参考过网上一些文章,比如如何把Vim打造成强大的IDE,但是过了一段时间不用Vim,再次使用时有些命令就记不起来了,因此有必要将常用的命令记录下来。除了自身的命令,Vim还提供插件机制,可以使用很多插件来扩展Vim功能。我在看c代码时,主要就用到cscope和ctags,在Ubuntu下,可通过下面的命令来安装这两个工具:

apt-get -y install cscope exuberant-ctags build-essential

我最近要分析QEMU代码,下载代码解压后,进入解压目录,执行下面的命令:

cscope -R -b

ctags -R .

之后在该目录下生成两个文件,分别为cscope.out和tags。

然后编辑文件~/.vimrc,输入以下内容:

syntax on
set nu
set tags=/usr/src/tags
set path+=/usr/include,/usr/src/qemu/include,/usr/src/linux-4.0.4/include

因为我的配置比较简单,就只有这点内容,指定了tags文件位置,cscope文件没有指定,当我cd到QEMU代码所在目录,用Vim打开文件时,Vim会自动把当前目录下的cscope.out文件的内容加载或通过命令“cs add cscope.out”添加。也可以在.vimrc文件中指定cscope.out文件的位置,但我忘了怎么写,懒得查了。

完成以上配置后,在Vim中可使用下列命令来方便地跳转:

ctrl + ]   //  跳转到变量、函数、类型所声明的位置

ctrl + t   //  跳转回来

gf         // 打开光标正对应的头文件

ctrl + o  // 从头文件返回

cs find c func_name  // 找到所有调用func_name函数的位置

ctrl + g  // 显示当前打开文件的路径

ctrl + ]  + g  // 从函数声明位置跳转到其实现的位置

发表评论

电子邮件地址不会被公开。