branch: elpa/casual
commit 323fbac6154b10dc484f76b98798f7f60f47b018
Author: Charles Choi <[email protected]>
Commit: Charles Choi <[email protected]>

    Add RET binding for EditKit and Image menus
    
    - Add RET binding for "Done" in EditKit and Image menus.
    - lisp/casual-calc-variables.el: (casual-calc-variable-crud-tmenu) 
Re-layout and
    tune transient behavior.
    - Fixed test for casual-calc-variable-crud-tmenu.
    - lisp/casual-lib.el: Fix checkdoc error.
---
 lisp/casual-calc-variables.el       | 31 ++++++++++++++++---------------
 lisp/casual-calendar-constants.el   |  4 ++--
 lisp/casual-calendar-utils.el       |  4 ++--
 lisp/casual-calendar.el             |  4 ++--
 lisp/casual-css.el                  |  2 +-
 lisp/casual-csv-utils.el            |  4 ++--
 lisp/casual-editkit-constants.el    | 10 ++--------
 lisp/casual-editkit-utils.el        | 35 ++++++++++-------------------------
 lisp/casual-elisp.el                |  2 +-
 lisp/casual-help.el                 |  2 +-
 lisp/casual-html.el                 |  4 ++--
 lisp/casual-image-utils.el          |  3 ++-
 lisp/casual-image.el                |  3 ++-
 lisp/casual-lib.el                  |  2 +-
 lisp/casual-make-utils.el           |  2 +-
 lisp/casual-man-utils.el            |  2 +-
 tests/test-casual-calc-variables.el | 37 ++++---------------------------------
 17 files changed, 52 insertions(+), 99 deletions(-)

diff --git a/lisp/casual-calc-variables.el b/lisp/casual-calc-variables.el
index 30b9d5e620..61bca62542 100644
--- a/lisp/casual-calc-variables.el
+++ b/lisp/casual-calc-variables.el
@@ -1,6 +1,6 @@
 ;;; casual-calc-variables.el --- Casual Variable Menu     -*- lexical-binding: 
t; -*-
 
