我们在windows中使用vim时,经常会通过右键菜单选择“Edit with Vim”来打开文件。但这种方式打开的文件,会在新建窗口中打开,而不是像Ultra Edit那样在一个新的标签页中打开。

VIM 7.0已经支持标签页了,怎样在打开文件时新建一个标签而不是新建窗口呢?下面的VBScript通过修改注册表的方式实现了该功能。不用担心,不会破坏你的注册表。

把下面的内容保存到一个文件中,取名为vim.vbs

Option Explicit    ' 强制显示声明变量。
On Error Resume Next    ' 不处理错误

Dim WSHShell 
Set WSHShell = WScript.CreateObject("WScript.Shell"

WSHShell.RegDelete 
"HKEY_CLASSES_ROOT\*\OpenWithList\gvim.exe\"
WSHShell.RegDelete 
"HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\gvim\"
WSHShell.RegDelete 
"HKEY_CLASSES_ROOT\*\Shell\用&Vim编辑\command\"

Dim gvimpath
gvimpath 
= WSHShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Vim\Gvim\path")

WSHShell.RegWrite 
"HKEY_CLASSES_ROOT\*\Shell\用&Vim编辑\command\",_
            
Chr(34+ gvimpath + Chr(34+" -p --remote-tab-silent " +_
            
Chr(34+ "%1" + Chr(34+_
            
Chr(34+ " %*" + Chr(34), "REG_SZ"

接下来用鼠标双击vim.vbs文件。

OK,现在你用鼠标右键点击想打开的文件,看到“用Vim编辑”项了吗?选中此项,就会在一个新的Vim标签页中打开该文件了。

此方法在win2K+vim7.1中通过,估计winxp中也没问题。


希望对你有用^-^。


Posted on 2007-09-04 23:46 Soli 阅读(412) 评论(2)  编辑 收藏 所属分类: Mess

Feedback

#1楼    回复  引用    

2008-07-21 10:04 by redspider [未注册用户]
汗,用得着这么麻烦么,直接用 tabnew 不就在新标签中打开文件了么

#2楼 [楼主]   回复  引用  查看    

2008-07-21 15:13 by Soli      
@redspider

这样是在右键菜单中么?愿闻其详。