问题标签 [gnu-global]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
882 浏览

emacs - GNU Global 看不到变量

我试图在我的 Emacs 中使用 GNU Globals,发现它找不到函数定义。经过长时间的搜索,我最终发现 GNU Globals 本身对我来说有点坏了,它几乎没有索引任何东西!考虑一个例子:

最后我尝试 grep «myint» 并发现它甚至不存在于 GTAGS 中!唯一提到它的地方是 GSYMS 文件。当然,起初我尝试使用单独的«.hpp»文件使用相同的代码,它也没有工作。

更新:我发现可以同时使用 ctags 和 etags 创建全局标签。为此,需要发出export GTAGSLABEL=/usr/bin/etags (或发送至 ctags),然后gtags再次启动。该变量有效,通过添加错误路径很容易检查,因此gtags会说错误。所以,我用我的例子尝试了两个后端,但都没有工作。

0 投票
4 回答
3045 浏览

vim - Can gtags navigate back?

I use vim with gtags plug in to read code through multiple files. Everything is okay except that I donnot know how to navigate back to the previous position before I run :CtagsCursor to jump to the token definition. I read through the GNU global online docs, but find nothing useful. But in the chapter "3.4 Elvis using GLOBAL", it says "CTRL-T return to the most recent tag context.", which is exactly what I wants. No idea why the function is not implemented for vim, or something is wrong with me?

BR, Ruochen

0 投票
2 回答
839 浏览

vim - VIM:与 gtags 一起使用的自动完成插件

我刚刚为我的大型 C 项目从 ctags 转移到 gtags。但我找不到任何适用于 gtags 的 vim 自动完成插件。gtags 使用如此广泛,并且比 ctags 更有效。我确定我在这里遗漏了一些东西。必须有人将 gtags 与任何自动完成插件集成。

0 投票
1 回答
273 浏览

emacs - 分层 GTAGS 标记文件

一个班轮:我正在寻找一个“分层”标签文件设置,而如果在目录中global找不到它,那么它会爬上 dir 链,直到找到另一个。TAGSDBGTAGSDBPATH

长衬里:

我有这个项目文件结构

/vob/project-name/src/ ==> 项目src目录的ROOT

在此目录下有子目录,如 :./utils, ./common, ./iplib, ./ipv6lib,./subsystem1./subsystem2

我工作subsystem1

大标签文件是巨大的。

我有..

这些需要 40 分钟来构建。

我也有一个标签文件./subsystem1/sre

目前我有两个shell文件:

热门标签:

底部标签:

这样,我可以很少构建 TOP 项目文件,并且时不时地构建底部标签,因为那里有流失的地方。

另外,目前,当我(setq ggtags-update-on-save nil)每次写一个文件时都会产生三个不会死的进程。我收到一封严厉的电子邮件,要求系统管理员保持 150 个进程正常运行。

0 投票
0 回答
267 浏览

c++ - 使用 GNU Global 搜索类成员函数

如何使用 GNU Global 搜索类的成员函数?

例如,有两个类

如果我搜索 func,A::func 和 B::func 都会出现。如果我搜索“A::func”,则不会返回任何内容。

0 投票
0 回答
1709 浏览

ruby - 如何使用 Homebrew 安装具有通用 ctags 支持的 GNU Global?

根据 GNU Global文档

我需要安装GNU Global标志--with-universal-ctags=/usr/local/bin/ctags以支持通用 ctags。

GNU Global使用(根据此来源)完成正常安装

并且由于 brew 公式是形式的 ruby​​ 脚本(根据brew

我应该做

安装全局与通用 ctags 支持?

注意:全局的正常安装似乎有exuberant-ctags依赖

0 投票
1 回答
127 浏览

emacs - Universal Ctags 在用作 GNU 全局“后端”时是否会阻止参考查找?

https://stackoverflow.com/a/39905971/257924我读到:

再次注意,如果您使用 Ctags 作为 Gtags 的解析器,您将失去处理 Gtags 否则会提供的引用(例如,变量使用、函数调用)的能力。从本质上讲,您用 Gtags 的参考跟踪来换取 Ctags 更强大的内置语言支持。

这是一个旧答案,所以现在,在 2019 年,使用 GNU Global 6.6.3 并使用--with-universal-ctags.

0 投票
0 回答
100 浏览

c++ - 如何在 GNU Global gtags.conf 文件中指定环境变量

https://stackoverflow.com/a/26725652/257924指定了一个有用的环境变量,调用该变量GTAGSFORCECPP以强制.h将文件视为 C++(否则,C++ 类定义不会作为符号添加到标签数据库中)。理想情况下,我不必在我的启动脚本中设置那个 env var,而是让它以某种方式表达到一个位于中心的 gtags.conf 中,可以与网络中的其他开发人员共享。gtags 手册(特别是本节)的措辞使我相信这是可能的:

但是,我不确定在哪里表达它。例如,像这样添加它会导致解析错误,所以这是不正确的:

我真正想要的是强制所有.h文件都被视为 C++,所以可能有更好的方法来解决它。

0 投票
0 回答
32 浏览

c - Makefile 有标签工具吗?(如 c/c++ 源文件的 ctags/gtags)

我安装了 GNU Global(Gtags) 并在 VScode 中运行它(带有 gnu 全局扩展名)。但它不能显示 Makefile 中定义的符号。实际上,Gtags 可以为 c/c++ 源文件创建符号数据库,但不能为 makefile 创建符号数据库。我的问题是:是否有其他工具可以帮助为 makefile 创建标签?

gnu global(gtags) 显示c源文件中的符号

gnu global(gtags) 不显示makefile中的符号

此外,我不认为 ctags 是这个问题的答案。我为我的项目成功安装了 ctags 并创建了标签,但是当我试图找到符号的定义时它并没有很好地工作