我正在尝试获取 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 家庭高级版

谢谢你的帮助。

大卫。

有帮助吗?

解决方案

尝试将其设置为:"C:\Programs\Vim \vim72\gvim.exe" -p --remote-tab-silent "%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

其他提示

你走在正确的轨道上:

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 注册表文件,其中包含以下内容

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top