-;; Copyright (C) 2024-2025  Charles Y. Choi
+;; Copyright (C) 2024-2026  Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
@@ -35,22 +35,23 @@
 Operations to store, recall, clear, and edit variables are provided by this
 menu."
   ["Variable Operations"
-   ("s" "Store (𝟣:)…" casual-calc--store :transient t)
-   ("r" "Recall…" casual-calc--recall :transient t)
-   ("c" "Clear…" casual-calc--unstore :transient t)
-   ("e" "Edit…" casual-calc--edit-variable :transient nil)
-   ("o" "Copy to other variable…" casual-calc--copy-variable :transient t)
-   ("x" "Exchange (𝟣:) to variable…" casual-calc--store-exchange :transient t)
-   ("p" "Persist…" casual-calc--permanent-variable :transient t)
-   ("O" "Open Calc Settings File" casual-calc-open-settings-file :transient 
nil)
-   ("i" "Insert variables into buffer…" casual-calc--insert-variables 
:transient t)]
+   [("s" "Store (𝟣:)…" casual-calc--store :transient nil)
+    ("r" "Recall…" casual-calc--recall :transient nil)
+    ("c" "Clear…" casual-calc--unstore :transient nil)]
+   [("e" "Edit…" casual-calc--edit-variable :transient nil)
+    ("o" "Copy to other variable…" casual-calc--copy-variable :transient t)
+    ("x" "Exchange (𝟣:) to variable…" casual-calc--store-exchange :transient 
t)]
+
+   [("p" "Persist…" casual-calc--permanent-variable :transient t)
+    ("O" "Open Calc Settings File" casual-calc-open-settings-file :transient 
nil)
+    ("i" "Insert variables into buffer…" casual-calc--insert-variables 
:transient nil)]]
 
   [:class transient-row
-          (casual-lib-quit-one)
-          (casual-calc-algebraic-entry)
-          (casual-calc-pop)
-          (casual-calc-undo-suffix)
-          (casual-lib-quit-all)])
+   (casual-lib-quit-one)
+   (casual-calc-algebraic-entry)
+   (casual-calc-pop)
+   (casual-calc-undo-suffix)
+   (casual-lib-quit-all)])
 
 (provide 'casual-calc-variables)
 ;;; casual-calc-variables.el ends here
diff --git a/lisp/casual-calendar-constants.el 
b/lisp/casual-calendar-constants.el
index 5463519286..4f25586dd3 100644
--- a/lisp/casual-calendar-constants.el
+++ b/lisp/casual-calendar-constants.el
@@ -1,6 +1,6 @@
 ;;; casual-calendar-constants.el --- Casual Calendar Constants -*- 
lexical-binding: t; -*-
 
-;; Copyright (C) 2024-2025  Charles Y. Choi
+;; Copyright (C) 2024-2026 Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: calendar
@@ -143,7 +143,7 @@ plain ASCII-range string."
 (transient-define-group casual-calendar--menu-navigation-group
   [:class transient-row
    (casual-lib-quit-one)
-   ("RET" "Dismiss" transient-quit-all)
+   ("RET" "Done" transient-quit-all)
    (casual-lib-quit-all)])
 
 (provide 'casual-calendar-constants)
diff --git a/lisp/casual-calendar-utils.el b/lisp/casual-calendar-utils.el
index 7f60daeb1f..ebc9d9e3fd 100644
--- a/lisp/casual-calendar-utils.el
+++ b/lisp/casual-calendar-utils.el
@@ -1,6 +1,6 @@
 ;;; casual-calendar-utils.el --- Casual Calendar Utils -*- lexical-binding: t; 
-*-
 
-;; Copyright (C) 2024-2025 Charles Y. Choi
+;; Copyright (C) 2024-2026 Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
@@ -85,7 +85,7 @@ specific supported non-Gregorian calendar system behavior."
 
   [:class transient-row
    (casual-lib-quit-one)
-   ("RET" "Dismiss" transient-quit-all)
+   ("RET" "Done" transient-quit-all)
    ("I" "ⓘ Info" (lambda ()
                    (interactive)
                    (calendar-exit)
diff --git a/lisp/casual-calendar.el b/lisp/casual-calendar.el
index 03598ec0e9..671878b2fc 100644
--- a/lisp/casual-calendar.el
+++ b/lisp/casual-calendar.el
@@ -1,6 +1,6 @@
 ;;; casual-calendar.el --- Transient UI for Calendar -*- lexical-binding: t; 
-*-
 
-;; Copyright (C) 2024-2025  Charles Y. Choi
+;; Copyright (C) 2024-2026  Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
@@ -93,7 +93,7 @@ Main menu for `calendar' commands.
 
   [:class transient-row
    (casual-lib-quit-one)
-   ("RET" "Dismiss" transient-quit-all)
+   ("RET" "Done" transient-quit-all)
    ("I" "ⓘ Info" (lambda ()
                    (interactive)
                    (calendar-exit)
diff --git a/lisp/casual-css.el b/lisp/casual-css.el
index daadbce9e6..fb420217a7 100644
--- a/lisp/casual-css.el
+++ b/lisp/casual-css.el
@@ -66,7 +66,7 @@ Transient menu to commands provided by `css-mode'."
   [:class transient-row
    (casual-lib-quit-one)
    ("," "Settings" casual-css-settings-tmenu)
-   ("RET" "Dismiss" transient-quit-all)
+   ("RET" "Done" transient-quit-all)
    (casual-lib-quit-all)])
 
 (provide 'casual-css)
diff --git a/lisp/casual-csv-utils.el b/lisp/casual-csv-utils.el
index 4569351d3e..7805d575e9 100644
--- a/lisp/casual-csv-utils.el
+++ b/lisp/casual-csv-utils.el
@@ -1,6 +1,6 @@
 ;;; casual-csv-utils.el --- Casual CSV Utils -*- lexical-binding: t; -*-
 
-;; Copyright (C) 2025 Charles Y. Choi
+;; Copyright (C) 2026 Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
@@ -98,7 +98,7 @@ plain ASCII-range string."
 
   [:class transient-row
           (casual-lib-quit-one)
-          ("RET" "Dismiss" casual-lib-quit-all)
+          ("RET" "Done" casual-lib-quit-all)
           (casual-lib-quit-all)])
 
 (provide 'casual-csv-utils)
diff --git a/lisp/casual-editkit-constants.el b/lisp/casual-editkit-constants.el
index 84d3272094..b60b80a19e 100644
--- a/lisp/casual-editkit-constants.el
+++ b/lisp/casual-editkit-constants.el
@@ -1,6 +1,6 @@
 ;;; casual-editkit-constants.el --- Constants file for Casual EditKit  -*- 
lexical-binding: t; -*-
 
-;; Copyright (C) 2024-2025  Charles Y. Choi
+;; Copyright (C) 2024-2026  Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools, wp
@@ -68,13 +68,7 @@ plain ASCII-range string."
   [:class transient-row
    (casual-lib-quit-one)
    ("U" "Undo" undo :transient t)
-   (casual-lib-quit-all)])
-
-(transient-define-group casual-editkit-navigation-group-with-return
-  [:class transient-row
-   (casual-lib-quit-one)
-   ("U" "Undo" undo :transient t)
-   ("RET" "Dismiss" transient-quit-all)
+   ("RET" "Done" transient-quit-all)
    (casual-lib-quit-all)])
 
 ;; Transient cursor navigation group for Casual EditKit menus.
diff --git a/lisp/casual-editkit-utils.el b/lisp/casual-editkit-utils.el
index 62dbc9123f..49d8003a7f 100644
--- a/lisp/casual-editkit-utils.el
+++ b/lisp/casual-editkit-utils.el
@@ -1,6 +1,6 @@
 ;;; casual-editkit-utils.el --- Casual Bookmarks Utils -*- lexical-binding: t; 
-*-
 
-;; Copyright (C) 2024-2025 Charles Y. Choi
+;; Copyright (C) 2024-2026 Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools, wp
@@ -235,12 +235,7 @@ Commands pertaining to editing operations can be accessed 
here."
     ("r" "Reformat›" casual-editkit-reformat-tmenu
      :if-not (lambda () buffer-read-only))]]
 
-
-  [:class transient-row
-   (casual-lib-quit-one)
-   ("RET" "Done" transient-quit-all)
-   ("U" "Undo" undo :transient t)
-   (casual-lib-quit-all)])
+  casual-editkit-navigation-group)
 
 ;;;###autoload (autoload 'casual-editkit-emoji-symbols-tmenu 
