branch: elpa/casual
commit 5871743371b8b34a00ba154d878993624b98bc93
Merge: db9e647b8d 439e5c5c8b
Author: Charles Choi <[email protected]>
Commit: GitHub <[email protected]>
Merge pull request #387 from
kickingvegas/383-add-delete-duplicate-lines-command-to-editkit
Add delete-duplicate-lines to EditKit Delete menu
---
docs/images/casual-editkit-delete-screenshot.png | Bin 61195 -> 62490 bytes
lisp/casual-editkit-utils.el | 2 ++
tests/test-casual-editkit-utils.el | 22 ++++++++++++++++++++--
3 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/docs/images/casual-editkit-delete-screenshot.png
b/docs/images/casual-editkit-delete-screenshot.png
index 6aa54ae69e..bb757e913f 100644
Binary files a/docs/images/casual-editkit-delete-screenshot.png and
b/docs/images/casual-editkit-delete-screenshot.png differ
diff --git a/lisp/casual-editkit-utils.el b/lisp/casual-editkit-utils.el
index dd87e1a662..a0629deba0 100644
--- a/lisp/casual-editkit-utils.el
+++ b/lisp/casual-editkit-utils.el
@@ -408,6 +408,8 @@ Commands pertaining to delete can be accessed here."
("p" "Pair" delete-pair)]
[("b" "Blank Lines" delete-blank-lines)
+ ("D" "Duplicate Lines" delete-duplicate-lines
+ :inapt-if-not use-region-p)
("w" "Whitespace Cleanup" whitespace-cleanup)
("d" "Delete Trailing Whitespace" delete-trailing-whitespace)]
diff --git a/tests/test-casual-editkit-utils.el
b/tests/test-casual-editkit-utils.el
index 7472b463b1..caa13f6fad 100644
--- a/tests/test-casual-editkit-utils.el
+++ b/tests/test-casual-editkit-utils.el
@@ -31,8 +31,7 @@
(let ((tmpfile "casual-editkit-open-tmenu.txt"))
(casualt-editkit-setup tmpfile)
- (cl-letf (;; ((symbol-function #'buffer-file-name) (lambda () t))
- (casualt-mock #'find-file)
+ (cl-letf ((casualt-mock #'find-file)
(casualt-mock #'rename-visited-file)
(casualt-mock #'find-file-other-window)
(casualt-mock #'find-file-other-frame)
@@ -290,6 +289,7 @@
(ert-deftest test-casual-editkit-delete-tmenu ()
(let ((tmpfile "casual-editkit-delete-tmenu.txt"))
(casualt-editkit-setup tmpfile)
+
(cl-letf ((casualt-mock #'just-one-space)
(casualt-mock #'join-line)
(casualt-mock #'delete-horizontal-space)
@@ -316,6 +316,24 @@
'(lambda () (random 5000)))))
(casualt-editkit-breakdown tmpfile)))
+(ert-deftest test-casual-editkit-delete-tmenu-region ()
+ (let ((tmpfile "casual-editkit-delete-tmenu.txt"))
+ (casualt-editkit-setup tmpfile)
+ (goto-char (point-max))
+ (insert "\nHello there\nHi There\nYet another.")
+ (set-mark (point-min))
+ (forward-line 2)
+
+ (cl-letf ((casualt-mock #'delete-duplicate-lines))
+
+ (let ((test-vectors
+ '((:binding "D" :command delete-duplicate-lines))))
+
+ (casualt-suffix-testcase-runner test-vectors
+ #'casual-editkit-delete-tmenu
+ '(lambda () (random 5000)))))
+ (casualt-editkit-breakdown tmpfile)))
+
(ert-deftest test-casual-editkit-move-text-tmenu ()
(let ((tmpfile "casual-editkit-move-text-tmenu.txt"))
(casualt-editkit-setup tmpfile)