[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/evil a8385a3178: Allow setting selected visual area marks
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/evil a8385a3178: Allow setting selected visual area marks |
Date: |
Tue, 5 Jul 2022 05:58:26 -0400 (EDT) |
branch: elpa/evil
commit a8385a3178939869f0acb7823acdcf4a40acb4f2
Author: Dmitry Antonyuk <32649457+dantonyuk@users.noreply.github.com>
Commit: Tom Dalziel <33435574+tomdl89@users.noreply.github.com>
Allow setting selected visual area marks
It's useful to set these marks (`<` and `>`) to change what the `gv`
command selects.
Fixes #1634
---
evil-common.el | 4 ++++
evil-tests.el | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 59 insertions(+)
diff --git a/evil-common.el b/evil-common.el
index 00e0d020ce..5adcdd9036 100644
--- a/evil-common.el
+++ b/evil-common.el
@@ -2009,6 +2009,10 @@ otherwise, it stays behind."
(let ((marker (evil-get-marker char t)) alist)
(unless (markerp marker)
(cond
+ ((eq marker 'evil-visual-beginning)
+ (setq marker evil-visual-mark))
+ ((eq marker 'evil-visual-goto-end)
+ (setq marker evil-visual-point))
((and marker (symbolp marker) (boundp marker))
(set marker (or (symbol-value marker) (make-marker)))
(setq marker (symbol-value marker)))
diff --git a/evil-tests.el b/evil-tests.el
index f6821be676..27dd84e5eb 100644
--- a/evil-tests.el
+++ b/evil-tests.el
@@ -7189,6 +7189,61 @@ echo foxtrot\ngolf hotel"
"alpha bravo\ncharlie delta
<alpha bravo\ncharlie delta\n>golf hotel")))
+(ert-deftest evil-test-visual-redefine ()
+ "Test redefining a previous selection"
+ :tags '(evil visual)
+ (ert-info ("Redefine characterwise selection")
+ (evil-test-buffer
+ ";; <[T]his> buffer is for notes."
+ ([escape] "gv")
+ ";; <[T]his> buffer is for notes."
+ ([escape] "2lm<2wm>gv")
+ ";; Th<is buffer [i]>s for notes."))
+ (ert-info ("Redefine linewise selection")
+ (evil-test-buffer
+ :visual line
+ "<[a]lpha bravo
+>charlie delta
+echo foxtrot
+golf hotel"
+ ([escape] "gv")
+ "<[a]lpha bravo
+>charlie delta
+echo foxtrot
+golf hotel"
+ ([escape] "2jm>gv")
+ "<alpha bravo
+charlie delta
+[e]cho foxtrot
+>golf hotel"
+ ([escape] "km<gv")
+ "alpha bravo
+<charlie delta
+[e]cho foxtrot
+>golf hotel"))
+ (ert-info ("Redefine blockwise selection")
+ (evil-test-buffer
+ :visual block
+ "<alpha bravo
+charli[e]> delta
+echo foxtrot
+golf hotel"
+ ([escape] "gv")
+ "<alpha bravo
+charli[e]> delta
+echo foxtrot
+golf hotel"
+ ([escape] "2jm>gv")
+ "<alpha bravo
+charlie delta
+echo foxtrot
+golf h[o]>tel"
+ ([escape] "k0m<gv")
+ "alpha bravo
+charlie delta
+<echo foxtrot
+golf h[o]>tel")))
+
;;; Replace state
(ert-deftest evil-test-replacement ()
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [nongnu] elpa/evil a8385a3178: Allow setting selected visual area marks,
ELPA Syncer <=