summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--evil-surround.el6
-rw-r--r--test/evil-surround-test.el10
2 files changed, 14 insertions, 2 deletions
diff --git a/evil-surround.el b/evil-surround.el
index 8611e59..018a5b6 100644
--- a/evil-surround.el
+++ b/evil-surround.el
@@ -102,10 +102,12 @@ Each item is of the form (OPERATOR . OPERATION)."
"The previously deleted LEFT region.")
(defun evil-surround-read-from-minibuffer (&rest args)
- (when evil-surround-record-repeat
+ (when (or evil-surround-record-repeat
+ (evil-repeat-recording-p))
(evil-repeat-keystrokes 'post))
(let ((res (apply #'read-from-minibuffer args)))
- (when evil-surround-record-repeat
+ (when (or evil-surround-record-repeat
+ (evil-repeat-recording-p))
(evil-repeat-record res))
res))
diff --git a/test/evil-surround-test.el b/test/evil-surround-test.el
index 763aa44..2f40d4a 100644
--- a/test/evil-surround-test.el
+++ b/test/evil-surround-test.el
@@ -129,6 +129,16 @@
"<span ngModel class=\"foo\" randomAngularDirective #anchor1>Bar</span>"
("cst<p>")
"<p>Bar</p>"))
+ (ert-info ("optionally keep xml attributes: repeating")
+ (evil-test-buffer
+ :visual-start nil
+ :visual-end nil
+ "<div attr=\"foo\">Foo</div><div attr=\"bar\">Bar</div>"
+ (turn-on-evil-surround-mode)
+ ("cst<span")
+ "<span attr=\"foo\">Foo</span><div attr=\"bar\">Bar</div>"
+ ("fB.")
+ "<span attr=\"foo\">Foo</span><span attr=\"bar\">Bar</span>"))
(ert-info ("repeat surrounding")
(evil-test-buffer
"[o]ne two three"