Windows和gvim中的多个选项卡

时间:2008-09-15 22:09:40

标签: windows vim tabs

我正在尝试使用Edit with Vim上下文菜单在先前打开的Gvim实例的新选项卡中打开文件(如果有的话)。

目前,使用Regedit我修改了此密钥:

\HKEY-LOCAL-MACHINE\SOFTWARE\Vim\Gvim\path = "C:\Programs\Vim\vim72\gvim.exe" -p --remote-tab-silent "%*"

注册表项类型为REG_SZ

这几乎可以正常工作......目前它在新标签页中打开文件,但它还会打开另一个标签页(活动标签页),标签标记为\W\S\--literal,文件似乎正在尝试打开以下文件。

C:\Windows\System32\--literal

我认为问题出在"%*"附近 - 我尝试将其更改为"%1"但如果我这样做,我会得到一个名为%1的额外标签。

受影响的版本

  • Vim版本7.2(7.1上的相同行为)
  • Windows vista home premium

感谢您的帮助。

大卫。

5 个答案:

答案 0 :(得分:8)

尝试将其设置为:“C:\ Programs \ Vim \ vim72 \ gvim.exe”-p --remote-tab-silent“%1”“%*”

请参阅:http://www.vim.org/tips/tip.php?tip_id=1314

编辑:正如托马斯所指出的那样,vim.org的提示转移到:http://vim.wikia.com/

请参阅:http://vim.wikia.com/wiki/Add_open-in-tabs_context_menu_for_Windows

答案 1 :(得分:2)

我找到了答案......奶油的链接给了我一些额外的搜索区域。

来自http://genotrance.wordpress.com/2008/02/04/my-vim-customization/,有一个包含以下内容的vim.reg注册表文件

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Edit with Vim]
@=""

[HKEY_CLASSES_ROOT\*\shell\Edit with Vim\command]
@="\"C:\\Programs\\vim\\vim72\\gvim.exe\" -p --remote-tab-silent \"%1\" \"%*\""

[HKEY_CLASSES_ROOT\Applications\gvim.exe\shell\open\command]
@="\"C:\\Programs\\vim\\vim72\\gvim.exe\" -p --remote-tab-silent \"%1\" \"%*\""

这给了我想要的行为。

所以我猜我编辑HKEY_LOCAL_MACHINE的原始计划是错误的。

也很高兴知道“%1”和“%*”究竟是什么/指的是什么。

现在......我应该编辑我的原始问题,以表明我是在错误的注册表区域开始的吗?

答案 2 :(得分:2)

你走在正确的轨道上:

HKEY-LOCAL-MACHINE\SOFTWARE\Vim\Gvim\path = "C:\Programs\Vim \vim72\gvim.exe" -p

足够......它有效!!

答案 3 :(得分:1)

我建议您尝试Cream

Cream是一组位于gVim之上的脚本和附加组件。奶油不会改变gVim的外观,但确实改变了它的行为方式。

其中一种行为是标签式文档界面。列出了其他行为here。下载页面为here

答案 4 :(得分:0)

使用_vimrc进行更清晰的修复。添加以下行:
autocmd BufReadPost * tab ball
来自http://www.vim.org/scripts/script.php?script_id=1720