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