关于vim:Windows和gvim中的多个选项卡

关于vim:Windows和gvim中的多个选项卡

Multiple tabs in Windows and gvim

我试图获取Edit with Vim上下文菜单以在以前打开的Gvim实例的新选项卡中打开文件(如果有)。

当前,我使用Regedit修改了此键:

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

注册表项类型为REG_SZ

几乎可以正常工作...当前,它在新标签页中打开文件,但同时也打开了另一个标签页(即活动标签页),该标签页标记为\W\S\--literal,并且该文件似乎正在尝试打开以下文件。

1
C:\Windows\System32\--literal

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

受影响的版本

  • Vim 7.2版(7.1上的行为相同)
  • Windows Vista Home Premium

谢谢你的帮助。

大卫。


尝试将其设置为:" C: Programs Vim vim72 gvim.exe" -p-远程选项卡静默"%1""%*"

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

编辑:正如Thomas所指出的那样,vim.org的提示已移至:http://vim.wikia.com/

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


您走在正确的轨道上:

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

足够了...有效!


我找到了答案...奶油的链接为我提供了其他搜索范围。

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

1
2
3
4
5
6
7
8
9
10
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"和"%*"的确切含义也将很高兴。

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


我建议尝试奶油。

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

这些行为之一是选项卡式文档界面。其他行为在此处列出。下载页面在这里。


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


推荐阅读