[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/helm a5cd0b702c 4/4: Fix concat kmacros for emacs-29
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/helm a5cd0b702c 4/4: Fix concat kmacros for emacs-29 |
Date: |
Sat, 14 Oct 2023 04:02:07 -0400 (EDT) |
branch: elpa/helm
commit a5cd0b702c89c68088d893483fed81c4bbda2bcb
Author: Thierry Volpiatto <thievol@posteo.net>
Commit: Thierry Volpiatto <thievol@posteo.net>
Fix concat kmacros for emacs-29
---
helm-ring.el | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/helm-ring.el b/helm-ring.el
index 059a72ff3b..be4b57958a 100644
--- a/helm-ring.el
+++ b/helm-ring.el
@@ -603,15 +603,20 @@ See (info \"(emacs) Keyboard Macros\") for detailed
infos."
(when (cdr mkd)
(kmacro-push-ring)
(setq last-kbd-macro
- (mapconcat 'identity
- (cl-loop for km in mkd
- if (vectorp km)
- append (cl-loop for k across km collect
- (key-description (vector k)))
- into result
- else collect (car km) into result
- finally return result)
- "")))))
+ (vconcat
+ (cl-loop for km in mkd
+ for keys = (pcase km
+ ((pred vectorp) km)
+ ((and closure
+ (guard
+ (eq (oclosure-type closure)
+ 'kmacro)))
+ (kmacro--keys km))
+ (_ (car km)))
+ if (vectorp keys)
+ vconcat keys into result
+ else collect keys into result
+ finally return result))))))
(defun helm-kbd-macro-delete-macro (_candidate)
(let ((mkd (helm-marked-candidates))