Windows和gvim中的多个选项卡
我正在尝试获取"用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
谢谢你的帮助。
大卫。
解决方案
回答
尝试将其设置为:" 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
回答
我建议尝试奶油。
Cream是位于gVim之上的一组脚本和添加组件。 Cream不会改变gVim的外观,但会改变其行为方式。
这些行为之一是选项卡式文档界面。其他行为在此处列出。下载页面在这里。
回答
我找到了答案...奶油的链接为我提供了其他搜索范围。
来自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"和"%*"的确切含义也将很高兴。
现在...我应该编辑原始问题,以表明我是从错误的注册表区域开始的吗?
回答
我们走在正确的轨道上:
HKEY-LOCAL-MACHINE\SOFTWARE\Vim\Gvim\path = "C:\Programs\Vim \vim72\gvim.exe" -p
足够了...有效!