阅读大型代码,我们常常须要打开非常多的代码文件,搜索各种定义。windows下用惯了ide的朋友。转战Linux的时候可能会认为非常难受,找不到合适的阅读工具。
事实上万能的vim就能够实现。
以下介绍一下vim+ctags+taglist的配置。
安装ctags
ubuntu源提供了ctags的安装。
sudo apt-get install ctags
安装taglist
下载:
http://vim.sourceforge.net/scripts/download_script.php?src_id=6416
复制到ubuntu中。使用命令解压:
mkdir ~/.vim
unzip taglist_42.zip -d ~/.vim
解压后应该得到
cp ~/.vim/doc/taglist.txt /usr/share/vim/vim74/doc/
cp ~/.vim/plugin/taglist.vim /usr/share/vim/vim74/plugin/
然后启动vim,命令模式输入
:helptags /usr/share/vim/vim74/doc/
之后,我们就能够使用
:help taglist.txt
命令来查看taglist的帮助文档。
之后,改动
加入例如以下内容:
"""""""""Ctags"""""""""
set tags=tags
"""""""""taglist"""""""""
let Tlist_Auto_Open = 1
let Tlist_Sort_Type="name"
let Tlist_Exist_OnlyWindow =1
let Tlist_Ctags_Cmd = '/usr/bin/ctags'
let Tlist_Show_One_File = 1
let Tlist_Use_Lift_Window = 1
以后。你只须要在源代码文件夹顶层输入
ctags -R
生成tags文件,然后用vim打开你的C文件,就能够使用快捷键进行跳转了。
使用ctr 和两次w在側窗体和主窗体之间进行切换。
Ctrl + ] //跳入定义
Ctrl + T //调回
为ctags生成系统tags
如上之后,你会发现。ctags只支持源文件里定义的宏。变量和函数,可是我们调用的基本函数和系统函数都没办法实现跳转。
使用以下的命令生成系统头文件tags
ctags -I __THROW --file-scope=yes --langmap=c:+.h --languages=c,c++ --links=yes --c-kinds=+p --fields=+S -R -f ~/.vim/systags /usr/include /usr/local/include
最后,设置你的~/.vimrc,加入一行:
set tags+=~/.vim/systags
就能够享受系统库函数跳转等功能了。