当我使用 protocol('execution.txt').
并输入一些查询,我在输出文件中得到了一些垃圾字符。有什么办法可以避免这些字符?
11 ?- beside(block2, X).
X = block3 [1m;[0m
[1;31mfalse.[0m
12 ?- beside(block4, X).
X = block7 [1m;[0m
X = block3 [1m;[0m
[1;31mfalse.[0m
13 ?- beside(block5, X).
[1;31mfalse.[0m
14 ?- above(block1,X).
X = block2 [1m;[0m
[1;31mfalse.[0m
15 ?- above(block2,X).
[1;31mfalse.[0m
16 ?- above(block6,X).
X = block5 [1m;[0m
X = block4 [1m;[0m
[1;31mfalse.[0m
17 ?- noprotocol.
最佳答案
这些字符是 ANSI 终端控制序列,用于突出显示错误等。要禁用它,请输入
?- set_prolog_flag(color_term, false).
在开始协议(protocol) session 之前。要永久禁用,请在首选项文件中放置与指令相同的指令。 IE。在 Unix 中,放置在 ~/.plrc
:- set_prolog_flag(color_term, false).
如果您使用 XPCE EMACS,您可以从菜单编辑首选项
Edit\Prolog preferences
关于prolog - swi-prolog 协议(protocol)的输出文件中的垃圾字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19896708/