* lisp/ox.el (org-export--dispatch-action): Translate down/up arrow
keys and scroll wheel to C-n/C-p, respectively.
* etc/ORG-NEWS (Fancy HTML5 export uses ~<time>~ element for
timestamps): Document the change from the perspective of the user.
---
 etc/ORG-NEWS |  6 ++++++
 lisp/ox.el   | 19 ++++++++++++++++---
 2 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS
index 08d2bd938..cff82ba55 100644
--- a/etc/ORG-NEWS
+++ b/etc/ORG-NEWS
@@ -698,6 +698,12 @@ additionally set the ~datetime~ attribute with a machine 
readable
 variant of the timestamp. The format used for the attribute can be
 customized using ~org-html-datetime-formats~.
 
+*** Export dispatcher supports arrow keys and mouse wheel
+
+Previously, the arrow keys and the mouse wheel were ignored in the
+export dispatcher, ~org-export-dispatch~ bound to =C-c C-e=.  Now,
+they scroll the text in the export dispatcher window.
+
 * Version 9.7
 
 ** Important announcements and breaking changes
diff --git a/lisp/ox.el b/lisp/ox.el
index d95e031e8..76af098d4 100644
--- a/lisp/ox.el
+++ b/lisp/ox.el
@@ -7447,9 +7447,22 @@ (defun org-export--dispatch-action
 a list with action as CAR and a list of interactive export
 options as CDR."
   (let (key)
-    ;; Scrolling: when in non-expert mode, act on motion keys (C-n,
-    ;; C-p, SPC, DEL).
-    (while (and (setq key (read-char-exclusive prompt))
+    ;; Scrolling: When in non-expert mode, act on motion keys (C-n,
+    ;; C-p, SPC, DEL), and translate down/up arrow keys and scroll
+    ;; wheel to C-n/C-p, respectively.
+    (while (and (setq key
+                      (pcase (read-event prompt)
+                        ((or 'up
+                             `(wheel-up . ,_)
+                             `(double-wheel-up . ,_)
+                             `(triple-wheel-up . ,_))
+                         ?\C-p)
+                        ((or 'down
+                             `(wheel-down . ,_)
+                             `(double-wheel-down . ,_)
+                             `(triple-wheel-down . ,_))
+                         ?\C-n)
+                        (event event)))
                (not expertp)
                ;; FIXME: Don't use C-v (22) here, as it is used as a
                ;; modifier key in the export dispatch.
-- 
2.50.1


Reply via email to