summaryrefslogtreecommitdiff
path: root/docs/transient.org
AgeCommit message (Collapse)Author
2026-04-22Release version 0.13.0HEADv0.13.0mainJonas Bernoulli
2026-03-03manual: Update recommendation for visually impaired usersJonas Bernoulli
2026-03-03transient-use-accessible-values: New optionJonas Bernoulli
2026-03-03transient-use-accessible-formats: New optionJonas Bernoulli
2026-03-03transient-prefer-reading-value: New optionJonas Bernoulli
2026-03-03manual: Use term visually impaired where appropriateJonas Bernoulli
2026-03-03manual: Fix typoJonas Bernoulli
2026-02-27manual: Update some FAQJonas Bernoulli
2026-02-23transient-get-summary: Optionally echo even duplicated documentationJonas Bernoulli
2026-02-23manual: Document inactive slotJonas Bernoulli
2026-02-23manual: Move description of advise and advise* slotsJonas Bernoulli
2026-02-23manual: Extend information about summary slotJonas Bernoulli
2026-02-23manual: Improve Accessibility Options nodeJonas Bernoulli
2026-02-23manual: Reorder Accessibility Options nodeJonas Bernoulli
2026-02-23manual: Update outdated example configurationJonas Bernoulli
2026-01-30transient-enable-menu-navigation: Improve documentationJonas Bernoulli
2026-01-13transient-force-single-column: Improve documentationJonas Bernoulli
2026-01-13transient-describe-menu: New optionJonas Bernoulli
2026-01-08manual: Provide example configuration for blind usersJonas Bernoulli
2026-01-08transient-navigate-to-group-descriptions: New optionJonas Bernoulli
2026-01-08transient-enable-menu-navigation: Renamed optionJonas Bernoulli
2026-01-08transient-show-menu: Renamed optionJonas Bernoulli
2026-01-08Update manualJonas Bernoulli
2026-01-04Fix typosJonas Bernoulli
2026-01-04manual: Fix typoJonas Bernoulli
2026-01-01Release version 0.12.0v0.12.0Jonas Bernoulli
2025-12-15manual: Fix typoJonas Bernoulli
2025-12-15manual: Fix misplaced syntaxJonas Bernoulli
2025-11-18Release version 0.11.0v0.11.0Jonas Bernoulli
2025-11-14Improve documentation of some optionsJonas Bernoulli
2025-11-08manual: Add some missing @codeJonas Bernoulli
2025-11-08manual: Add some missing @code around booleansJonas Bernoulli
2025-10-06Release version 0.10.1v0.10.1Jonas Bernoulli
2025-09-01Release version 0.10.0v0.10.0Jonas Bernoulli
2025-08-16Support automatically remembering the prefix valueJonas Bernoulli
Closes #287.
2025-08-16transient-get-value: Replace with three functionsJonas Bernoulli
`transient-get-value' was added in [1: d33fe5ab]. At this time it was only used by commands that save the value. We didn't make a distinction between `transient--suffixes' and `transient-current-suffixes' at this time. In [2: 1b9929ec] the `unsavable' suffix slot was added and this function started to drop the values of unsavable suffixes. In [3: 8db5f0fd] we started to also use it to preserve the value across refreshes. That made it necessary to use `transient--suffixes'. It would have made sense to only use that variable. Instead we started to use it, if non-nil, and fall back to `transient-current-suffixes' otherwise (which previously was used exclusively). Sometime along the way, package authors started to need the value of the prefix or of another suffix while setting up the menu and its suffixes. `transient-args' is not intended for that purpose and I started to tell them to use `transient-get-value'. So now `transient-get-value' is being used for at least three distinct purposes. They have in common that they deal with the value of the extant prefix (so `transient-args' is not appropriate); but they need different subsets of that value. We could deal with that by adding arguments to `transient-get-value'. Instead we use three different functions, and give them names that make these differences obvious. - New `transient--get-savable-value' obviously filters out the non- savable parts of the value and is obviously used when saving the value. - New `transient--get-extended-value' returns the full value. This includes the parts that are currently inactive, but have to be preserved because they may become active again. This is used to preserve the value across refreshes. This also includes unsavable parts of the value, since we still want to use those parts. - `transient-get-value' now returns the "effective" value. This includes the "unsavable" (but "intend for use") parts. It does not include the "inactive" parts. Keep the current name of this function because that is being used in third-party package. Note that while this now filters out the value of suffixes whose `inapt' slot is non-nil, that doesn't make a difference just yet. Such suffixes are not being added to `transient--suffixes' yet, but we will start doing that in a few commits. In other words, there effectively is no change in how this deals with inapt parts of the value. However, the behavior changes with regards to unsavable parts of the value. Those are no longer dropped. That is a bugfix. 1: 2019-08-12 d33fe5abaf5d0de2a8e80e7e52555d725ebdc6e5 Split new transient-get-value from transient-args 2: 2020-10-20 1b9929eca9b1076fb04794b6736d42a1d394fadb Add new `unsavable' infix slot 3: 2024-06-22 8db5f0fd4469f3b2af34e07a283372ca273fa685 transient--refresh-transient: Preserve value
2025-08-16transient-prefix-value: Clarify documentationJonas Bernoulli
2025-08-01Release version 0.9.4v0.9.4Jonas Bernoulli
2025-07-01Release version 0.9.3v0.9.3Jonas Bernoulli
2025-06-09Release version 0.9.2v0.9.2Jonas Bernoulli
2025-06-06manual: Mention transient-copy-menu-text in relevant FAQJonas Bernoulli
2025-06-03Release version 0.9.1v0.9.1Jonas Bernoulli
2025-06-01Release version 0.9.0v0.9.0Jonas Bernoulli
2025-05-26manual: Omit LEVEL in transient-information exampleJonas Bernoulli
Positional LEVEL is semi-deprecated.
2025-05-26transient-cons-option: New suffix class for non-cmdline optionsJonas Bernoulli
The existing `transient-option' class is suitable for options passed to commands. A suffix that uses that class may represent an argument such as "--option". In the list returned by `transient-args', that argument and its value, "value", is represented as one element "--option=value". For "options" that are not passed to a command that is not appropriate. A caller that wants to extract the value of such an option would have to parse that string. `transient-arg-value' can help with that, but it always returns a string (or nil). The new `transient-cons-option' class provides a more direct way to deal with "non-command-line options", by representing the key value pair using a cons-cell (ARGUMENT . VALUE), not just internally, but in particular when handing it of to a caller. VALUE can have any printable type and ARGUMENT can have any printable type, expect string. We cannot use the term "key" because that is already used to the key binding for the command. Also avoid using "property" because that implies a property list, while the value returned by `transient-args' is an alist when all infixes use the `transient-cons-options' class. Sticking to "argument" also has the advantage, that we don't have to implement or generalize a dozen methods.
2025-05-16Update manualJonas Bernoulli
2025-05-16Require all key bindings to be specified as key descriptionsJonas Bernoulli
No longer support vectors. This change isn't backward compatible but I haven't seen a vector being used even just once. It also makes sense to take inspiration from `keymap-set' et al., which didn't exist when Transient was created. However, we continue to be more permissive than those functions, only insisting on strings understood by `kbd', including strings that do not satisfy `key-valid-p'. Being more permissive makes it possible, for example, to write the key binding, which toggles the "-a" command line argument, as "-a", instead of having to write "- a". Likewise additional spaces can be added, which are not removed when displaying the binding in the menu, which is useful for alignment purposes.
2025-05-01Release version 0.8.8v0.8.8Jonas Bernoulli
2025-04-18Reduce usage of the term "popup"Jonas Bernoulli
2025-04-15transient-common-command-prefix: New optionJonas Bernoulli