0

现在我有两个目录,所有头文件 *.h 都包含在目录 /inc 中,而所有 c 文件 *.c 都存储在 /src 目录中。

目录就像这样,(/project 是上一级目录):

/project-- |----/inc
           |----/src

我想使用ctrl+]在 example.c 等源文件中定位一个参数或一个函数的定义。如何生成这些标签?

我的方法是:

(1) cd to the /project directory

(2) ctags inc/*.h src/*.c

然后在那里生成一个标签文件,但是,当我打开一个示例文件并使用“Ctrl+]”时,它无法引导我找到它的定义。为什么???

我需要在/src下生成标签文件吗???

有什么帮助吗?非常感谢!

4

2 回答 2

2

转到 /project,并使用命令“ctags -R”。在您的 .vimrc 中,输入命令“set tags=/project/tags”。退出 vim 并再次输入。标签现在应该可以工作了。

于 2009-12-01T14:05:47.403 回答
2

在 vim 中,尝试输入:

  1. :pwd
  2. :set tags

验证标签文件的路径是否存在于 2 的输出中,相对于 1 的输出路径。

注意:您可以将tags变量设置为本地.vimrc.

更新:通常设置tagstags,../tags,../../tags. 使用这种模式,vim 将使用它找到您的文件夹结构的第一个标签文件(同样相对于您的pwd.

于 2009-12-01T14:07:19.070 回答