我想尝试编写一些简单的VIM插件.我想到的是涉及采用当前的视觉选择,处理该字符串然后用结果替换选择.后来我想尝试扩展它来处理文本对象和范围.
具体来说,我想知道如何:
我正在为Rails创建一个引擎作为插件.我希望能够在加载Rails的配置时对其进行必要的更改,以便它可以指定其Gem依赖关系以及添加一些加载路径.
插件的init.rb文件可以访问配置对象,但这实际上是只读的,您可以指定一个gem,但它没有区别,初始化程序必须已经在此时运行.
我现在已经解决了这个问题,需要一个带有新Rails :: Initializer块的文件,如下所示:
Rails::Initializer.run do |config|
config.gem "authlogic", :version => ">= 2.0.9"
# etc
end
Run Code Online (Sandbox Code Playgroud)
这可以工作,但会清除主应用程序环境中的任何现有配置.rb.
也许我可以通过在引擎中添加一个生成器来解决这个问题,这个生成器向environment.rb添加一些东西,它在正确的阶段加载插件的配置,或者可能有一种方法可以为配置/初始化程序添加一个文件来完成这项工作.不知道如何最好地解决这个问题.