Common lisp 压制;“装载”;Quicklisp中的输出
有没有办法让quicklisp加载库而不发送:Common lisp 压制;“装载”;Quicklisp中的输出,common-lisp,quicklisp,Common Lisp,Quicklisp,有没有办法让quicklisp加载库而不发送: To load "drakma": Load 1 ASDF system: drakma ; Loading "drakma" 标准化?我尝试将:verbose nil和:explain nil添加到ql:quickload的参数中(这就是我现在加载库的方式),但似乎这些都是默认值——打开它们只会增加输出量 谢谢你的帮助 对于有类似问题的人,我找到了一个解决方案: (with-open-file (*standard-output*
To load "drakma":
Load 1 ASDF system:
drakma
; Loading "drakma"
标准化?我尝试将:verbose nil
和:explain nil
添加到ql:quickload
的参数中(这就是我现在加载库的方式),但似乎这些都是默认值——打开它们只会增加输出量
谢谢你的帮助 对于有类似问题的人,我找到了一个解决方案:
(with-open-file (*standard-output* "/dev/null" :direction :output
:if-exists :supersede)
(ql:quickload "my-package"))
不确定它是否能在所有解释器上运行,但它在CLisp上运行得很好。没有一种方法可以做到这一点,但我打算很快添加一种方法。如果您使用sbcl作为脚本运行,您可以通过在shebang中添加--noinfo来获得一些额外的帮助,例如:
!#/bin/sbcl --noinform --core /path/to/relevant/sbcl.core --script
此答案列表中缺少quicklisp的
:silent
选项。因为最新的答案是2013年的,也许这一选项是在2013年之后添加的
以下是您如何使用它:
(ql:quickload "my-code" :silent t)
生成空输出流的正常方法是(生成广播流)。这样做的好处是可以在缺少/dev/null的系统(例如windows)上工作。