问题标签 [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.
macos - Emacs 中的 gtags 非常慢
我在emacs中使用gnu global,一切正常,但是命令“gtags-find-tag”搜索速度太慢,无法忍受。只有这个命令很慢,其他像“gtags-find-rtag”我认为是正常的。我删除了 cedet 等其他配置,以排除这些影响,但这个问题仍然存在。我是否错过了全局或 emacs 的一些配置步骤?或其他平台(linux)中的任何人都有这个问题?
===
我的 Emacs 是 Mac OSX 的 emacs 版本是 24.3,GNU global 是 6.2.8,我的配置文件是
macos - 在 Mac OSX 中安装 GNU global 挂起
我正在尝试在 MacOSX 10.9 上安装 GNU Global,但安装时间太长。./configure 没问题,但 make 只是挂在 libtool 上。我已经等了一晚,但现在希望。我也尝试安装它
但没有使用。使用 brew 的安装在 make install 时挂起(看起来像是在运行 grep 命令时挂起)。
尝试通过 macport 安装
它像这样挂在Building libtool
任何人都请帮我解决这个问题。谢谢
git - 如何使 magit pull 默认具有 rebase 选项?
我最近开始在 emacs 中使用 magit 包,它非常有用和方便。我想做一些调整。
如何使 magit pull 始终具有变基选项?目前它显示开关,我必须选择 -r --rebase。在我的开发过程中,我们总是变基。
我使用 gtags+global 进行代码浏览。在 magit pull 之后,如果我能有一个钩子来再次重建 gtags,那就太好了。git pull 成功后是否有钩子?
c++ - 如何使用不在根目录中的文件构建 GNU 全局标签文件?
假设我有这样的目录结构:
我想在 vim 中使用 gtags 来查找对在 thesourcecode1
和sourcecode2
树中声明的函数的调用,调用来自这些树中的任何一个(例如,在中定义的函数~/sourcecode1/myproject/somefile.cpp
可能调用在中声明的函数~/sourcecode2/myproject/someotherfile.hpp
)。我不想标记除myproject文件夹之外的任何其他文件夹。
. 我如何构建我的标签文件来实现这一点?目前我只是在两个目录之一中运行 gtags,然后在查看另一个目录中的文件时使用 gtags 功能。
肯定有更好的办法!
另外,不确定这是否属于SU。
c++ - 使用 gtags 设置 emacs autcomplete
很长一段时间以来,我一直在努力让标签在自动完成模式下工作,而且我的尝试似乎是徒劳的。
我有两个问题:
- 如何判断自动完成模式是否适用于 gtags?
- 如何设置 gtags 以使用自动完成功能?(包括我需要在 emacs 之外完成所有设置的步骤。)
这是我的情况:
我有一个相对较大的代码库,我想用 gtags 对其进行索引,然后在我的自动完成中使用 gtags 来获取代码提示。源代码中有很多级别的目录,但它们都属于我生成 gtag 的根目录。
据我了解,如果我的一切设置正确,我应该能够输入几个字母,如果源位于 gtags 索引的目录中,则可以根据 gtags 自动完成。例如,如果我已将 gtags(通过gtags
从命令行调用)保存在根目录中,如下所示:
my_structs.h 的定义如下...
那么这意味着如果我在 some_code.cpp 中定义这个结构,自动完成可能会尝试在 .cpp 源中完成我的结构。这个对吗?换句话说,如果我定义testStruct mystruct = new testStruct();
了那么下次我调用类似“ mystruct->
”的东西时,自动完成对话框应该弹出结构的成员吗?
我的玩具 .emacs 文件具有以下基本自动完成设置(以及正确的加载路径)。它似乎能够从工作目录中识别和自动完成代码。但是,它似乎不知道源当前所在目录之外的任何内容。
我在互联网上看了很多,但我还没有真正找到任何解决方案。我看到了这篇文章,但解决方案只是说添加 ac-source-gtags。我想我需要更多的指导才能使事情正常进行,因为我对 elisp 不太熟悉。
emacs - 如何设置gtags的文件夹路径
我是 gtags 的新手,有一个问题。我有一个大项目,比如android AOSP,我想让gtags解析一些文件夹,我怎么用gtags来实现呢?我搜索并得到了解决方案:
- 将 -f 选项与 gtags 一起使用,似乎不支持文件夹
有什么好主意可以设置文件夹路径并且 gtags 只处理这些文件夹吗?
c++ - 如何使用 gtags -v 创建索引但跳过一些子目录
我正在尝试运行“gtags -v”来为我的大型代码库构建索引。来自此链接: Emacs 作为大型 C++ 项目的 IDE
我的问题是如何告诉 gtags 跳过进入某些目录(不需要顶级)“例如'out'、'.git'、'tools'?
谢谢你。
emacs - 保存时在 emacs 中更新单个文件的 gtag 文件
我的配置是从http://www.emacswiki.org/emacs/GnuGlobal#toc4复制的。目的是在我保存源文件后更新现有的标签文件。但是结果和预期的一样。
完整的配置是:
更新
我的理解是标签将通过命令更新
一旦缓冲区中的文件被保存。这意味着新添加或重命名或删除的功能将更新到标记文件。在我的测试中,我确实看到了输出消息(标签位于 ededemo 目录中):
每次函数在 cx cs 之后重命名或添加。但是 Mx gtags-find-tag 找不到我新添加的功能。理解有没有错误?
python - 几个vim标签插件的区别
我其实有两个问题。
首先,据我所知,有两个标签工具:
- 标签
- GNU Global 又名 gtags
如果我的日常工作集中在 Ruby、Rails、JavaScript 和 Python 上,我想知道哪个更合适。即,动态语言。我用谷歌搜索了一下,似乎 gtags 在某种程度上等同于 ctags + cscope?
其次,至于ctags,有一些vim插件:
- vim-tags:可以通过命令在 Vim 中生成标签文件
:TagsGenerate
。 - tagbar:一个著名的插件。它似乎可以即时生成标签。
- vim-easytags:看起来像 vim-tags,但具有更多功能。
我在想
- 这些插件之间有重叠吗?
- 如果有重叠,如何整合或如何选择使用哪一个?
我知道在一篇 SO 帖子中有两个问题不好,但我认为这两个问题高度相关,因为它们对于 Vim+Tags 组合至关重要。希望这个问题可以作为像我一样想要使用标签但不熟悉它的人的基础或教程。(我找不到 vim+ctags 的“现代”教程,互联网上的大多数帖子都是过时的 IMO)
谢谢。
更新:
基本上,我希望能够
- 跳转到某个函数的声明
- 跳转到某个函数的用法
使自动完成更智能。我的意思是,如果我有
然后我希望
m1
在我键入时显示自动补全obj = Obj.new; obj.
。据我所知,YouCompleteMe可以使用 ctags 的文件,但即使我按照说明进行设置,我也无法设置它。
老实说,我真的不知道 ctags 能做什么或能提供什么。因此,请随时提出更多有用的功能。谢谢!
vim - 使用给定的 gtags 根加载 gtags
我有一个带有文件名和行号的日志文件(比如 /home/logs)。我想在一个以 /x/projects/project12/ 为根的项目中查找文件。在 vim 中打开日志文件时如何使用 gtags 查找文件?一种笨拙的方法是将日志文件复制到项目目录中。
有没有更好的方法,比如在 vim 中打开日志文件时,我将 gtagsroot 设置为 /x/projects/project12/ 并且所有查找都发生在该项目中?
编辑:gtags 是由项目根目录中的 gtags 命令创建的。