vim 解决tags递归查询问题
今天在vim下配置了两个插件,分别是exuberant-ctags 跟cscope。这两个插件主要是用来实现类、方法查询跟跳转。至于它们如何安装跟使用,网上教程一大堆,我也是按着别的大神教程一步步来的。这里我主要是记录下关于tags标签查询的问题。
我们知道,以上的两个插件的工作,主要依赖的就是tags这个标签文件(当然他们各自有自己的标签文件),这个文件是我们手动生成的,而且往往是在我们的根目录下,如果我们不做处理,会发现,我们离开这个目录以后,这两个插件就没法工作了。而我们又不可能在一个目录的每一个子目录都生成这样一个文件,所以我参照了网上的方法,实现tags文件递归查询使用。也就是说,如果当前目录下没有可用的tags文件,他会往上级跟下级目录查询有没有可用的tags。具体方法如下
以下内容参考
http://www.cnblogs.com/pangchol/p/3455662.html
1.我们可以在.vimrc中配置如下内容,实现exuberant-ctgs 递归查询
#set autochdir
set tags=./tags,./../tags,./../../tags,./../../../tags,./../../../../tags,./../../../../../tags,./../../../../../../tags,./../../../../../../../tags,./../../../../../../../../tags,./../../../../../../../../../tags,./../../../../../../../../../../tags,./../../../../../../../../../../../tags,./../../../../../../../../../../../../tags,./../../../../../../../../../../../../../tags,./../../../../../../../../../../../../../../tags,./*/tags
上面两条命令,第一条,网上说的是能够自动往子目录里查询,不过,我加了这条语句以后,当跳转到某个方法调用的地方的时候,提示那个java类不存在,所以我把这句注释掉了。直接用第二条命令就行了
第二条命令,就是说设置tags取值,上面那一大串,就是说如果第一个逗号之前的内容没找到,就会往上找,依次网上找,一个逗号代表一层目录;最后一条才是往所有子目录下找
增加了这两条命令以后,我们的tags文件,无论是在子目录,还是父目录,都可以使用exuberant-ctags了。
2.同样的,cscope也是存在这个ctags查询问题。它处理的方式,我是参照参考内容,直接使用的插件
插件下载地址
http://www.vim.org/scripts/script.php?script_id=157
这个插件其实就是一个.vim文件,我们只需要把这个.vim文件拷贝到.vim/plugin下就行了
vim 解决tags递归查询问题的更多相关文章
- vim之tags
好长时间没有上来更新了, 今天趁老板不再上来休闲一下. 本章要说的是和vim的tags相关的内容. 之所以在跳转之后就说明tags是因为这个功能相当的重要和实用. 好的东西自然是需要提前分享的. 首先 ...
- vim 的 tags 模块 与 ctags
1. 概述 一般来说,在代码中跳转,离不开 ctags. 实际上,vim 中代码跳转是由 vim tags 模块完成的,tags 模块依赖于 tags 文件. ctags(Generate tag f ...
- [转]Git for windows 下vim解决中文乱码的有关问题
Git for windows 下vim解决中文乱码的问题 原文链接:Git for windows 下vim解决中文乱码的有关问题 1.右键打开Git bash: 2.cd ~ 3.vim .vim ...
- VIM 解决中文乱码
$ vim ~/.vimrc 加入以下内容 set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936 set termencoding=utf- ...
- vim解决中文显示乱码问题
命令:vim ~/.vimrc 写入如下: set enc=utf-8 set fileencoding=utf-8 set fileencodings=ucs-bom,utf8,prc set gu ...
- Linux安装vim,解决vim: command not found
1,输入rpm -qa|grep vim 命令, 如果 vim 已经正确安裝,会返回下面的三行代码: root@server1 [~]# rpm -qa|grep vim vim-enhanced-7 ...
- vim之<F12> 一键生成tags的一些小优化
在之前我写的<<vim之tags>>中最后提到将vim和tags成和更新的全部集中到一个<f12>键上来. 这在实践中证明是相当方便的, 不过依然村庄几个问题如下: ...
- [vim]vim 在win下乱码解决
vim在win下遇到汉字乱码早就知晓,本以为通过如下设置即可解决乱码问题 set encoding=utf-8 set fileencoding=utf-8,chinese 这样设置是可以解决源码文件 ...
- 解决 vim 乱码
打开vim安装目录下的_vimrc,在头部加上几句配置语句就能搞定: //设置默认编码 set encoding=utf-8 set fileencodings=utf-8,chinese,latin ...
随机推荐
- django session深入
转至原文 https://www.cnblogs.com/zhaof/p/6281468.html 基于cookie做用户验证时:敏感信息不适合放在cookie中 session依赖cookie s ...
- 关于nth-of-type和nth-child的关系
一开始写样式的时候喜欢全部元素都来个class,后面发现这样一个页面下来很多个class,起名字起到发慌,然后老师说该多用 逻辑关系来写样式,就是这种第几个孩子啊这种,不知道你们有没有这种烦恼,要用的 ...
- Auto-Publishing and Monitoring APIs With Spring Boot--转
原文地址:https://dzone.com/articles/auto-publishing-amp-monitoring-apis-with-spring-bo If you are headin ...
- atom玩法
1.先用 git 下载一个 react-devtools: $ cd /some-directory$ git clone --recursive https://github.com/faceboo ...
- <Sicily>Catch the thief
一.题目描述 A thief has robbed a bank in city 1 and he wants to go to city N. The police know that the th ...
- UI Framework-1: Aura Gesture Recognizer
Gesture Recognizer Gesture Recognizer Overview This document describes the process by which Touch Ev ...
- DELL T430进RAID的方式:, 硬盘损坏后的处理方式
**DELL T430 新机安装2块硬盘后进RAID的方式: ** 一. BIOS更改 1.改启动方式为RAID mode : 开机按F2进入BIOS 界面 --->System BIOS - ...
- [BJOI2014]大融合 LCT维护子树信息
Code: #include <cstdio> #include <algorithm> #include <cstring> #include <strin ...
- js实现观察者模式风格替换
如下图,我们看到两种风格:在选择男士时,页面颜色为黑色:在选择女士时,页面颜色为粉红色. 主要可以分为两类: 下拉框 ---> 被观察者 div ---> 观察者 面向过程实现风格替换: ...
- CSS动画框架Loaders.css +animate.css
CSS加载动画框架Loaders.css 是一款非常出色的加载动画框架,Loaders.css利用纯CSS可以实现很多种样式的Loading加载动画,这些动画并不需要图片来辅助,而是仅仅需要CSS即可 ...