我正在尝试使用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
的额外标签。
受影响的版本
感谢您的帮助。
大卫。
答案 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的外观,但确实改变了它的行为方式。
答案 4 :(得分:0)
使用_vimrc
进行更清晰的修复。添加以下行:
autocmd BufReadPost * tab ball
来自http://www.vim.org/scripts/script.php?script_id=1720