2012-04-16 64 views
0

我在linux上使用etags与vim进行源码(* .c,* .h)代码浏览。我创建了一个标签文件府下达命令:.vimrc TAGS命令错误

etags --members *.c *.h 

标签文件被创建,但是当我开始浏览说哪个在其功能的一个定义和使用C结构变量命名1.C源文件中的一个定义(结构名称是其他1.h文件中的typedef)。我在vim中打开文件1.c,然后通过将光标放在该结构类型上做CTRL - ],etags不会浏览到具有此结构声明的头文件1.h。

这仅当我有以下我的vimrc线,当我在下面两行评情况,ETag的基于源的浏览工作正常。

set TAGS=./TAGS;$HOME 
set tags=./tags;$HOME 

我想告诉vim在哪里找到标签文件。从当前文件夹开始直到我的家庭目录。这里有什么不正确?

以上命令的正确语法是什么?

此外,ctags/etags与vim浏览,显示从哪里调用一个给定的函数? 如果是,那么看到的命令是什么?

回答

1
  • 定位标签文件

    Vim的设置是区分大小写,因此set TAGS=是无效的。您必须使用小写字母set tags=

    Vim会在第一场比赛停止,所以你真的不能指望它在tagsTAGS搜索标签。这些文件可以被搜索依次用:

    set tags=./tags,./TAGS;$HOME " 1. tags, 2. TAGS, 3.… until $HOME 
    

    此外,搜索不被etags进行的,它是由Vim的本身完成。

  • 跳转到函数调用

    没有,ctagsetags只指数声明。要跳到使用你需要cscope