Version 0.25.0 of package Sweeprolog has just been released in NonGNU ELPA. You can now find it in M-x list-packages RET.
Sweeprolog describes itself as: =================== Embedded SWI-Prolog =================== More at https://elpa.nongnu.org/nongnu/sweeprolog.html ## Summary: Sweep is an embedding of SWI-Prolog in Emacs. It uses the C interfaces of both SWI-Prolog and Emacs Lisp to let you query Prolog directly from Elisp. On top of this tight integration, Sweep provides an advanced development environment for SWI-Prolog in Emacs. ## Recent NEWS: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ SWEEP NEWS – HISTORY OF USER-VISIBLE CHANGES ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ This file contains the release notes for Sweep, an embedding of SWI-Prolog in Emacs. For further details, please consult the manual: [https://eshelyaron.com/sweep.html]. [https://eshelyaron.com/sweep.html] <https://eshelyaron.com/sweep.html> Version 0.25.0 on 2023-09-17 ════════════════════════════ Snappier query highlighting in Sweep top-levels ─────────────────────────────────────────────── Sweep now highlights the query you insert in the top-level immediately as you type it. In previous versions, query highlighting relied on a short timer, that could lead to a small delay before Sweep would update the highlighting when you change the query. Sweep top-levels can now communicate via pty instead of local TCP ───────────────────────────────────────────────────────────────── Sweep top-level buffers can now communicate with their corresponding top-level threads via a pseudo-terminal (pty) device, instead of a local TCP connection. Local TCP connections remain supported for systems where Emacs cannot use a pty, such as MS Windows. On Unix systems, top-levels now use pty by default. Compatibility with and support for Prettify Symbols mode ──────────────────────────────────────────────────────── Sweep Prolog mode is now compatible with the Prettify Symbols minor mode. Prettify Symbols mode, and similar features, rely on `font-lock-add-keywords' to add highlighting patterns. Sweep does not use Font Lock keywords for its highlighting, but now it does invoke the relevant Font Lock keyword highlighting routines for compatibility with minor modes such as Prettify Symbols. Minor improvements to hole highlighting ─────────────────────────────────────── Sweep now uses a slightly smaller “box” around holes to highlight them in Prolog code, such that holes are displayed with the same dimensions of any other text. This avoids small visual jitter when inserting or removing holes in a buffer. Version 0.24.1 on 2023-09-09 ════════════════════════════ Refine checks for extracting goals to separate predicates ───────────────────────────────────────────────────────── Sweep now checks that the selected region is a goal at a callable position, rather than a data term, before suggesting to extract the region to a separate predicate in `sweeprolog-insert-term-dwim' (`M-RET') and in the right-click context menu. Version 0.24.0 on 2023-09-08 ════════════════════════════ New command `sweeprolog-extract-region-to-predicate' ──────────────────────────────────────────────────── This command lets you select a part of the body of a clause and extract it into a separate predicate. The command `sweeprolog-insert-term-dwim' (`M-RET') now invokes `sweeprolog-extract-region-to-predicate' if the region is active. Version 0.23.1 on 2023-08-30 ════════════════════════════ Documentation improvements and minor bug fixes ────────────────────────────────────────────── This is a maintenance release, including a rewrite of the Sweep manual in Texinfo format along with some minor bug fixes and improvements. Version 0.23.0 on 2023-08-18 ════════════════════════════ Sweep now requires Compat, the forward-compatibility library for Elisp ────────────────────────────────────────────────────────────────────── This version introduces a dependency of Sweep on Compat, the forward-compatibility library for Elisp available from GNU ELPA. Compat provides implementations of newer Elisp functions and features for older Emacs versions, and Sweep now makes use of it for improved backward compatibility and ease of maintenance. Version 0.22.2 on 2023-08-14 ════════════════════════════ Fix potential crash due to a collision between Xwidgets and XPCE ──────────────────────────────────────────────────────────────── This version fixes an issue that could cause Emacs to crash during certain Sweep operations if Emacs is built with Xwidgets and SWI-Prolog is built with XPCE. Fix feedback in `sweeprolog-set-prolog-flag' and `sweeprolog-set-pack-install' ────────────────────────────────────────────────────────────────────────────── In previous versions, these commands could report failure even when they in fact succeeded. This version fixes the feedback these commands provide. Version 0.22.1 on 2023-08-07 ════════════════════════════ New command `sweeprolog-submit-bug-report' ────────────────────────────────────────── Use this command to contact the Sweep maintainers directly from within Emacs. It has been documented in the manual already since version 0.6, but its implementation was unintentionally omitted. … …