Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用rails.vim,为什么不';当活动缓冲区为空或不是';是rails项目的一部分吗?_Ruby On Rails_Ruby_Vim - Fatal编程技术网

Ruby on rails 使用rails.vim,为什么不';当活动缓冲区为空或不是';是rails项目的一部分吗?

Ruby on rails 使用rails.vim,为什么不';当活动缓冲区为空或不是';是rails项目的一部分吗?,ruby-on-rails,ruby,vim,Ruby On Rails,Ruby,Vim,如果我没有打开正在处理的rails项目中的文件,我就不能使用任何rails.vim命令,例如:Rcontroller,:Rmodel,:Rview(我得到的错误是:不是编辑器命令) 此外,如果在没有打开rails文件的情况下尝试使用:Rconfig或:Rroutes,则会出现错误:不是编辑器命令::Rfind application.yml 我正在使用一个预加工vim配置,所以我猜我需要找出其中的一个问题?或者这就是rails.vim的工作方式?简单的回答是这就是rails.vim的工作方式 r

如果我没有打开正在处理的rails项目中的文件,我就不能使用任何rails.vim命令,例如
:Rcontroller
:Rmodel
:Rview
(我得到的错误是:不是编辑器命令)

此外,如果在没有打开rails文件的情况下尝试使用
:Rconfig
:Rroutes
,则会出现错误:不是编辑器命令::Rfind application.yml


我正在使用一个预加工vim配置,所以我猜我需要找出其中的一个问题?或者这就是rails.vim的工作方式?

简单的回答是这就是rails.vim的工作方式

rails.vim
尝试使用当前缓冲区的路径检测rails项目。一般来说,这是有意义的,因为rails.vim提供的许多命令都是特定于当前文件的。此外,在同一个Vim会话中打开来自多个Rails项目的文件也是非常可能的,因此即使是只引用整个项目的命令也需要绑定到当前上下文

如果在新的缓冲区中,通过返回到
getcwd()
并检测到当前工作目录是Rails应用程序,可以使用您描述的项目级命令,那就太好了。但是粗略地检查一下源代码,我认为需要对插件进行一些重大的重组


我编写了一个名为的插件,它使用
NERDTree
打开一个项目,并将
自述文件作为默认视图进行投影。这样做的好处之一是,通过默认打开文件,您可以立即使用任何Rails命令。

如何使用此插件?它没有文档,默认情况下不会在空缓冲区中添加Rails.vim中的命令。是的,这个插件是如何工作的?我添加了
~/.vim/plugins/open.vim
,我的项目仍然只是以NERDTree视图打开(没有自述文件)。