| Age | Commit message (Collapse) | Author |
|
|
|
|
|
Also mention the type.
Closes #345.
|
|
|
|
|
|
Backport of Emacs commit [1: 1d0c68fbdcb].
1: 2024-08-05 1d0c68fbdcbfe0ab5f4e14882d8003f7b7d7d0a0
; * lisp/transient.el: require pp to defvar pp-default-function
|
|
|
|
|
|
|
|
Closes #341.
|
|
|
|
Two examples:
("d" "show magit-status' docstring" transient-describe := magit-status)
("m" "show transient's manual" transient-describe := "transient"
:helper transient--show-manual)
|
|
|
|
|
|
|
|
|
|
|
|
Instead of making the callers do it. One caller didn't do it before,
which was a mistake.
|
|
|
|
|
|
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.
|
|
|
|
This is necessary when `transient-force-single-column' in non-nil.
|
|
The first prefixes to use this are `magit-{log,diff}{,-refresh}',
which see.
|
|
|
|
[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
|
|
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.
|
|
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)])
|
|
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.
|
|
|
|
|
|
While using `display-buffer-full-frame' breaks most menus, it may
make sense for certain menus.
|
|
One might, for example, use this as the frame border color
when displaying the transient buffer in a dedicated frame.
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
Keep the existing description in "Common Suffix Commands".
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
This change lets each transient-prefix display according to its own
display-buffer-action.
Closes #303.
|