"casual-editkit-utils" nil t)
 (transient-define-prefix casual-editkit-emoji-symbols-tmenu ()
@@ -313,11 +308,7 @@ inserting common miscellaneous symbols."
    ("t" "™" (lambda () "Insert trademark sign."
               (interactive) (insert "™")))]
 
-  [:class transient-row
-   (casual-lib-quit-one)
-   ("RET" "Done" transient-quit-all)
-   ("U" "Undo" undo :transient t)
-   (casual-lib-quit-all)])
+  casual-editkit-navigation-group)
 
 ;;;###autoload (autoload 'casual-editkit-mark-tmenu "casual-editkit-utils" nil 
t)
 (transient-define-prefix casual-editkit-mark-tmenu ()
@@ -444,8 +435,7 @@ Commands pertaining to move word operations can be accessed 
here."
   ["Move Word"
    :class transient-row
    ("b" "Backward"  casual-editkit-move-word-backward :transient t)
-   ("f" "Forward"  casual-editkit-move-word-forward :transient t)
-   ("RET" "Done" transient-quit-all)]
+   ("f" "Forward"  casual-editkit-move-word-forward :transient t)]
   casual-editkit-cursor-navigation-group
   casual-editkit-navigation-group)
 
@@ -456,8 +446,7 @@ Commands pertaining to move sentence operations can be 
accessed here."
   ["Move Sentence"
    :class transient-row
    ("b" "Backward"  casual-editkit-move-sentence-backward :transient t)
-   ("f" "Forward"  casual-editkit-move-sentence-forward :transient t)
-   ("RET" "Done" transient-quit-all)]
+   ("f" "Forward"  casual-editkit-move-sentence-forward :transient t)]
   casual-editkit-cursor-navigation-group
   casual-editkit-navigation-group)
 
@@ -469,8 +458,7 @@ can be accessed here."
   ["Move Sexp"
    :class transient-row
    ("b" "Backward"  casual-editkit-move-sexp-backward :transient t)
-   ("f" "Forward"  casual-editkit-move-sexp-forward :transient t)
-   ("RET" "Done" transient-quit-all)]
+   ("f" "Forward"  casual-editkit-move-sexp-forward :transient t)]
   casual-editkit-cursor-navigation-group
   casual-editkit-navigation-group)
 
@@ -559,12 +547,11 @@ Commands pertaining to window management operations can 
be accessed here."
     :if casual-editkit-package-transpose-frame-installed-p
     ("t" "Transpose" casual-editkit-transpose-frame)]]
 
-  casual-editkit-navigation-group-with-return)
+  casual-editkit-navigation-group)
 
 ;;;###autoload (autoload 'casual-editkit-windows-delete-tmenu 
"casual-editkit-utils" nil t)
 (transient-define-prefix casual-editkit-windows-delete-tmenu ()
   "Menu for ‘Window Delete’ commands.
-
 Commands pertaining to window deletion operations can be
 accessed here."
   ["Delete Window"
@@ -580,7 +567,7 @@ accessed here."
    [("f" "To Right" windmove-delete-right
      :description (lambda () (casual-editkit-unicode-get :window-right)))]]
 
-   casual-editkit-navigation-group-with-return)
+   casual-editkit-navigation-group)
 
 ;;;###autoload (autoload 'casual-editkit-bookmarks-tmenu 
