[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/transient 3284f6a0fe 213/366: transient-init-value: Sup
From: |
Jonas Bernoulli |
Subject: |
[elpa] externals/transient 3284f6a0fe 213/366: transient-init-value: Support per-object functions for prefixes |
Date: |
Tue, 25 Jan 2022 18:54:42 -0500 (EST) |
branch: externals/transient
commit 3284f6a0fe10cede4e5139f87645bc517d5893f7
Author: Jonas Bernoulli <jonas@bernoul.li>
Commit: Jonas Bernoulli <jonas@bernoul.li>
transient-init-value: Support per-object functions for prefixes
This is identical to the implementation for infixes and one could
therefore be tempted to "simplify" matters by actually complicating
them, but I prefer to "embrace the boilerplate" instead.
---
lisp/transient.el | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/lisp/transient.el b/lisp/transient.el
index e11dfa7fd4..8ef0458feb 100644
--- a/lisp/transient.el
+++ b/lisp/transient.el
@@ -539,6 +539,7 @@ If `transient-save-history' is nil, then do nothing."
(command :initarg :command)
(level :initarg :level)
(variable :initarg :variable :initform nil)
+ (init-value :initarg :init-value)
(value) (default-value :initarg :value)
(scope :initarg :scope :initform nil)
(history :initarg :history :initform nil)
@@ -2329,6 +2330,13 @@ abstract `transient-infix' class must implement this
function.
Non-infix suffix commands usually don't have a value."
nil)
+(cl-defmethod transient-init-value :around ((obj transient-prefix))
+ "If bound, then call OBJ's `init-value' function.
+Otherwise call the primary method according to objects class."
+ (if (slot-boundp obj 'init-value)
+ (funcall (oref obj init-value) obj)
+ (cl-call-next-method obj)))
+
(cl-defmethod transient-init-value :around ((obj transient-infix))
"If bound, then call OBJ's `init-value' function.
Otherwise call the primary method according to objects class."
- [elpa] externals/transient 32459a4dde 074/366: Bring back arrow key navigation in transient popups, (continued)
- [elpa] externals/transient 32459a4dde 074/366: Bring back arrow key navigation in transient popups, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient 23fab3a114 075/366: Bring back mouse support in transient popups, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient b52c9652fa 077/366: Update manual, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient dcf7a4dc62 084/366: transient-read-with-initial-input: New option, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient fd9e9bfe26 088/366: transient--layout-member-1: New function, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient ac02efc119 157/366: transient--scroll-commands: New variable, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient 9683e8add2 165/366: transient--do-suffix-p: New function, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient ec2de622d2 171/366: transient-suffix-object: Check type of argument, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient bcd07e065b 172/366: transient--suffix-symbol: Split from transient--suffix-command, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient 293a437d66 206/366: Support padding of keys regardless of the group's class, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient 3284f6a0fe 213/366: transient-init-value: Support per-object functions for prefixes,
Jonas Bernoulli <=
- [elpa] externals/transient 809fd048b1 223/366: transient--insert-suffix: Add comments, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient fd2695d12c 217/366: transient--with-emergency-exit: Wrap default debug function, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient f086cb620b 224/366: transient--insert-suffix: Allow same key with different predicates, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient 7811dcff82 226/366: Add /docs/*.info to .gitignore, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient 8ad5fb83c4 227/366: Remove async-bytecomp kludge, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient d48f2451ec 232/366: transient--pre-exit: Don't log clearing of minibuffer, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient 48335f8370 237/366: transient-status: Prevent use while minibuffer is active, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient baebe85ceb 239/366: manual: Deal with texinfo cross reference idiocy, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient 8c28b8a4fa 242/366: transient-prefix: Do not initially bind SUFFIX-DESCRIPTION, Jonas Bernoulli, 2022/01/25
- [elpa] externals/transient cc16a5eaa7 244/366: transient-{, base-}map: Mention related keymaps in doc-string, Jonas Bernoulli, 2022/01/25