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

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

[GNU ELPA] Transient version 0.5.2


From: ELPA update
Subject: [GNU ELPA] Transient version 0.5.2
Date: Tue, 05 Dec 2023 17:06:17 -0500

Version 0.5.2 of package Transient has just been released in GNU ELPA.
You can now find it in M-x list-packages RET.

Transient describes itself as:

  ==================
  Transient commands
  ==================

More at https://elpa.gnu.org/packages/transient.html

## Summary:

  1 Transient command menus
  ═════════════════════════

    Transient is the library used to implement the keyboard-driven “menus”
    in [Magit].  It is distributed as a separate package, so that it can
    be used to implement similar menus in [other packages].


  [Magit] <https://github.com/magit/magit/>

  [other packages] <https://melpa.org/#/transient>

  1.1 Some things that Transient can do
  ─────────────────────────────────────

    • Display current state of arguments
    • Display and manage lifecycle of modal bindings
    • Contextual user interface
    • Flow control for wizard-like composition of interactive forms
    • History & persistence
    • Rendering arguments for controlling CLI programs


  1.2 Complexity in CLI programs
  ──────────────────────────────

## Recent NEWS:

# -*- mode: org -*-
* v0.5.2    2023-12-05

- Fixed formatting issues in the manual.

* v0.5.1    2023-12-05

- Added a new introduction by JD Smith (@jdtsmith).

Bug fixes:

- Faces that use a box are now defined more defensively to protect
  against unexpected values and provide reasonable fallback colors.
  413310cd, b8aefce3

- Only prepare to return to the parent transient if there actually is
  a parent.  The only negative effect of failing to do this was that
  the suffix was colored wrong, since ~transient--do-return~ falls back
  to behave like ~transient--do-exit~.  5f2cfc9f

* v0.5.0    2023-11-28

- Some suffix commands exit the transient from which they were
  invoked, while others don't (allowing the user to invoke another
  suffix without first having to enter the transient again).

  Until now it wasn't possible to tell which category any given suffix
  falls into, at least not by default.  Now the key binding of each
  suffix is colorized to indicate its transient behavior.  Red means
  that the suffix exits the transient, and blue means that it does
  not.  Keys for suffixes that currently cannot be invoked are gray.

  Likewise, the thin line, that is drawn between the transient popup
  buffer and the minibuffer, is used to indicate what happens, if you
  invoke a command that is not a suffix.  Most prefixes do not allow
  non-suffixes to be invoked, so this line usually is gray.  c8a9ac51

- Many faces have also been improved.  This involves changing which
  built-in faces they inherit from, some explicit changes to their
  appearance, and semantic clarifications.  Of course your mileage may
  vary — it's possible that some face just happened to look right with
  your chosen theme, but now it has to be themed to achieve that
  again.  47d3f01d 71d16d86 et al.

- Added a new face, ~transient-delimiter~, which is used for parentheses
  around values and the pipe character used to separate possible values
  from each other.  567b5d54

- Added a new command ~transient-toggle-level-limit~, bound to ~C-x a~,
  which temporarily shows all suffix commands a transient has to
  offer.  This makes it possible to occasionally use more obscure
  commands and arguments, without having to always display them.
  For more information see 
[[https://magit.vc/manual/transient/Enabling-and-Disabling-Suffixes.html][Enabling
 and Disabling Suffixes]].  #243

The changes described below, only directly affect package authors and
users who implement their own transients.  If that does not describe
you, then all you have to know is that many features were fine-tuned
and otherwise improved, opening up some new use-cases and making some
things easier to implement.  This will hopefully lead to improvements
in your favorite transient-using packages in the coming months.

- It sometimes makes sense to bind multiple keys to the same suffix
  command, e.g., because they behave differently based on the suffix
  description, or some other slot that can be set per binding.
  Previously these bindings shared a visibility level; how this can
  be set individually.  #153

- While functions are run, which format strings to be inserted into the
  transient buffer or to determine whether other aspects of a suffix,
  that transient buffer no longer is the current buffer.  Instead the
  buffer in which the prefix and its suffixes operate, is the current
  buffer.  This affects functions such as ~transient-format-description~
  and those found in predicate slots such as ~if~.  In contexts where
  the transient buffer is needed but the other buffer happens to be
  current, the new macro ~transient-with-shadowed-buffer~ can be used
  to temporarily change that.

- The new suffix slots ~face~ and ~inapt-face~ can be used to specify how
  a suffix looks, which in simple cases is more convenient than using
  a function as ~description~ and adding the face there.  The values of
  these slots should be faces or functions that returns a face.  The
  default for ~inapt-face~ is ~transient-inapt-suffix~, but in some cases
...
...



reply via email to

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