跟踪时如何在 SWI-Prolog 中撤消 "write"?
How to undo "write" in SWI-Prolog while tracing?
如果我们希望 Prolog 显示当前和后续调用 (http://www.swi-prolog.org/pldoc/doc_for?object=section(2,%272.9%27,swi(%27/doc/Manual/debugoverview.html%27))) 中的所有内容,我们可以在跟踪期间键入 "w"。
有没有办法将其关闭,以便它不再显示从那时起的所有内容?像 [nowrite]
这样的东西?我在文档中找不到这个,也找不到类似的问题。
----- 编辑 ------
当我们键入 "w" 时,它会在屏幕上写出所有内容。然后,如果我们按 [Enter](或 'l' 或 'r' 或其他引导我们进行另一个调用的命令),后续调用仍将写出版本。所以我的问题是,如何在进行另一个调用时恢复到未写出的版本,这会使我们之前输入的 "w"?
无效
有两个命令会影响调试器编写的术语:w
和 p
。第二个可能会提供你想要的。您还可以键入 b
(中断),然后使用 set_prolog_flag/2
谓词将 debugger_write_options
设置为您想要的选项。
如果我们希望 Prolog 显示当前和后续调用 (http://www.swi-prolog.org/pldoc/doc_for?object=section(2,%272.9%27,swi(%27/doc/Manual/debugoverview.html%27))) 中的所有内容,我们可以在跟踪期间键入 "w"。
有没有办法将其关闭,以便它不再显示从那时起的所有内容?像 [nowrite]
这样的东西?我在文档中找不到这个,也找不到类似的问题。
----- 编辑 ------
当我们键入 "w" 时,它会在屏幕上写出所有内容。然后,如果我们按 [Enter](或 'l' 或 'r' 或其他引导我们进行另一个调用的命令),后续调用仍将写出版本。所以我的问题是,如何在进行另一个调用时恢复到未写出的版本,这会使我们之前输入的 "w"?
无效有两个命令会影响调试器编写的术语:w
和 p
。第二个可能会提供你想要的。您还可以键入 b
(中断),然后使用 set_prolog_flag/2
谓词将 debugger_write_options
设置为您想要的选项。