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

    Add "Find in files (rgrep)" in Casual Dired
    
    - Changes to `casual-dired-tmenu`:
      - Adds command `rgrep` aka "Find in files…".
      - Moves "Search & Replace" to **Mark** section.
    
    - Changes to `casual-dired-search-replace-tmenu`:
      - Added command `rgrep` aka "Find in files…".
    
    - Updated screenshots.
---
 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-utils.el                      |  17 ++++++------
 lisp/casual-dired.el                            |   5 ++--
 tests/test-casual-dired-utils.el                |  33 +++++++++++++++---------
 tests/test-casual-dired.el                      |   1 +
 7 files changed, 34 insertions(+), 22 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-utils.el b/lisp/casual-dired-utils.el
index 0bb0604188..4bd3612448 100644
--- a/lisp/casual-dired-utils.el
+++ b/lisp/casual-dired-utils.el
@@ -73,16 +73,17 @@ ASCII-range string."
   ["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/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 ec7b0e1701..bb6073c6c0 100644
--- a/tests/test-casual-dired.el
+++ b/tests/test-casual-dired.el
@@ -89,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

Reply via email to