【问题标题】:How to load plugins in the new tab in mac vim?如何在 mac vim 的新选项卡中加载插件?
【发布时间】:2012-03-29 01:54:44
【问题描述】:

我正在使用 macvim 编写 rails 项目。

我使用了一些特定于 rails 的插件(如 vim-rails),并且只会加载到 rails 的 app 文件夹中。

进入rails的文件夹后,我运行mvim,一切正常。

但是,当我使用 command + T 打开一个新标签时。那些插件的功能被禁用了..似乎它们没有加载..

当我打开一个新标签时如何加载它们?

【问题讨论】:

  • 您有类似nnoremap <D-t> :tabnew<CR> 的映射,但没有类似的终端仿真器快捷方式?因为如果我在我的 yakuake 中按 <C-t>,我将打开一个新的 yakuake 选项卡,而不是 vim 选项卡,因为 yakuake 的配置方式。我不知道仅在新选项卡中禁用插件功能的单一方法,尽管某些插件(如逃犯)创建缓冲区本地命令并要求您打开相关文件(在逃犯的情况下 - git控制下的文件)。
  • 所以,请准确描述一下从启动 vim 开始你做了什么。不是“我运行 mvim 一切正常”,而是“我运行 mvim railsfile.rb 然后输入 :SomeAddonCommand<CR> 并且它做了一些事情。然后我按<D-t>,它会显示一个新选项卡,其中包含(空缓冲区、当前文件、shell 提示符等)并运行:SomeAddonCommand<CR> 打印E492: Not a editor command 错误”。
  • YyX,他正在使用 MacVim,他的问题与终端仿真器无关。但我同意您提供更多信息的请求。
  • @Zyx,当我打开 RoR 文件夹中的文件时,例如“mvim index.html”,一些与 Rails 相关的插件会自动加载,例如“vim-rails”。我可以运行命令':Rcontroller'..但是当我按 创建一个新选项卡时。我无法在该选项卡中运行“:Rcontroller”。但是当我检查 :pwd 时,它显示我在正确的目录中,说 RoR 目录与第一个选项卡相同。
  • @romainl。检查我上面的评论

标签: ruby-on-rails macos vim macvim


【解决方案1】:

如果这些插件使用的代码与逃犯使用的代码相似,那么就放类似

augroup LaunchFugitiveForAllBuffers
    autocmd!
    autocmd BufNew :doautocmd fugitive BufRead .
augroup END

(将 fugitive 替换为实际事件组名称 [1])。您可以通过为BufRead 查找插件文件(注意:大小写并不重要)或像我一样遍历au BufRead 的输出(不应该有很多项目)来找到此名称。请注意,事情可能更复杂:例如,您的插件附加到 Filetype 事件并将上述更改为 doautocmd fugitive Filetype ruby 可能无济于事。另请注意,您可以完全清除单词fugitive,只留下一个空格,但它具有潜在的破坏性操作,只能用于测试(在Filetype 事件和其他一些事件的情况下可能非常具有破坏性)。

[1] 注意:事件组,而不是插件名称。这些组的名称很可能是插件名称的派生名称,但它们并不强制等于它。

更新:您似乎需要 railsPluginDetect 群组来获取 Tim Pope 的 rails plugin。我没有任何 Rails 项目,所以我不能肯定地说,但自动命令看起来非常类似于逃犯。最好去plugin bug tracker 并在那里添加一个请求(不要忘记搜索现有的)。

【讨论】:

    【解决方案2】:

    可能需要其他信息,但我认为这是因为新选项卡创建了一个空的虚拟缓冲区。

    因为你的 RoR 相关插件只在 Rails 文件夹中工作,而你不在 Rails 文件夹中——你可能在 ~ 中,检查 :pwd 以了解工作目录是什么——那些插件不没用。

    【讨论】:

    • 我检查了:pwd,目录在同一个文件夹中,比如 Rails 文件夹。但是插件不起作用。
    • 当你写一些代码和:saveas newfile.rb时会发生什么?
    • 在rails文件夹中创建了一个新文件..我想也许我需要手动加载插件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-08
    相关资源
    最近更新 更多