在Vim 7.3中使用Ruby OmniComplete的问题在一行找到匹配但在2行找不到匹配

Pat*_*und 5 ruby vim ruby-on-rails omnicomplete

我试图弄清楚为什么ruby omnicompl只对我有用.

Omnicomplete工作 在这里,它按预期工作.

尝试在相同的ivar 2线上进行相同的操作 但是当我在相同的ivar 2线上尝试同样的事情时,我得到"Pattern not found"

两者都以相同的方式完成,输入@ current_user_session.fi Ctrl+ X+O

我检查了tpopes rails.vim github页面的开放/已关闭问题,并尝试谷歌它没有运气.

我的macvim和vim是用+ ruby​​编译的

:echo &omnifunc 回报 rubycomplete#Complete

:Rails! 回报 rails.vim 4.3 (Rails-controller)

在github上完整的vimdir供参考.

Tom*_*ing 1

人们会想象这是因为在 img2 中它现在低于变量的设置(@current_user_session = UserSession.find)。

这意味着,由于 this 现在是一个实例,因此它正在寻找实例方法,而在它之前返回的是类方法。

例如

User.find # => fine


user = User.find
user.find # => Method not found
Run Code Online (Sandbox Code Playgroud)

要演示差异,请运行以下命令:

User.methods.sort
User.find.methods.sort
Run Code Online (Sandbox Code Playgroud)

你会发现它完全不同。坦率地说,您正在尝试查找您拥有的用户的“查找”。“'tom'.find”没有任何意义。