3

这是一个非常具体的问题,但我一直试图让它工作两天但没有成功。

我正在使用 MIT-Scheme(在 Ubuntu 10.04 上发布 7.7.90)来运行一些 Scheme 脚本。我的命令行如下所示

mit-scheme --band "myimage.com" --interactive --batch-mode < myscript.scm

我的问题是,如果主脚本加载其他 Scheme 文件,解释器会通过打印以下内容来记录此内容:

;Loading "....scm"... done
;Loading "....scm"... 
;  Loading "....scm"... done
;  Loading "....scm"... 
;    Loading "....scm"... done
;  ... done
;... done
;Loading "....scm"... done

这很烦人,因为我的脚本还记录了一些与上述输出混淆的进度信息。所以,我想完全抑制加载过程的输出。

我一直在浏览在线文档,但没有找到任何具体的内容。我发现的唯一解决方案是将脚本及其所有依赖项加载到解释器中,并使用磁盘保存保存图像。如果我然后使用 --band 选项加载该图像,所有不需要的输出都消失了。

但是我当然不想每次修改源文件时都加载源并保存图像。是否有更简单的解决方案,例如命令行选项、环境变量或可以从 Scheme 代码中设置的某些选项?

4

1 回答 1

4

这有点晚了,但对于以后遇到这个问题的人来说:

您可以使用load/suppress-loading-message?

例如,执行 a(set! load/suppress-loading-message? #t)将关闭加载消息。

在您的情况下,您应该尝试--eval "(set! load/suppress-loading-message? #t)"

于 2013-02-07T20:40:24.673 回答