summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-01-19transient-format-description: Ignore empty docstring summariesJonas Bernoulli
2025-01-19transient--insert-help: Improve help about setting levelsJonas Bernoulli
2025-01-08manual: Correct name of column-widths slotJonas Bernoulli
Also mention the type. Closes #345.
2025-01-03Release version 0.8.3v0.8.3Jonas Bernoulli
2025-01-03transient-version: New constantJonas Bernoulli
2025-01-03Require pp for pp-default-functionJonas Bernoulli
Backport of Emacs commit [1: 1d0c68fbdcb]. 1: 2024-08-05 1d0c68fbdcbfe0ab5f4e14882d8003f7b7d7d0a0 ; * lisp/transient.el: require pp to defvar pp-default-function
2025-01-01Release version 0.8.2v0.8.2Jonas Bernoulli
2025-01-01Regenerate manualJonas Bernoulli
2025-01-01Bump copyright yearsJonas Bernoulli
2024-12-24Define eieio--unbound as an alias for older EmacsenJonas Bernoulli
Closes #341.
2024-12-22Update changelogJonas Bernoulli
2024-12-19transient-describe: New commandJonas Bernoulli
Two examples: ("d" "show magit-status' docstring" transient-describe := magit-status) ("m" "show transient's manual" transient-describe := "transient" :helper transient--show-manual)
2024-12-19transient-toggle-docstrings: New commandJonas Bernoulli
2024-12-19transient-copy-menu-text: New commandJonas Bernoulli
2024-12-19transient-toggle-common: Make transientJonas Bernoulli
2024-12-19transient-toggle-common: Define using transient-define-suffixJonas Bernoulli
2024-12-19Use transient-default-value in transient-init-value(suffix)Jonas Bernoulli
2024-12-19transient--inapt-suffix-p: Return t if parent is inaptJonas Bernoulli
Instead of making the callers do it. One caller didn't do it before, which was a mistake.
2024-12-19Store parent group in suffix and subgroup objectsJonas Bernoulli
2024-12-18transient--show: No longer redo setup on every refreshJonas Bernoulli
2024-12-18transient--delete-window: Ensure buffer is always killedJonas Bernoulli
The transient window is expected to be alive when this function is called, so this shouldn't make a difference, but it also does not hurt to be a bit defensive.
2024-12-18transient--fit-window-to-buffer: Also fit horizontallyJonas Bernoulli
2024-12-18transient--insert-group(:around): Add ignored optional second argumentJonas Bernoulli
This is necessary when `transient-force-single-column' in non-nil.
2024-12-17Support including a top-level group from a variableJonas Bernoulli
The first prefixes to use this are `magit-{log,diff}{,-refresh}', which see.
2024-12-17transient-prefix: Remove unused variable slotJonas Bernoulli
2024-12-17transient--key-face: Take key into accountJonas Bernoulli
[1: fe71a7e7] only did so when determining the transient behavior. This commit takes care of also properly visualizing that behavior. - Take an additional KEY argument and pass it along to `transient--get-pre-command'. The previous commit [2: db9603be] added that argument to that function. - No longer prefer the command's `transient-face' symbol property, which we did since the very first implementation of this feature, added in [3: 248862c5]. Overriding the automatically determined face is counterproductive as it would counter binding-specific changes to the transient behavior and inapt predicate. We don't actually do this for any commands, so in practice this did not matter. - No longer define an around method, the primary method handles it all. It already did that before this commit. 1: 2024-12-15 fe71a7e7d63c1685d22b59e792c6b67cefebf2af Account for duplicated commands with different transient behavior 2: 2024-12-16 db9603bef9afc23b7c6df2483cf2295cd3ff34ab transient--get-pre-command: Change argument order 3: 2020-06-21 248862c58e3bc0c13c6e3315adc2f3bb43c3c476 Add experimental support for semantic coloring
2024-12-17transient--get-pre-command: Change argument orderJonas Bernoulli
KEY should be provided in most cases because CMD is not enough to identify the correct pre-command if a command is bound multiple times. The next commit will take care of that. ENFORCE-TYPE on the other hand is only necessary in a special case.
2024-12-15Account for duplicated commands with different transient behaviorJonas Bernoulli
Previously "b" could be used to invoke `transient-echo-arguments' in this example: (transient-define-prefix demo () [("a" transient-echo-arguments :inapt-if ignore) ("b" transient-echo-arguments :inapt-if always) ("c" transient-echo-arguments :inapt-if ignore)])
2024-12-12transient--display-action: Pre-calculate frame dimensionsJonas Bernoulli
When displaying the transient menu in a dedicated frame, calculate the approximate dimensions beforehand to avoid potentially massive flickering due to resizing and to improve placement.
2024-12-12transient--show: Fix remembering old no-other-window parameter valueJonas Bernoulli
2024-12-12transient--display-action: Look harder for disallowed functionJonas Bernoulli
2024-12-12transient--display-action: No longer restrict pre-prefix functionJonas Bernoulli
While using `display-buffer-full-frame' breaks most menus, it may make sense for certain menus.
2024-12-12transient--prefix-color: New functionJonas Bernoulli
One might, for example, use this as the frame border color when displaying the transient buffer in a dedicated frame.
2024-12-12Support using a dedicated frame to display transient bufferJonas Bernoulli
2024-12-08Release version 0.8.1v0.8.1Jonas Bernoulli
2024-12-08Restore ability to change a prefix's levelJonas Bernoulli
In [1: 1b7f9be7] we intentionally started signaling an error in `transient-suffix-object' if no object can be determined, to learn whether there actually are any callers for which it actually make sense to return nil instead. Now we know about one, but I am still not sure whether that should be a valid use-case, so we keep the error for now, but ignore the error in this one case. Closes #337. 1: 2024-11-02 1b7f9be7b9fbc8acb5d71f028b19e1f78d9dd090 transient-suffix-object: Drop faulty fallback behavior
2024-12-06Release version 0.8.0v0.8.0Jonas Bernoulli
2024-12-06Update manualJonas Bernoulli
2024-12-06Update some doc-stringsJonas Bernoulli
2024-12-06transient-default-value: Remove transient-suffix methodJonas Bernoulli
In [1: eff2245b] we stopped defining default methods using `cl-defgeneric' and added explicit default methods were this seemed necessary, including for this function. Turns out it is not necessary in this case and even misleading, because for `transient-suffix' objects, `transient-init-value' does not actually use `transient-default-value', only for prefix objects. In the event that someone implements a `transient-init-value' method and that uses `transient-default-value', but fails to implement the corresponding method for the latter, that now results in an informative error message (instead of nil being used silently). (In the future we might want to start using `transient-default-value' for `transient-suffix' objects as well, but that will/would require changes to existing `transient-init-value' methods and thus shouldn't be done hastily.) 1: 2024-12-05 eff2245b73ceb471afb0d74c78bf57994767d5b0 Never use cl-defgeneric to define the default method
2024-12-05Never use cl-defgeneric to define the default methodJonas Bernoulli
2024-12-03manual: Document transient-save-historyJonas Bernoulli
2024-12-03manual: Document in transient-show-common-commands "Essential Options"Jonas Bernoulli
Keep the existing description in "Common Suffix Commands".
2024-12-03manual: Move two more options to "Essential Options"Jonas Bernoulli
2024-12-03transient-scope: Deal with PREFIXES beginning with non-existent prefixJonas Bernoulli
2024-12-02transient--stack-push: Preserve the valueJonas Bernoulli
Since [1: 179545a6] we re-initialize suffixes when returning to the outer prefix, that also resulted in the value of the prefix and the values of the suffixes being re-initialized. We can prevent that by storing the value on the prefix stack, as we are already doing for the scope. The value of a prefix's `value' slot is not updated when the user changes the value of a suffix, so we cannot use the current value of that. Instead we have to collect the up-to-date value from the suffixes. Closes #333. 1: 2024-11-13 179545a6e29899aa89cbd77962a1c882f45927ca Re-initialize suffixes when returning to :refresh-suffixes prefix
2024-12-02Fix typos in documentationJonas Bernoulli
2024-12-01fixup(e3e2e111): Improve options for showing menu during minibuffer useJonas Bernoulli
2024-12-01transient-prefix: Add mode-line-format slotJoseph Turner
2024-12-01transient-prefix: Add display-action slotJoseph Turner
This change lets each transient-prefix display according to its own display-buffer-action. Closes #303.