博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Env:ctags和Taglist安装与配置
阅读量:5174 次
发布时间:2019-06-13

本文共 2690 字,大约阅读时间需要 8 分钟。

注:文章参照http://blog.csdn.net/vaqeteart/article/details/4146618


 

想必用过Source Insight的人都记得这样一个功能:

  • SI能够把当前文件中的宏、全局变量、函数等tag显示在Symbol窗口,用鼠标点上述tag,就跳到该tag定义的位置;
  • 可以按字母序、该tag所属的类或scope,以及该tag在文件中出现的位置进行排序;
  • 如果切换到另外一个文件,Symbol窗口更新显示这个文件中的tag。

在VIM中的taglist插件所实现的就是上述类似的功能,有些功能比SI弱,有些功能比SI更强。而且,taglist插件仍在不断完善中!

:安装完ctags和Taglist可以不在源码目录下生成tags文件夹,而是只是利用ctags的目录提取功能,配合cscope来进行源码阅读。

一. ctags

1. 安装

sudo apt-get install ctags

2. 配置

在源码目录下执行ctags -R *,会在源码目录下生成一个tags文件夹

在vimrc中添加set tags=/code_source/tags即可

3. 使用

  • Ctrl + ] 是跳转函数
  • Ctrl + o 调回
  • Ctrl + t 返回
  • gd 转向局部变量定义处,并高亮显示
  • *转向当前光标指向的单词下一次出现的地方
  • #转向当前光标指向的单词上一次出现的地方
  • :ts        (ts 助记字:tags list, “:”开头的命令为VI中命令行模式命令

二. Taglist

1. 安装

  • 首先,到下载最新版本的taglist plugin,目前版本是4.6(20130227)
  • 下载后,把该文件在~/.vim/目录中解压缩,这会在你的~/.vim/plugin和~/.vim/doc目录中各放入一个文件
    • plugin/taglist.vim – taglist插件
    • doc/taglist.txt    - taglist帮助文件
  • windows用户需要把这个插件解压在你的$VIM/vimfiles或$HOME/vimfiles目录

2. 配置

在vimrc中添加如下代码(推荐):

1    """""""""""""""""""""""""""""" 2    " Tag list (ctags) 3    """""""""""""""""""""""""""""" 4    if MySys() == "windows"                "设定windows系统中ctags程序的位置 5      let Tlist_Ctags_Cmd = 'ctags' 6    elseif MySys() == "linux"              "设定windows系统中ctags程序的位置 7      let Tlist_Ctags_Cmd = '/usr/bin/ctags' 8    endif 9    let Tlist_Show_One_File = 1            "不同时显示多个文件的tag,只显示当前文件的10    let Tlist_Exit_OnlyWindow = 1          "如果taglist窗口是最后一个窗口,则退出vim11    let Tlist_Use_Left_Window = 1         "在右侧窗口中显示taglist窗口

3. 使用

在taglist窗口中,可以使用下面的快捷键

1 
跳到光标下tag所定义的位置,用鼠标双击此tag功能也一样 2 o 在一个新打开的窗口中显示光标下tag 3
显示光标下tag的原型定义 4 u 更新taglist窗口中的tag 5 s 更改排序方式,在按名字排序和按出现顺序排序间切换 6 x taglist窗口放大和缩小,方便查看较长的tag 7 + 打开一个折叠,同zo 8 - 将tag折叠起来,同zc 9 * 打开所有的折叠,同zR10 = 将所有tag折叠起来,同zM11 [[ 跳到前一个文件12 ]] 跳到后一个文件13 q 关闭taglist窗口14
显示帮助

 

总结

ctags+Taglist配置

1 ".............................ctags+taglist....................................... 2 "默认打开Taglist  3  4 let Tlist_Auto_Open=1  5  6 let Tlist_Ctags_Cmd = '/usr/bin/ctags'  7  8 let Tlist_Show_One_File = 1 "不同时显示多个文件的tag,只显示当前文件的  9 10 let Tlist_Exit_OnlyWindow = 1 "如果taglist窗口是最后一个窗口,则退出vim 11 12 let Tlist_Use_Right_Window = 0 "在右侧窗口中显示taglist窗口13 14 " minibufexpl插件的一般设置15 16 let g:miniBufExplMapWindowNavVim = 117 18 let g:miniBufExplMapWindowNavArrows = 119 20 let g:miniBufExplMapCTabSwitchBufs = 121 22 let g:miniBufExplModSelTarget = 1

 

Update:

1. Taglist窗口快捷键

nnoremap <silent> <F4> :TlistToggle<CR>

注意:首先是vimrc中快捷键不要有重复,其次注意<F4>后面的空格。具体用法可参考doc/taglist.txt说明文档

转载于:https://www.cnblogs.com/aaronLinux/p/5469230.html

你可能感兴趣的文章
Find Backpacker Jobs in Australia
查看>>
面试题:return和finally执行
查看>>
Heroku第三方服务接入指南(二)
查看>>
MSRA专访摘要
查看>>
团队作业4
查看>>
随手一写,简单的四则运算练习
查看>>
第四次团队作业--选题
查看>>
记录专用
查看>>
一句实现jquery导航栏
查看>>
从零开始学 Web 之 Ajax(五)同步异步请求,数据格式
查看>>
场景分析:用户登录界面场景分析
查看>>
条形码生成包 BarCodeToHTML.cs(以颜色为背景的完整版)(下载的完整版)
查看>>
数据库事务的四大特性以及事务的隔离级别
查看>>
电脑屏幕保护眼睛
查看>>
有用的东西
查看>>
如何开启VMware串口
查看>>
数据库
查看>>
常见Struts、Hibernate、Spring、J2EE、ibatis、Oracle等开发框架架构图及其简介
查看>>
Java为何大行其道
查看>>
CFileDialog的使用方法简单介绍
查看>>