"casual-editkit-utils" nil t)
 (transient-define-prefix casual-editkit-bookmarks-tmenu ()
@@ -745,7 +732,7 @@ Commands pertaining to rectangle operations can be accessed 
here."
      :inapt-if-not use-region-p
      :transient t)]]
   casual-editkit-cursor-navigation-group
-  casual-editkit-navigation-group-with-return)
+  casual-editkit-navigation-group)
 
 ;;;###autoload (autoload 'casual-editkit-transform-text-tmenu 
"casual-editkit-utils" nil t)
 (transient-define-prefix casual-editkit-transform-text-tmenu ()
@@ -759,9 +746,7 @@ Commands pertaining to transformation operations can be 
accessed here."
      :inapt-if-not use-region-p)]
 
    [("l" "Make Lower Case" downcase-dwim :transient t)
-    ("u" "Make Upper Case" upcase-dwim :transient t)]
-
-   [("RET" "Done" transient-quit-all)]]
+    ("u" "Make Upper Case" upcase-dwim :transient t)]]
   casual-editkit-cursor-navigation-group
   casual-editkit-navigation-group)
 
diff --git a/lisp/casual-elisp.el b/lisp/casual-elisp.el
index e536ebef30..82c354c61f 100644
--- a/lisp/casual-elisp.el
+++ b/lisp/casual-elisp.el
@@ -104,7 +104,7 @@
    (casual-lib-quit-one)
    (casual-lib-quit-all)
    ("," "Settings›" casual-elisp-settings-tmenu)
-   ("RET" "Dismiss" transient-quit-all)])
+   ("RET" "Done" transient-quit-all)])
 
 (provide 'casual-elisp)
 ;;; casual-elisp.el ends here
diff --git a/lisp/casual-help.el b/lisp/casual-help.el
index a5afa01017..13a4d8f0e1 100644
--- a/lisp/casual-help.el
+++ b/lisp/casual-help.el
@@ -1,6 +1,6 @@
 ;;; casual-help.el --- Transient UI for Help -*- lexical-binding: t; -*-
 
-;; Copyright (C) 2025  Charles Y. Choi
+;; Copyright (C) 2025-2026 Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
diff --git a/lisp/casual-html.el b/lisp/casual-html.el
index c43624d5ee..d9a78efccb 100644
--- a/lisp/casual-html.el
+++ b/lisp/casual-html.el
@@ -104,7 +104,7 @@ For more documentation, refer to the following links:
    (casual-lib-quit-one)
    ("," "Settings" casual-html-settings-tmenu)
    ("I" "ⓘ" casual-html-info)
-   ("RET" "Dismiss" transient-quit-all)
+   ("RET" "Done" transient-quit-all)
    (casual-lib-quit-all)])
 
 
@@ -166,7 +166,7 @@ This menu provides an interface to HTML-specific commands 
provided by
 
   [:class transient-row
    (casual-lib-quit-one)
-   ("RET" "Dismiss" transient-quit-all)
+   ("RET" "Done" transient-quit-all)
    (casual-lib-quit-all)])
 
 (provide 'casual-html)
diff --git a/lisp/casual-image-utils.el b/lisp/casual-image-utils.el
index a00fb2e970..c8fc9afa07 100644
--- a/lisp/casual-image-utils.el
+++ b/lisp/casual-image-utils.el
@@ -1,6 +1,6 @@
 ;;; casual-image-utils.el --- Casual Image Utils     -*- lexical-binding: t; 
-*-
 
-;; Copyright (C) 2025  Charles Choi
+;; Copyright (C) 2025-2026 Charles Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
@@ -214,6 +214,7 @@ Menu resizing an image."
 
   [:class transient-row
    (casual-lib-quit-one)
+   ("RET" "Done" transient-quit-all)
    (casual-lib-quit-all)])
 
 (provide 'casual-image-utils)
diff --git a/lisp/casual-image.el b/lisp/casual-image.el
index 15dec07799..3e05893f14 100644
--- a/lisp/casual-image.el
+++ b/lisp/casual-image.el
@@ -1,6 +1,6 @@
 ;;; casual-image.el --- Casual Image                 -*- lexical-binding: t; 
-*-
 
-;; Copyright (C) 2025  Charles Choi
+;; Copyright (C) 2025-2026 Charles Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
@@ -112,6 +112,7 @@
    (casual-lib-quit-one)
    ("I" "Identify" casual-image--indentify-verbose)
    ("," "Settings›" casual-image-settings-tmenu)
+   ("RET" "Done" transient-quit-all)
    (casual-lib-quit-all)
    ("q" "Quit View" quit-window)])
 
