我从我的顶级 Ruby on Rails 目录运行了以下命令。
find . -name "*.rb" | etags -
然后在 Emacs 中我访问了该标记文件。这可以很好地找到一些方法和大多数文件,但是它无法找到我在帮助程序目录中使用的某些额外方法/类。
例如,我的帮助器目录中有一个名为的文件,my_foo_helper.rb
如果我搜索我的标签以查找该文件,它会找到它。但是,如果我尝试查找该模块中某个方法的标签,它根本找不到它。
如果我使用阿普塔纳或者类似的东西似乎能够定位这些方法。
我该如何解决这个问题?
答案1
答案2
我使用了许多针对 vim 的 ruby/rails 特定插件。
作为 emacs 的庞然大物,我推测应该有类似的情况。我使用的插件实际上处理代码(而不是 grep 代码),使其更好地了解这种动态语言,这使我的编辑器能够更好地找出我正在寻找的内容。
答案3
etags 仍然不能很好地处理 ruby。但在 OSX 上有一个简单的解决方案,请参阅:http://www.murphybytes.com/2012/06/28/etags-for-ruby-in-emacs-on-a-mac/
答案4
它应该可以与 Emacs 25.1(将于今年晚些时候发布)配合使用etags
。预发布版本现已可用。
如果您仍然遇到问题,请提交错误并附M-x report-emacs-bug
上具体的(但可能是虚构的)代码示例。