SWI-Prolog 如何重新加载工作空间?

SWI-Prolog how to reload workspace?

我正在使用 SWI-Prolog 附带的标准编辑器。我想重新加载工作区,以便所有先前的断言和知识库都将消失。有捷径吗?我当然可以关闭并重新打开编辑器,但想知道是否有更快的方法?

I would like to reload workspace, so that all prior assertions and knowledge base would disappear.

清理复杂环境的 IMO 在 SWI-Prolog 中并不可行。数据库是全局的,设计使然,删除部分加载状态并不容易。

但是您可以将设置工作区时使用的步骤存储在 ~/.swiplrc 中,以便在(重新)启动环境时重建您的体验。例如,在我自己的,我有

...
user:file_search_path(carlo, '/home/carlo/prolog').
user:file_search_path(scxml, carlo(scxml)).

d :- cd('/home/carlo/prolog'), portray_text(true), edit(read_trace_php).
...

然后,如果我 'query' ?- d.,SWI-Prolog 在 read_trace_php.pl 上打开一个编辑器。 如果我在 .swiplrc 中写了 directive

:- cd('/home/carlo/prolog'), portray_text(true), edit(read_trace_php).

然后每当我启动 swipl 时,我都会准备好编辑器。

表格事实

user:file_search_path(scxml, carlo(scxml)).

可以方便地定义项目所需的 'include path'。

您可以从 > Settings > User init file ...

编辑您的 .swiplrc