【发布时间】:2013-11-23 18:44:58
【问题描述】:
我正在 Windows 7 上的 gVim 中编辑 Unity 3D .cs 文件,我希望在 Unity 中双击文件以在现有 vim 窗口中打开该文件,但它会打开一个新文件。
为了解决这个问题,我使用了各种其他 SO 答案来制作批处理文件并使用 --remote-silent 调用 vim。除了 vim 之外,这一切都有效,就像它不允许在其上运行远程命令一样。
批处理文件:
@ECHO OFF
:Loop
IF "%1"=="" GOTO Continue
start "" "C:\Program Files (x86)\Vim\vim73\gvim.exe" --remote-silent ":sp %1<CR>"
SHIFT
GOTO Loop
:Continue
它给了我
":sp C:\my\path\file.cs" [Permission Denied] Press enter or type command to continue
我尝试删除“%1”以检查是否是给出权限错误的文件,但没有运气。批处理文件通过以管理员身份运行的快捷方式运行(在 Windows 中没有什么是简单的)
Unity -> 快捷方式 -> 批处理文件 -> gVim -> ":sp 文件名"
知道为什么 vim 不让这个命令运行吗?
似乎在 vim help -remote 文件或在谷歌上看到此内容的任何其他人中找不到任何提及权限的内容。
谢谢。
*编辑 1 看起来很奇怪,如果我这样做的话:ls 我在缓冲区列表中看到了这个
2 %a= ":sp C:\My\file\path.cs" line 1
喜欢将整个命令视为文件路径之类的吗?
【问题讨论】:
-
什么是
<cr>?如果你有它,你应该删除它。 -
它应该像按回车一样运行它。
-
gvim.exe -p --remote-tab-silent %1 %* stackoverflow.com/questions/936501/…
标签: windows batch-file vim