在rails.vim中为什么我得到"E345无法在路径中找到文件"错误?

JnB*_*ymn 7 vim ruby-on-rails rails.vim

我一直在用vim学习Ruby/Rails.Tim Pope的rails.vim似乎是一个非常好的工具来遍历文件,但我不断得到这些讨厌的"E345无法在路径中找到文件"错误.我还不是vim专家,所以解决方案并不明显.另外,我试过这个并不适用于我的问题.

作为问题的一个例子.我在app/helpers/application_helper.rb中定义了一个方法format_name,它在app/helpers/messages_helper.rb中使用.在后一个文件中,我把光标放在format_name的用法上,然后点击gf,我得到了那个错误.与f和[f]等命令类似的失效

但是,它有时会起作用.我能够从userapp/models/user.rb 获取gf

想法?

Chr*_*sen 1

我认为这是 的限制rails.vim。它不支持 \xe2\x80\x9cfinding\xe2\x80\x9d 裸方法。支持类似的东西需要以下之一:

\n\n
    \n
  • 对每个 \xe2\x80\x9cfind\xe2\x80\x9d 请求的所有源文件进行详尽的搜索
    \n(对于大型项目来说可能会很昂贵),
  • \n
  • \xe2\x80\x9cdumb\xe2\x80\x9d 方法名称索引
    \n(例如 Exuberant Ctags 和gControl- ];参见:help g_CTRL-]),或者
  • \n
  • 足够智能的代​​码解析可以很好地猜测该方法可能在
    哪里定义(这很难正确完成)。
  • \n
\n\n

如果您知道方法在哪里,则可以使用方法名称扩展许多导航命令:

\n\n
:Rhelper application#format_name\n
Run Code Online (Sandbox Code Playgroud)\n\n

但是,您不必输入所有内容。假设光标处于打开状态,format_name您可能只需输入:RhTabspaceappTab#Control- R Control- W(请参阅:help c_CTRL-R_CTRL-W)。

\n