0

我正在尝试创建一个Sublime Text 3构建系统来使用AsciiDoctor呈现和 Asciidoc 格式的文档。

AsciiDoc.sublime 构建:

{
    "cmd": ["asciidoctor","$file"],
    "selector": "source.asciidoc"
}

当我执行 build Ctrl+B时,我收到一个错误:

[WinError 6] The handle is invalid
[cmd: ['asciidoctor', 'C:\\Users\\XXXX\\Desktop\\hello\\hello.asc']]
[dir: C:\Users\XXXX\Desktop\hello]
[path: c:\tools\ruby193\bin\asciidoctor]
[Finished]

我能够通过 Windows 命令处理器、PowerShell 和 Ruby 提示符成功呈现文档。

此构建脚本会导致相同的错误:

{
    "cmd": ["asciidoctor","$file"],
    "path": "c:\\tools\\ruby193\\bin\\asciidoctor",
    "shell": true,
    "selector": "source.asciidoc"
}

我错过了什么?

4

1 回答 1

0

找到了解决方案:构建系统:“句柄无效”

最后的回应:

由 showka 于 2011 年 10 月 2 日星期日 7:34 pm 非常感谢,在命令提示符之外启动 Sublime Text 可以解决这个问题。

我已经尝试设置PYTHONPATH从提示符运行,但这不会解决它。我的命令提示符在环境变量中有很多粘稠物,我敢肯定还有其他东西会绊倒它。:) 现在我将只制作第二个批处理文件来启动 Sublime,并将某些程序添加到路径中。

...

更新:我发现了这个问题,现在可以从我的命令提示符运行它。

这是我的批处理文件的外观:

代码:全选 SET PYTHONPATH=START "Sublime Text 2" /B "C:\Program Files\Sublime Text 2\sublime_text.exe" %*

/B 选项出于某种原因搞砸了。通常我需要它来防止命令提示符等待启动的程序退出,但是由于某种原因,Sublime 是不必要的。取消该选项使其工作。

于 2015-03-16T19:10:14.720 回答