Version 0.22.2 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: SWI-PROLOG EMBEDDED IN EMACS
Eshel Yaron
me@eshelyaron.com
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
This manual describes the Emacs package Sweep (or `sweeprolog.el'),
which provides an embedded SWI-Prolog runtime inside of Emacs.
Table of Contents
─────────────────
## 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.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.
Version 0.22.0 on 2023-07-20
════════════════════════════
New in-buffer completion implementation
───────────────────────────────────────
This version of Sweep includes an overhaul of the way the
`completion-at-point' command (`C-M-i') works in `sweeprolog-mode'
buffers. Sweep now performs a more refined analysis of the code
around point when you invoke `completion-at-point' to determine what
kind of completion candidates to provide. This results in the
following improvements:
• Completion now works also for quoted atoms and functors
• Completion now avoids inserting parentheses and arguments after
completing a compound term when the opening parenthesis is already
in place before you invoke `completion-at-point'
• Completion now takes into account the qualifying module (if any)
when completing predicate calls, and suggests only predicates
defined in that module
Version 0.21.0 on 2023-06-27
════════════════════════════
New `sweeprolog-pce' custom theme
─────────────────────────────────
This version of Sweep adds a custom theme called `sweeprolog-pce' that
mimics the highlighting of SWI-Prolog’s built-in editor, PceEmacs.
This theme obsoletes the “faces styles” feature that Sweep provided
thus far for the purpose of emulating PceEmacs highlighting.
For backward compatibility, the user option `sweeprolog-faces-style'
is retained for the next few versions. Also, if you have
`sweeprolog-faces-style' set to `light' or `dark', Sweep tries to
respect that by enabling the `sweeprolog-pce' theme for you when you
first open a Prolog buffer, which should achieve the same result of
mimicking PceEmacs highlighting.
Descriptions for module completion candidates
─────────────────────────────────────────────
Commands that read a Prolog module name in the minibuffer now provide
enhanced information about completion candidates. Namely, the
annotation for documented modules now also includes the module’s one
line description.
`C-x 4 a' in Prolog buffers finds the predicate indicator at point
──────────────────────────────────────────────────────────────────
Sweep now defines a dedicated `add-log-current-defun-function' for
`sweeprolog-mode' buffers. This allows `C-x 4 a' and related commands
to correctly identify the predicate definition at point for inclusion
in commit messages and change log entries.
Version 0.20.0 on 2023-06-19
════════════════════════════
New user option `sweeprolog-top-level-persistent-history'
─────────────────────────────────────────────────────────
This option controls if and where Sweep top-level buffers store their
input history persistently. Persistent history is off by default,
refer to the “Top-level History” section in the manual for more
details.
Version 0.19.1 on 2023-06-14
════════════════════════════
New user option `sweeprolog-predicate-visible-p-function'
─────────────────────────────────────────────────────────
This option specifies a function that is used for filtering completion
candidates in commands that prompt for a predicate. By default, it is
set to a function that hides predicates whose functor begin with the
character `$'.
Further improvements in DCG support
───────────────────────────────────
… …