prolog - swi-prolog 协议(protocol)的输出文件中的垃圾字符

标签 prolog swi-prolog

当我使用 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/

相关文章:

list - 从 Prolog 中的列表中删除前 N 个元素

list - Prolog 通过尾部插入列表中的数字

lambda - SWI Prolog 中是否有类似匿名谓词的东西?

java - 如何在 jpl 中将文件作为模块进行查询

prolog - 求所有以数字为极限的立方根

prolog - 如何找到排列索引

C# 和 SWI-Prolog - 将字符列表转换为事实列表

prolog - 使用phrase_from_file读取文件行

http - 在 Prolog 中处理 PWP HTML 页面内的 http 查询字符串

file - Swi Prolog,卸载源文件