我正试图在windows 8上的.mongorc.js中为mongodb设置崇高文本编辑器的路径,所以我将此行添加到.mongorcjs…
EDITOR = "C:\Program Files\Sublime Text 3sublime_text.exe";
当我从命令提示符启动mongo.exe,然后键入:时
> edit blah
它返回:
'CProgram' is not recognized as an internal or external command
所以我试试
EDITOR = "C:\Programu0020Files\Sublimeu0020Textu00203\sublime_text.exe";
甚至
EDITOR = "C:\Program%20Files\Sublime%20Text%203\sublime_text.exe";
我得到
系统找不到指定的路径。
编辑器名称中可以有空格,只需确保正确地转义所有内容即可。我没有你安装的编辑器,所以我用了写字板。
> EDITOR=""C:\Program Files\Windows NT\Accessories\wordpad.exe""
"C:Program FilesWindows NTAccessorieswordpad.exe"
> edit a
对我很有用。你需要用引号把整个东西括起来,然后在整个可执行文件周围加上反斜杠、转义符、反斜杠和双引号。
您还可以确保编辑器的路径在默认/系统路径中,然后只需要将编辑器可执行文件名分配给editor。
显然,路径不能包含空格。
最简单的解决方法是使用生成的8.3文件夹名称,而不是带有空格的路径。
在命令提示符下,您将使用/x
开关,该开关显示通常隐藏的8.3目录和文件名:
c:
cd
dir pro* /x
应该返回这样的东西:
Directory of C:
11/05/2013 07:19 PM <DIR> PROGRA~1 Program Files
11/05/2013 07:19 PM <DIR> PROGRA~2 Program Files (x86)
如果您使用的是Sublime的64位版本,您可以选择PROGRA~1
。
更改为Program Files
目录:
cd Program Files
然后,找到Sublime文件夹的8.3名称:
C:Program Files>dir Subl* /x
Directory of C:Program Files
09/08/2013 02:17 PM <DIR> SUBLIM~1 Sublime Text 2
在我的系统中,它是SUBLIM~1
。然后,使用系统中的值将EDITOR值更改为:
EDITOR="C:\PROGRA~1\SUBLIM~1\sublime_text.exe"
你也可以在某个地方创建一个结点(没有空格),但上面的技巧应该很好(我在我的机器上测试了它,它工作正常)。我注意到使用Sublime的唯一问题是MongoDB控制台中的edit
命令会等待整个编辑器进程退出,因此不能使用选项卡。