我希望使用Atom作为因子侦听器的默认编辑器,以便输入\ foo edit将在Atom中打开foo的定义。但是当我尝试的时候,我得到了这个:
Launching failed with error:
Win32 error 0x2: The system cannot find the file specified.
Launch descriptor:
T{ process
{ command
{
"atom"
"C:\\path\\to\\factor_directory\\Factor/work/file_directory/filename.factor:1"
}
}
{ detached t }
{ environment H{ } }
{ environment-mode +append-environment+ }
{ group +same-group+ }
}但是,如果我cd进入目录并从powershell执行atom filename.factor (我在Windows8.1上),它可以正常工作,这表明由Factor生成的命令有问题。所以我打开C:\path\to\factor_directory\Factor\basis\editors\atom,发现
! Copyright (C) 2014 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: editors kernel make math.parser namespaces sequences ;
IN: editors.atom
SINGLETON: atom-editor
atom-editor \ editor-class set-global
SYMBOL: atom-path
M: atom-editor editor-command ( file line -- command )
[
atom-path get "atom" or ,
number>string ":" glue ,
] { } make ;我对这是怎么回事有个模糊的想法。我想我应该在某种程度上改变editor-command的定义,但我不知道它有什么问题。
有什么想法吗?
发布于 2015-03-28 05:34:50
原子可执行文件可能不在您的路径中。如果您查看以下一行:
atom-path get "atom" or ,or word从堆栈中获取2项,如果其中一项为真,它将输出第一项,否则返回f (false) (如果您正在使用GUI侦听器,则可以通过单击单词本身来交互地在帮助浏览器中查找特定单词的文档!因此,您可以单击or并阅读文档,了解它是如何工作的)。
查看错误消息,将返回"atom",因此我们可以推断
atom-path get必须已返回f (false)。因此,您需要做的是在执行atom-path单词之前将编辑器的可执行路径设置为edit:
"C:/path/to/atom.exe" \ atom-path set-global现在我不确定我使用的路径分隔符在Windows中是否能正常工作,但是您知道了。
https://stackoverflow.com/questions/29134074
复制相似问题