我试图获取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