* 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