[NonGNU ELPA] Sweeprolog version 0.10.1

Message ID
DKIM signature
Download raw message
Version 0.10.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:


				Eshel Yaron

  This manual describes the Emacs package `sweep' (or `sweeprolog'), which
  provides an embedded SWI-Prolog runtime inside of Emacs.

  Table of Contents

## Recent NEWS:


This file contains the release notes for `sweep', an embedding of
SWI-Prolog in Emacs.

For further details, please consult the manual:

Version 0.10.1 on 2023-01-01

New user option `sweeprolog-read-predicate-documentation-function'

  This user option control how `C-c C-d'
  (`sweeprolog-document-predicate-at-point') prompts for initial
  documentation information, namely argument modes, determinism
  specification and predicate summary.  It specifies a function that
  `sweeprolog-document-predicate-at-point' calls to get this

  The default value of this option is a new function
  `sweeprolog-read-predicate-documentation-default-function' that
  preserves the current behavior of prompting the user to insert the
  needed information via the minibuffer.  An alternative function that
  uses holes instead is also provided, it is called

Improved handling of unbalanced quotes in `sweeprolog-mode' buffers

  Previously, unbalanced quotes in a Prolog clause could cause Sweep to
  treat the entire rest of buffer as part of that clause, causing major
  slowdowns when inserting Prolog strings and quoted atoms in large
  buffers.  To overcome this issue, this version introduces a mechanism
  for restricting analysis in such cases to the clauses surrounding the

Version 0.10.0 on 2022-12-25

New command `sweeprolog-insert-term-with-holes'

  This command, bound to `C-c C-m' (or `C-c RET') is `sweeprolog-mode'
  buffers, inserts a Prolog term at point with a given functor and
  arity, using holes in place of the term’s arguments.

Holes are now always highlighted as such, even in incomplete terms

Fix possible crash when resetting `sweep' with `sweeprolog-restart'

Version 0.9.6 on 2022-12-17

Indentation in `sweeprolog-mode' now respects `indent-tabs-mode'

  With non-nil `indent-tabs-mode', tabs are now used to indent lines in
  Prolog code buffers.

New command for inferring the indentation style of the current buffer

  The new command `sweeprolog-infer-indent-style' can be used to update
  the buffer-local values of `sweeprolog-indent-offset' and
  `indent-tabs-mode' according to the buffer’s existing indentation


  • Fixed issue with `sweeprolog-indent-or-forward-hole', in previous
    versions it would fail to indent empty lines.

Version 0.9.5 on 2022-12-10

`sweeprolog-align-spaces' now works also in comments

  You can now use `sweeprolog-align-spaces' (or `cycle-spacing' in Emacs
  28+) to get the “right” amount of whitespace around the cursor
  position inside comments.

Improved interaction with `auto-fill-mode'

  `sweeprolog-mode' now customizes some settings related to text filling
  to make `auto-fill-mode' work as expected with SWI-Prolog comments.


  • In previous versions, using `sweeprolog-predicate-location' on a
    loaded predicate would give precedence to the location from which a
    predicate was loaded, even if its source file has since been
    modified causing its location to differ.  This behavior is fixed in
    the current version, which means that `M-.' and friends should
    always find the up-to-date location of predicate definitions.
  • Fixed possible infinite loop in
    `sweeprolog-beginning-of-predicate-at-point' near the beginning of
    the buffer.  This issue could be seen by calling
    `sweeprolog-document-predicate-at-point' (`C-c C-d') with point in
    the first clause of the buffer.

Version 0.9.4 on 2022-12-06

New minor mode for moving to holes with `TAB'

  This version introduces a new minor mode
  `sweeprolog-forward-hole-on-tab-mode', which binds `TAB' to a command
  that moves either indents the current line or moves to the next hole
  in the …  …
Reply to thread Export thread (mbox)