问题标签 [exuberant-ctags]

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 投票
4 回答
26482 浏览

vim - 如何在 Vim 中导航多个 ctags 匹配项?

我正在使用Ctrl-]在 Vim 中使用 Ctags 进行导航。如果有多个匹配项,我如何导航到备用文件?

前任。something.publish在包含多次出现的代码库中publish

0 投票
1 回答
167 浏览

vim - 如何获得 ctags 以避免在行首索引空白?

在 Vim 中使用 exuberant ctags 时,我发现 ctags 会生成一个标签文件,该文件在每个标签定义的开头包含空格。结果,每当我跳转到一个标签时,它都会跳转到行首,而不是该行后面的标签位置。

有没有办法告诉 exuberant ctags 不要索引这个空白?

在此处输入图像描述

0 投票
1 回答
490 浏览

vim - 你可以根据文件类型动态设置vim快捷方式吗?

我有一个自定义的“转到定义”快捷方式,在 python 中效果很好(使用ropevim),但是当我在咖啡脚本文件中时,我需要使用正常的 ctags 查找来导航。根据当前缓冲区中打开的文件类型,是否可以只创建一个执行ropevim 查找或ctags 查找的快捷方式?

0 投票
3 回答
412 浏览

c++ - 如何使用 ctags 获取 C++ 类实例?

例如,我定义了一个这样的 C++ 类:

之后:

对于上面的示例代码,ctags可以告诉我继承、成员、方法、访问类型(公共、私有)等。

但是我怎样才能知道 kitty 是 cat 的一个实例呢?

0 投票
1 回答
131 浏览

vim - 在vim中,对virtualenv中的定义进行模糊搜索并创建import语句

所以我正在寻找一个 vim 插件,它将执行以下操作:

在执行时,打开当前使用的 virtualenv 中所有模块中定义的所有名称的列表,可能来自已经用 ctags 创建的标签文件。

让用户通过 FuzzyFinder 样式的控件限制列表,此外它应该匹配文件路径和定义。

因此,如果搜索字符串User返回一组结果

搜索字符串User;models会将其限制在第一行

当找到所需的定义时,将 name 插入当前缓冲区,并将相应的 import 语句添加到文件的顶部。

0 投票
1 回答
1312 浏览

vim - vim EasyTags,每个文件类型标签命令?

我将出色的EasyTags插件与 vim 一起使用。我唯一的问题是 Exuberant CTags 不支持 Haskell。但是,有几个程序可以正确生成 Haskell vim 标签文件,我已经在 EasyTags 中使用了 per file type tags file 选项。

有没有办法告诉 EasyTags 在每个文件类型的基础上使用不同的 ctags 程序?我可以编写一个包装脚本并将其设置为全局 ctags 程序,但更喜欢更清洁的解决方案。

我试过了

但是 EasyTags 似乎试图在 ctags 程序中查询支持的语言列表,因此当我打开启用此选项的 Haskell 文件时出现错误。

p>

0 投票
2 回答
1169 浏览

ctags - 我可以将范围信息添加到使用 `--regex- 生成的标签中吗?` 在旺盛的 ctags 中?

从技术上讲,我在 vim 中使用Tagbar来查看文件的标签,但是这个问题应该普遍适用于 exuberant ctags,v5.8。

假设我有以下 python 文件,调用它foo.py

让我们运行ctags它:ctags foo.py。生成的tags文件如下所示:

我感兴趣的是第二行的最后一个字段,class:foo. 这就是bar()函数的范围。如果我在 vim 中使用 tagbar,它会相应地将函数嵌套在类中。

现在假设我在我的~/.ctags. 事实上,我正在添加对这个 puppet 文件的支持:

假设我使用以下~/.ctags论点。'import' 正则表达式很丑陋(errr...对于正则表达式来说很丑陋),但对于这个例子来说它已经完成了足够的工作:

tags这会在我的文件中生成以下标签:

请注意,这两行都不包含范围信息。我的问题是:无论如何,我是否可以构建--regex-puppet论点或--regex-<LANG>一般行来收集有关标签范围的信息?也许声明符合标准 A 的标签总是将成为符合标准 B 的标签的范围父级?

man ctags建议没有明确的方法来添加任意范围信息,但我可能会忽略另一种解决方案(为了强调而略作删减):

0 投票
1 回答
675 浏览

macos - 在 OSX 中的 vim 内生成 ctags 标签不起作用

我在 OSX 中使用终端 vim 并且我已经通过自制软件安装了 ctags

然后我添加了/usr/local/bin/目录添加到我的 PATH

并且还别名 CTAGS 以使用自制软件安装的版本

所有这些都在我的 .zshrc 中,并且工作正常。

问题是当我尝试运行时:!ctags -R .在 VIM中运行时

它失败了,因为它无法识别选项“-R”

我跑了:!which ctags又回来了

取而代之的是/usr/local/bin/ctags

有什么办法可以解决这个问题吗?

更新

我添加了我的 zshrc 文件

0 投票
2 回答
921 浏览

windows - Windows 上的 .ctags 文件在哪里?

我正在尝试在我的 python 项目中使用 ctags,但遇到了 ctags 将导入行识别为定义的问题。我发现的建议是添加以下行:

--python-kinds=-iv

到我的 ~/.ctags 文件。但是,我在 Windows 机器上执行此操作,找不到 .ctags 文件的等效项。我试过查看我的 $HOME 目录以及我的 ctags 目录。我试图用谷歌搜索这个问题,但没有任何运气。

这是我需要自己创建的文件吗?如果是,我应该把它放在哪里?在与我正在创建的标签文件相同的目录中?

0 投票
1 回答
327 浏览

c - 带有 C 的旺盛 ctags 不能正确重定向到函数定义

我在一个旧项目中使用 ctags 和 C,主要是在 Vim 中编码。ctags 工作正常[重定向完美]

现在代码库发生了很大变化,我运行了命令: ctags -R,现在当我这样做时Ctrl + ],我不会像以前那样使用函数/宏定义,有时它会把我带到正确的行,但大多数时候它需要我到实际定义之上/之下的某些行。有人可以帮忙吗?