[Top][All Lists]

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

[NonGNU ELPA] Sweeprolog version 0.8.9

From: ELPA update
Subject: [NonGNU ELPA] Sweeprolog version 0.8.9
Date: Sat, 19 Nov 2022 17:06:12 -0500

Version 0.8.9 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

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.8.9 on 2022-11-19

Predicate completions now use holes for arguments

  When completing a predicate with `completion-at-point' (`C-M-i') and
  choosing a predicate that takes arguments, holes are inserted is place
  of each required argument.

Syntax errors are now less intrusive

  Syntax errors that occur due to incomplete terms are no longer
  immediately highlighted as such.

`auto-insert' now leaves point at start of module summary


  • Fixed error in `sweeprolog-export-predicate' (`C-c C-e') in presence
    of exported predicates.  Reported by Jan Wielemaker.

Version 0.8.8 on 2022-11-16

Added electric layout minor mode

  This version includes a new minor mode
  `sweeprolog-electric-layout-mode' that adjusts whitespace around point
  as you type to adhere to Prolog layout conventions.

The top-level server in now started on-demand

  The TCP server that accepts connections from top-level buffers is now
  only started on the first invocation of `sweeprolog-top-level',
  instead of being started already in `sweeprolog-init'.

Fixed issue with syntax error highlighting at the end of the buffer

  Syntax error highlighting is now removed more reliably when the syntax
  error is resolved.

Version 0.8.7 on 2022-11-12

Revised predicate completion-at-point and added atom completion

  `sweep'’s completion at point now detects when predicate completion is
  appropriate based on the context of point.  If point is at a
  non-callable position, atom completion is provided instead.

Version 0.8.6 on 2022-11-11

New user option `sweeprolog-new-predicate-location-function'

  This user option specifies a function to be called from
  `sweeprolog-insert-term-dwim' when defining a new predicate to choose
  the location of the new predicate definition.  The default value of
  the option is a function `sweeprolog-default-new-predicate-location'
  which preserves the current behavior of placing the new predicate
  right below the current predicate.  Other options include the new
  function `sweeprolog-new-predicate-location-above-current' which
  places the new predicate above the current one.


  • Fixed issue where `sweeprolog-describe-predicate' would throw an
    error when describing predicates that were cross referenced but not

Version 0.8.5 on 2022-11-10

New command `sweeprolog-xref-project-source-files'

  This command updates `sweep'’s cross reference data for all Prolog
  source files in the current project.  Bound to `X' in

Minor bug fixes

  • Fixed issue where `sweeprolog-predicate-location' sometimes returned
    a file importing the predicate in question, rather than actually
    defining it.
  • Fixed issue where the `kill-buffer-hook' of top-level buffers would
    throw an error when the corresponding top-level thread already died.

Version 0.8.4 on 2022-11-09

Various bug fixes

  • Fixed regression in variable highlighting where occurrences of the
    highlighted variable in adjacent clauses might have been
  • Fixed regression and added a test for clearing the syntax error face
    immediately when the error is fixed (e.g. a fullstop is inserted at
    the end of a clause).

Version 0.8.3 on 2022-11-07

New commands that operate on entire predicate definitions

  `sweeprolog-mode' now includes dedicated function for acting on
  predicate definitions that span multiple clauses.  The new commands
  are `sweeprolog-forward-predicate' and `sweeprolog-backward-predicate'
  bound to `M-n' and `M-p' respectively, and `sweeprolog-mark-predicate'
  bound …  …

reply via email to

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