diff --git a/lisp/casual-lib.el b/lisp/casual-lib.el
index fe56ea5abb..d7000235d4 100644
--- a/lisp/casual-lib.el
+++ b/lisp/casual-lib.el
@@ -160,7 +160,7 @@ new buffer. This can be avoided if a prefix ARG is 
provided."
 
   (let ((filename (buffer-file-name)))
     (unless filename
-      (error "This command only works on a file."))
+      (error "This command only works on a file"))
 
     (let* ((extension (file-name-extension filename t))
            (target (format "%s copy%s"
diff --git a/lisp/casual-make-utils.el b/lisp/casual-make-utils.el
index 2134b71d6d..e91abbb84d 100644
--- a/lisp/casual-make-utils.el
+++ b/lisp/casual-make-utils.el
@@ -232,7 +232,7 @@ For more info, refer to info node `(make) Automatic 
Variables'."
   [:class transient-row
    (casual-lib-quit-one)
    (casual-lib-quit-all)
-   ("RET" "Dismiss" casual-lib-quit-all)
+   ("RET" "Done" casual-lib-quit-all)
    ("i" "Info" (lambda () (interactive) (info "(make) Automatic Variables")))])
 
 (provide 'casual-make-utils)
diff --git a/lisp/casual-man-utils.el b/lisp/casual-man-utils.el
index 02b34eb4d7..42946813a9 100644
--- a/lisp/casual-man-utils.el
+++ b/lisp/casual-man-utils.el
@@ -1,6 +1,6 @@
 ;;; casual-man-utils.el --- Casual Man Utils -*- lexical-binding: t; -*-
 
-;; Copyright (C) 2025 Charles Y. Choi
+;; Copyright (C) 2025-2026 Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
diff --git a/tests/test-casual-calc-variables.el 
b/tests/test-casual-calc-variables.el
index 31a8bd8df0..4a6b245c39 100644
--- a/tests/test-casual-calc-variables.el
+++ b/tests/test-casual-calc-variables.el
@@ -1,6 +1,6 @@
 ;;; test-casual-calc-variables.el --- Test Casual Variables  -*- 
lexical-binding: t; -*-
 
-;; Copyright (C) 2024-2025  Charles Y. Choi
+;; Copyright (C) 2024-2026 Charles Y. Choi
 
 ;; Author: Charles Choi <[email protected]>
 ;; Keywords: tools
@@ -27,37 +27,6 @@
 (require 'casual-calc-test-utils)
 (require 'casual-calc-variables)
 
-(ert-deftest test-casual-calc-variable-crud-tmenu-integration ()
-  (casualt-calc-setup)
-
-  (calc-push-list '(25))
-  (funcall 'casual-calc-variable-crud-tmenu)
-  ;; test (s) calc-store
-  (execute-kbd-macro "sfoo
")
-  (should (= (calc-var-value 'var-foo) 25))
-  (calc-pop-stack (calc-stack-size))
-
-  ;; test (r) calc-recall
-  (execute-kbd-macro "rfoo
")
-  (should (= (calc-top) 25))
-
-  ;; test (o) calc-copy-variable
-  (execute-kbd-macro "ofoo
jane
")
-  (should (= (calc-var-value 'var-jane) 25))
-
-  ;; test (c) calc-unstore
-  (execute-kbd-macro "cfoo
")
-  (should (not (calc-var-value 'var-foo)))
-
-  ;; test (x) calc-store-exchange
-  (calc-push-list '(32))
-  (execute-kbd-macro "xjane
")
-  (should (= (calc-var-value 'var-jane) 32))
-
-  ;; TODO: punting on calc-edit-variable
-  ;; TODO: punting on calc-permanent-variable
-  ;; TODO: punting on calc-insert-variables
-  (casualt-calc-breakdown t))
 
 (ert-deftest test-casual-calc-variable-crud-tmenu ()
   (casualt-calc-setup)
@@ -73,7 +42,9 @@
     (casualt-suffix-testbench-runner test-vectors
                                      #'casual-calc-variable-crud-tmenu
                                      '(lambda () (random 5000))))
-  (casualt-calc-breakdown t t))
+  )
+
+
 
 (provide 'test-casual-calc-variables)
 ;;; test-casual-calc-variables.el ends here

Reply via email to