当类定义为“class Gem::SystemExitException”时,ctags 不起作用

发布于 2024-08-27 19:59:59 字数 655 浏览 4 评论 0原文

您可以在这样的命名空间中定义一个类

class Gem
  class SystemExitException
  end
end

,或者

class Gem::SystemExitException
end

当代码使用类定义的第一种方法时,ctags 会像这样索引类定义:

SystemExitException     test_class.rb   /^  class SystemExitException$/;"      c       class:Gem

对于第二种方式,ctags 会像这样索引它:

Gem      rubygems/exceptions.rb  /^class Gem::SystemExitException < SystemExit$/;"       c

第二种方式的问题是您可以' t 将光标(在 vim 中)放在对“Gem::SystemExitException”的引用上,然后直接跳转到类定义。您唯一的办法是翻阅所有以“Gem::”开头的(110!)类定义,然后找到您要查找的类定义。

有谁知道解决方法?也许我应该向 ctags 的维护者报告这个问题?

You can define a class in a namespace like this

class Gem
  class SystemExitException
  end
end

or

class Gem::SystemExitException
end

When code uses first method of class definition, ctags indexes the class definition like this:

SystemExitException     test_class.rb   /^  class SystemExitException$/;"      c       class:Gem

With the second way, ctags indexes it like this:

Gem      rubygems/exceptions.rb  /^class Gem::SystemExitException < SystemExit$/;"       c

The problem with the second way is that you can't put your cursor (in vim) over a reference to "Gem::SystemExitException" and have that jump straight to the class definition. Your only recourse is to page through all the (110!) class definitions that start with "Gem::" and find the one you're looking for.

Does anyone know of a workaround? Maybe I should report this to the maintainer of ctags?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

倒带 2024-09-03 19:59:59

该选项为 --extra=+q,但 ctags 仅支持 C++、Java 和 Eiffel。

http://ctags.sourceforge.net/faq.html#7

所以是的,您必须请求为 Ruby 扩展 +q 模式。

The option would be --extra=+q, but ctags only supports it for C++, Java, and Eiffel.

http://ctags.sourceforge.net/faq.html#7

So yes, you would have to request that the +q mode be extended for Ruby.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文