]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix todo-mode item insertion bug (bug#78506)
authorStephen Berman <stephen.berman@gmx.net>
Tue, 20 May 2025 13:29:58 +0000 (15:29 +0200)
committerEshel Yaron <me@eshelyaron.com>
Tue, 27 May 2025 14:26:20 +0000 (16:26 +0200)
* lisp/calendar/todo-mode.el (todo-insert-item--next-param): Unset
transient keymap on completing default or copy item insertion
command, to ensure that the next Todo mode key is recognized.

(cherry picked from commit e0c6f3e765684a7f6d93702ad3ca4abe2b802579)

lisp/calendar/todo-mode.el

index c18cb39ef9e123194b5a92bd176221b0de1a3408..5b9bf2d8e165eff8761d0afe24807aa694a1323e 100644 (file)
@@ -5819,7 +5819,13 @@ keys already entered and those still available."
       (if (memq last '(default copy))
          (progn
            (setq params0 nil)
-            (funcall gen-and-exec))
+            (funcall gen-and-exec)
+           ;; Since the item insertion command is now done, unset
+           ;; transient keymap to ensure the next Todo mode key is
+           ;; recognized (bug#78506).  (Only for "default" and "copy"
+           ;; parameters: for others, `last' may not yet be the final
+           ;; parameter, so the map must still be evaluated.)
+           (setq map nil))
         (let ((key (funcall key-of last)))
          (funcall add-to-prompt key (make-symbol
                                       (concat (symbol-name last) ":GO!")))