branch: elpa/casual
commit 2e7cd924cda20eae4af27153be59e33d9ecaf1b5
Merge: a84775d63b 77af6beb05
Author: Charles Choi <[email protected]>
Commit: GitHub <[email protected]>
Merge pull request #109 from
kickingvegas/merge-development-to-main-20241210_145946
Merge development to main 20241210_145946
---
docs/images/casual-dired-screenshot-unicode.png | Bin 392174 -> 393747 bytes
docs/images/casual-dired-screenshot.png | Bin 687768 -> 743719 bytes
docs/images/casual-editkit-tools-screenshot.png | Bin 165928 -> 205798 bytes
lisp/casual-dired-sort-by.el | 1 +
lisp/casual-dired-utils.el | 18 +++++++------
lisp/casual-dired.el | 5 ++--
lisp/casual-editkit-utils.el | 24 +++++++++++++++--
lisp/casual-ibuffer-filter.el | 1 +
lisp/casual-ibuffer.el | 1 +
lisp/casual-isearch.el | 1 +
lisp/casual.el | 2 +-
tests/test-casual-dired-utils.el | 33 +++++++++++++++---------
tests/test-casual-dired.el | 4 ++-
tests/test-casual-editkit-utils.el | 4 +++
14 files changed, 68 insertions(+), 26 deletions(-)
diff --git a/docs/images/casual-dired-screenshot-unicode.png
b/docs/images/casual-dired-screenshot-unicode.png
index 704b0d43a4..3e80a054a0 100644
Binary files a/docs/images/casual-dired-screenshot-unicode.png and
b/docs/images/casual-dired-screenshot-unicode.png differ
diff --git a/docs/images/casual-dired-screenshot.png
b/docs/images/casual-dired-screenshot.png
index 1c209b9f84..ac88063e6a 100644
Binary files a/docs/images/casual-dired-screenshot.png and
b/docs/images/casual-dired-screenshot.png differ
diff --git a/docs/images/casual-editkit-tools-screenshot.png
b/docs/images/casual-editkit-tools-screenshot.png
index eac3bdbf60..ddb159fa8f 100644
Binary files a/docs/images/casual-editkit-tools-screenshot.png and
b/docs/images/casual-editkit-tools-screenshot.png differ
diff --git a/lisp/casual-dired-sort-by.el b/lisp/casual-dired-sort-by.el
index f757d7b2f2..64e78049e2 100644
--- a/lisp/casual-dired-sort-by.el
+++ b/lisp/casual-dired-sort-by.el
@@ -53,6 +53,7 @@
(require 'casual-dired-utils)
(require 'casual-dired-variables)
+;;;###autoload (autoload 'casual-dired-sort-by-tmenu "casual-dired-sort-by"
nil t)
(transient-define-prefix casual-dired-sort-by-tmenu ()
"Transient menu to sort Dired buffer by different criteria.
diff --git a/lisp/casual-dired-utils.el b/lisp/casual-dired-utils.el
index 667e1bddae..4bd3612448 100644
--- a/lisp/casual-dired-utils.el
+++ b/lisp/casual-dired-utils.el
@@ -68,20 +68,22 @@ ASCII-range string."
(casual-lib-quit-one)
(casual-lib-quit-all)])
+;;;###autoload (autoload 'casual-dired-search-replace-tmenu
"casual-dired-utils" nil t)
(transient-define-prefix casual-dired-search-replace-tmenu ()
["Search & Replace"
["Search in Files"
:pad-keys t
- ("C-s" "I-search…" dired-do-isearch :transient nil)
- ("M-s" "I-search regexp…" dired-do-isearch-regexp :transient nil)
- ("s" "Search first regexp match…" dired-do-search :transient nil)]
-
- ["Replace in Files"
- ("r" "Query regexp and replace…" dired-do-query-replace-regexp :transient
nil)]]
+ ("C-s" "I-search…" dired-do-isearch)
+ ("M-s" "I-search regexp…" dired-do-isearch-regexp)
+ ("s" "Search first regexp match…" dired-do-search)]
+ ["Replace in Files"
+ ("r" "Query regexp and replace…" dired-do-query-replace-regexp)]]
["grep-style regex"
- ("g" "Find regex…" dired-do-find-regexp :transient nil)
- ("G" "Find regex and replace…" dired-do-find-regexp-and-replace :transient
nil)]
+ [("g" "Find regex…" dired-do-find-regexp)
+ ("G" "Find regex and replace…" dired-do-find-regexp-and-replace)]
+
+ [("f" "Find in files (rgrep)…" rgrep)]]
[:class transient-row
(casual-lib-quit-one)
diff --git a/lisp/casual-dired.el b/lisp/casual-dired.el
index 4c49346fed..61f195e7e9 100644
--- a/lisp/casual-dired.el
+++ b/lisp/casual-dired.el
@@ -102,7 +102,8 @@
("~" "Flag Backups" dired-flag-backup-files :transient t)
("x" "Delete Flagged" dired-do-flagged-delete :transient t)
("r" "Regexp›" casual-dired-regexp-tmenu :transient nil)
- ("#" "Utils›" casual-dired-utils-tmenu :transient nil)]
+ ("#" "Utils›" casual-dired-utils-tmenu :transient nil)
+ ("/" "Search & Replace›" casual-dired-search-replace-tmenu :transient nil)]
["Navigation"
:pad-keys t
@@ -190,7 +191,7 @@
:pad-keys t
("C-s" "I-Search…" dired-isearch-filenames :transient nil)
("M-s" "I-Search Regexp…" dired-isearch-filenames-regexp :transient nil)
- ("/" "Search & Replace›" casual-dired-search-replace-tmenu :transient nil)]
+ ("M-f" "Find in files (rgrep)…" rgrep)]
["New"
("+" "Directory" dired-create-directory :transient t)
diff --git a/lisp/casual-editkit-utils.el b/lisp/casual-editkit-utils.el
index af324ad975..e236b8b86f 100644
--- a/lisp/casual-editkit-utils.el
+++ b/lisp/casual-editkit-utils.el
@@ -114,6 +114,7 @@
(t "Magit Status"))
(message "Not a version controlled buffer.")))
+;;;###autoload (autoload 'casual-editkit-open-tmenu "casual-editkit-utils" nil
t)
(transient-define-prefix casual-editkit-open-tmenu ()
"Menu for ‘Open’ commands.
@@ -148,6 +149,7 @@ also available from here."
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-project-tmenu "casual-editkit-utils"
nil t)
(transient-define-prefix casual-editkit-project-tmenu ()
"Menu for ‘Project’ commands.
@@ -186,6 +188,7 @@ Commands pertaining to project operations can be accessed
here."
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-edit-tmenu "casual-editkit-utils" nil
t)
(transient-define-prefix casual-editkit-edit-tmenu ()
"Menu for ‘Edit’ commands.
@@ -233,6 +236,7 @@ Commands pertaining to editing operations can be accessed
here."
("U" "Undo" undo :transient t)
(casual-lib-quit-all)])
+;;;###autoload (autoload 'casual-editkit-emoji-symbols-tmenu
"casual-editkit-utils" nil t)
(transient-define-prefix casual-editkit-emoji-symbols-tmenu ()
"Menu for ‘Emoji & Symbols’ commands.
@@ -284,6 +288,7 @@ inserting common miscellaneous symbols."
("U" "Undo" undo :transient t)
(casual-lib-quit-all)])
+;;;###autoload (autoload 'casual-editkit-mark-tmenu "casual-editkit-utils" nil
t)
(transient-define-prefix casual-editkit-mark-tmenu ()
"Menu for ‘Mark’ commands.
@@ -298,6 +303,7 @@ Commands pertaining to marking operations can be accessed
here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-copy-tmenu "casual-editkit-utils" nil
t)
(transient-define-prefix casual-editkit-copy-tmenu ()
"Menu for ‘Copy’ commands.
@@ -315,6 +321,7 @@ Commands pertaining to copying can be accessed here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-kill-tmenu "casual-editkit-utils" nil
t)
(transient-define-prefix casual-editkit-kill-tmenu ()
"Menu for ‘Kill (Cut)’ commands.
@@ -331,6 +338,7 @@ Commands pertaining to kill ring operations can be accessed
here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-sort-tmenu "casual-editkit-utils" nil
t)
(transient-define-prefix casual-editkit-sort-tmenu ()
"Menu for ‘Sort’ commands.
@@ -350,6 +358,7 @@ Commands pertaining to sorting operations can be accessed
here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-transpose-tmenu
"casual-editkit-utils" nil t)
(transient-define-prefix casual-editkit-transpose-tmenu ()
"Menu for ‘Transpose’ commands.
@@ -365,6 +374,7 @@ Commands pertaining to transpose operations can be accessed
here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-delete-tmenu "casual-editkit-utils"
nil t)
(transient-define-prefix casual-editkit-delete-tmenu ()
"Menu for ‘Delete’ commands.
@@ -383,6 +393,7 @@ Commands pertaining to delete can be accessed here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-move-text-tmenu
"casual-editkit-utils" nil t)
(transient-define-prefix casual-editkit-move-text-tmenu ()
"Menu for ‘Move’ commands.
@@ -431,6 +442,7 @@ can be accessed here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-windows-tmenu "casual-editkit-utils"
nil t)
(transient-define-prefix casual-editkit-windows-tmenu ()
"Menu for ‘Window’ commands.
@@ -504,6 +516,7 @@ Commands pertaining to window management operations can be
accessed here."
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.
@@ -516,7 +529,7 @@ accessed here."
("f" "On Right" windmove-delete-right)]
[(casual-lib-quit-all)])
-
+;;;###autoload (autoload 'casual-editkit-bookmarks-tmenu
"casual-editkit-utils" nil t)
(transient-define-prefix casual-editkit-bookmarks-tmenu ()
"Menu for ‘Bookmarks’ commands.
@@ -528,6 +541,7 @@ accessed here."
("J" "Jump to Bookmark…" bookmark-jump)]
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-search-tmenu "casual-editkit-utils"
nil t)
(transient-define-prefix casual-editkit-search-tmenu ()
"Menu for ‘Search & Replace’ commands.
@@ -556,7 +570,7 @@ accessed here."
casual-editkit-navigation-group)
-
+;;;###autoload (autoload 'casual-editkit-tools-tmenu "casual-editkit-utils"
nil t)
(transient-define-prefix casual-editkit-tools-tmenu ()
"Menu for ‘Tools’ commands.
@@ -564,6 +578,8 @@ Commands pertaining to invoking different tools can be
accessed here."
["Tools"
["Shells & REPLs"
("s" "Shell" shell)
+ ("!" "Shell Command…" shell-command)
+ ("&" "Shell Command &…" async-shell-command)
("e" "Eshell" eshell)
("i" "IELM" ielm)
("t" "term" term)
@@ -593,6 +609,7 @@ Commands pertaining to invoking different tools can be
accessed here."
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-registers-tmenu
"casual-editkit-utils" nil t)
(transient-define-prefix casual-editkit-registers-tmenu ()
"Menu for ‘Registers’ commands.
@@ -618,6 +635,7 @@ Commands pertaining to register operations can be accessed
here."
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-rectangle-tmenu
"casual-editkit-utils" nil t)
(transient-define-prefix casual-editkit-rectangle-tmenu ()
"Menu for ‘Rectangle’ commands.
@@ -674,6 +692,7 @@ Commands pertaining to rectangle operations can be accessed
here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-transform-text-tmenu
"casual-editkit-utils" nil t)
(transient-define-prefix casual-editkit-transform-text-tmenu ()
"Menu for ‘Transform’ commands.
@@ -687,6 +706,7 @@ Commands pertaining to transformation operations can be
accessed here."
casual-editkit-cursor-navigation-group
casual-editkit-navigation-group)
+;;;###autoload (autoload 'casual-editkit-macro-tmenu "casual-editkit-utils"
nil t)
(transient-define-prefix casual-editkit-macro-tmenu ()
"Menu for ‘Macro’ commands.
diff --git a/lisp/casual-ibuffer-filter.el b/lisp/casual-ibuffer-filter.el
index 82b9465160..4a14e39733 100644
--- a/lisp/casual-ibuffer-filter.el
+++ b/lisp/casual-ibuffer-filter.el
@@ -63,6 +63,7 @@ The value from `ibuffer-saved-filter-groups' is used."
(advice-add #'ibuffer-update :after #'casual-ibuffer--ibuffer-update)
;; Transients
+;;;###autoload (autoload 'casual-ibuffer-filter-tmenu "casual-ibuffer-filter"
nil t)
(transient-define-prefix casual-ibuffer-filter-tmenu ()
"Casual IBuffer filter menu."
:refresh-suffixes t
diff --git a/lisp/casual-ibuffer.el b/lisp/casual-ibuffer.el
index 9acb94386a..0b22db7279 100644
--- a/lisp/casual-ibuffer.el
+++ b/lisp/casual-ibuffer.el
@@ -170,6 +170,7 @@
(casual-lib-quit-one)
(casual-lib-quit-all)])
+;;;###autoload (autoload 'casual-ibuffer-sortby-tmenu "casual-ibuffer" nil t)
(transient-define-prefix casual-ibuffer-sortby-tmenu ()
["IBuffer: Sort By"
[("v" "Recency" ibuffer-do-sort-by-recency)
diff --git a/lisp/casual-isearch.el b/lisp/casual-isearch.el
index 7961b47a4f..7e86b1734d 100644
--- a/lisp/casual-isearch.el
+++ b/lisp/casual-isearch.el
@@ -64,6 +64,7 @@
(isearch-toggle-symbol)
(isearch-edit-string))
+;;;###autoload (autoload 'casual-isearch-tmenu "casual-isearch" nil t)
(transient-define-prefix casual-isearch-tmenu ()
"Transient menu for I-Search."
[["Edit Search String"
diff --git a/lisp/casual.el b/lisp/casual.el
index 22a3f227d7..d60fa39949 100644
--- a/lisp/casual.el
+++ b/lisp/casual.el
@@ -5,7 +5,7 @@
;; Author: Charles Choi <[email protected]>
;; URL: https://github.com/kickingvegas/casual
;; Keywords: tools, wp
-;; Version: 2.2.2
+;; Version: 2.2.3-rc.1
;; Package-Requires: ((emacs "29.1") (transient "0.6.0"))
;; This program is free software; you can redistribute it and/or modify
diff --git a/tests/test-casual-dired-utils.el b/tests/test-casual-dired-utils.el
index 97ba3ddb91..1a8c1e1f08 100644
--- a/tests/test-casual-dired-utils.el
+++ b/tests/test-casual-dired-utils.el
@@ -48,19 +48,28 @@
(ert-deftest test-casual-dired-search-replace-tmenu-bindings ()
(casualt-dired-setup)
+ (cl-letf ((casualt-mock #'dired-do-find-regexp)
+ (casualt-mock #'dired-do-isearch)
+ (casualt-mock #'dired-do-isearch-regexp)
+ (casualt-mock #'dired-do-search)
+ (casualt-mock #'dired-do-query-replace-regexp)
+ (casualt-mock #'dired-do-find-regexp-and-replace)
+ (casualt-mock #'rgrep))
+
+ (let ((test-vectors
+ '((:binding "C-s" :command dired-do-isearch)
+ (:binding "M-s" :command dired-do-isearch-regexp)
+ (:binding "s" :command dired-do-search)
+ (:binding "r" :command dired-do-query-replace-regexp)
+ (:binding "g" :command dired-do-find-regexp)
+ (:binding "G" :command dired-do-find-regexp-and-replace)
+ (:binding "f" :command rgrep))))
+
+ (casualt-suffix-testcase-runner test-vectors
+ #'casual-dired-search-replace-tmenu
+ '(lambda () (random 5000)))))
+ (casualt-dired-breakdown))
- (let ((test-vectors (list)))
- (push (casualt-suffix-test-vector "g" #'dired-do-find-regexp) test-vectors)
- (push (casualt-suffix-test-vector "" #'dired-do-isearch) test-vectors)
- (push (casualt-suffix-test-vector "ó" #'dired-do-isearch-regexp)
test-vectors)
- (push (casualt-suffix-test-vector "s" #'dired-do-search) test-vectors)
- (push (casualt-suffix-test-vector "r" #'dired-do-query-replace-regexp)
test-vectors)
- (push (casualt-suffix-test-vector "G" #'dired-do-find-regexp-and-replace)
test-vectors)
-
- (casualt-suffix-testbench-runner test-vectors
- #'casual-dired-search-replace-tmenu
- '(lambda () (random 5000))))
- (casualt-dired-breakdown t))
(ert-deftest test-casual-dired-elisp-tmenu-bindings ()
(casualt-dired-setup)
diff --git a/tests/test-casual-dired.el b/tests/test-casual-dired.el
index 91aedf0ef6..bb6073c6c0 100644
--- a/tests/test-casual-dired.el
+++ b/tests/test-casual-dired.el
@@ -36,7 +36,8 @@
((symbol-function #'dired-do-async-shell-command) (lambda (x)
(interactive)(print "WARNING: override")))
((symbol-function #'image-dired) (lambda (x) (interactive)(print
"WARNING: override"))))
- (let ((test-vectors (list)))
+ (let ((test-vectors (list))
+ (dired-use-ls-dired t))
(push (casualt-suffix-test-vector "o" #'dired-find-file-other-window)
test-vectors)
(push (casualt-suffix-test-vector "v" #'dired-view-file) test-vectors)
(push (casualt-suffix-test-vector "C" #'dired-do-copy) test-vectors)
@@ -88,6 +89,7 @@
;;(push (casualt-suffix-test-vector "+q" #'dired-create-directory)
test-vectors)
(push (casualt-suffix-test-vector "F" #'dired-create-empty-file)
test-vectors)
+ (push (casualt-suffix-test-vector "æ" #'rgrep) test-vectors)
(casualt-suffix-testbench-runner test-vectors
#'casual-dired-tmenu
diff --git a/tests/test-casual-editkit-utils.el
b/tests/test-casual-editkit-utils.el
index 41c83f57ba..00ee75e4ee 100644
--- a/tests/test-casual-editkit-utils.el
+++ b/tests/test-casual-editkit-utils.el
@@ -489,6 +489,8 @@
(casualt-editkit-setup tmpfile)
(cl-letf (;;((symbol-function #') (lambda () t))
(casualt-mock #'shell)
+ (casualt-mock #'shell-command)
+ (casualt-mock #'async-shell-command)
(casualt-mock #'eshell)
(casualt-mock #'ielm)
(casualt-mock #'term)
@@ -507,6 +509,8 @@
(let ((test-vectors
'((:binding "s" :command shell)
+ (:binding "!" :command shell-command)
+ (:binding "&" :command async-shell-command)
(:binding "e" :command eshell)
(:binding "i" :command ielm)
(:binding "t" :command term)