[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[NonGNU ELPA] Sweeprolog version 0.9.0
From: |
ELPA update |
Subject: |
[NonGNU ELPA] Sweeprolog version 0.9.0 |
Date: |
Wed, 23 Nov 2022 17:06:35 -0500 |
Version 0.9.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: SWI-PROLOG EMBEDDED IN EMACS
Eshel Yaron
me@eshelyaron.com
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
This manual describes the Emacs package `sweep' (or `sweeprolog'), 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>.
Version 0.9.0 on 2022-11-23
═══════════════════════════
New command for creating `PlUnit' test blocks
─────────────────────────────────────────────
The new command `sweeprolog-plunit-testset-skeleton', accessible from
the `Sweep' menu-bar entry, inserts a template for a block of unit
tests at the location of the cursor.
Fixes
─────
• Fixed and added regression tests for an issue where
`sweeprolog-beginning-of-next-top-term' would get confused by
multi-line comments starting at the beginning of a line.
Version 0.8.13 on 2022-11-23
════════════════════════════
This is a bug-fix release, solving an issue introduced in version
0.8.12 where highlighting goals qualified with a variable module would
throw an error.
Version 0.8.12 on 2022-11-22
════════════════════════════
`sweeprolog-top-level-signal-current' uses the classic top-level interrupt
interface
────────────────────────────────────────────────────────────────────────────────────
`sweeprolog-top-level-signal-default-goal' is now set to call the new
SWI-Prolog built-in predicate `prolog_interrupt/0'. This predicate
invokes the classic SWI-Prolog top-level interrupt interface similarly
to pressing `C-c' in a terminal-bound top-level.
New user option `sweeprolog-highlight-holes'
────────────────────────────────────────────
When non-nil (the default), holes in Prolog buffers are highlighted
with a dedicated face to help visually distinguishing them from
regular Prolog variables.
`sweeprolog-forward-hole' is now bound in `sweeprolog-top-level' buffers
────────────────────────────────────────────────────────────────────────
Previously this command was only bound in `sweeprolog-mode'. It is
now bound to `C-c C-i' in both major modes.
Fixes
─────
Inserting a new clause for a module-qualified predicate now works as expected
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
Using `sweeprolog-insert-term-dwim' to insert the next clause of a
module-qualified predicate definition would previously not work
correctly. This use case is now works as expected.
Fixed possible non-termination finding the next term, causing Emacs to hang
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
This version fixes an issue where the function
`sweeprolog-beginning-of-next-top-term', used by in the `flymake'
integration of `sweeprolog-mode', could hang when called near the end
of the buffer.
Version 0.8.11 on 2022-11-21
════════════════════════════
`sweeprolog-new-predicate-location-function' signature changed
──────────────────────────────────────────────────────────────
The function specified by `sweeprolog-new-predicate-location-function'
should now take three arguments, namely the functor, arity and neck of
the new predicate, instead of taking only the predicate indicator as a
sole argument.
`sweeprolog-insert-term-dwim' now supports defining undefined DCG non-terminals
───────────────────────────────────────────────────────────────────────────────
Defining a previously undefined predicate with
`sweeprolog-insert-term-dwim' now analyzes the context of the
undefined predicate invocation to determine if it is expected to be a
DCG non-terminal, in which case an appropriate non-terminal definition
is inserted instead of a regular predicate.
Version 0.8.10 on 2022-11-21
════════════════════════════
`sweeprolog-top-level-signal-current' now calls `trace/0' by default
────────────────────────────────────────────────────────────────────
Calling `sweeprolog-top-level-signal-current' (`C-c C-c' in
`sweeprolog-top-level' buffers) now signals the top-level thread with
the goal specified by the user option
`sweeprolog-top-level-signal-default-goal', instead of prompting for a
goal. By default this user option is set to `"trace"', causing the
top-level thread to enter trace mode. To have
`sweeprolog-top-level-signal-current' prompt for a different goal
instead, call it with a prefix argument, i.e. `C-u C-c C-c'.
Fixes
─────
• Fixed insertion of new clauses with `sweeprolog-insert-term-dwim'
when the predicate at point is a DCG non-terminal or a predicate
defined with SSU rules. `sweeprolog-insert-term-dwim' now detects
and inserts the correct neck (`:-', `-->' or `=>') based on the
previous clauses.
… …
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [NonGNU ELPA] Sweeprolog version 0.9.0,
ELPA update <=