[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[NonGNU ELPA] Sweeprolog version 0.9.1
From: |
ELPA update |
Subject: |
[NonGNU ELPA] Sweeprolog version 0.9.1 |
Date: |
Fri, 25 Nov 2022 17:03:53 -0500 |
Version 0.9.1 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.1 on 2022-11-25
═══════════════════════════
Predicate completion adjusts candidates arity according to the context
──────────────────────────────────────────────────────────────────────
Completing predicate invocations with `completion-at-point' now takes
into account the number of arguments that will be implicitly added to
the created predicate call by the context, and adjusts the completion
candidates appropriately. This applies both to DCG non-terminal
bodies (where two implicit arguments are normally added to all
predicate invocations), and to meta-calls such as `include(foo, L0,
L)' where the sole argument of `foo/1' is implicitly passed by
`include/3'.
Variable highlighting now excludes anonymous variables
──────────────────────────────────────────────────────
Unlike other variables, occurrences of anonymous variables (`_') are
no longer highlighted when the cursor enters one, since being
anonymous they are semantically unrelated to each other.
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
────────────────────────────────────────────────────────────────────
… …
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [NonGNU ELPA] Sweeprolog version 0.9.1,
ELPA update <=