gnu-emacs-sources
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[NonGNU ELPA] Sweeprolog version 0.25.4


From: ELPA update
Subject: [NonGNU ELPA] Sweeprolog version 0.25.4
Date: Sun, 08 Oct 2023 17:13:16 -0400

Version 0.25.4 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.4 on 2023-10-08
════════════════════════════

Fix recent issue with `sweeprolog-extract-region-to-predicate'
──────────────────────────────────────────────────────────────

  This is a bug-fix release, addressing an issue with
  `sweeprolog-extract-region-to-predicate' that was introduced in
  version 0.25.3.  The issue prevented goal extraction from the start or
  middle of right-associative binary operator chains, including `,/2'
  and thus affecting extraction from common conjunction chains.


Version 0.25.3 on 2023-10-07
════════════════════════════

`sweeprolog-extract-region-to-predicate' now supports lambda terms and 
existentially quantified goals
─────────────────────────────────────────────────────────────────────────────────────────────────────

  The command `sweeprolog-extract-region-to-predicate' now supports
  extracting `library(yall)' lambda terms to separate predicate
  definitions.  The new `sweeprolog-extract-region-to-predicate' also
  improves the handling of existentially quantified goals (`X^Y^Goal'),
  and in-clause disjunctions.


Various minor bug fixes and documentation improvements
──────────────────────────────────────────────────────


Version 0.25.2 on 2023-09-23
════════════════════════════

`sweeprolog-extract-region-to-predicate' can now replace all occurrences of the 
extracted goal in the buffer
────────────────────────────────────────────────────────────────────────────────────────────────────────────

  You can now invoke `sweeprolog-extract-region-to-predicate' with a
  prefix argument to have it check for other goals in the buffer that
  are subsumed by the extracted goal, and suggest replacing them as well
  with calls to the newly created predicate.


Version 0.25.1 on 2023-09-22
════════════════════════════

New command `sweeprolog-query-replace-term'
───────────────────────────────────────────

  This commands lets you replace terms in the current buffer by
  transforming them interactively.  You can use to perform very precise
  yet highly flexible code transformations.  See the new manual section
  “Term Replace” or type `C-h f sweeprolog-query-replace-term' for more
  details.


Faster `sweeprolog-term-search'
───────────────────────────────

  This version includes a reimplementation of the
  `sweeprolog-term-search' command that is both simpler and much more
  performant.


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' …  …

reply via email to

[Prev in Thread] Current Thread [Next in Thread]