[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/evil 652d726: Handle more registers and range types in ex
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/evil 652d726: Handle more registers and range types in ex grammar (#1556) |
Date: |
Thu, 23 Dec 2021 12:57:58 -0500 (EST) |
branch: elpa/evil
commit 652d726ebd8cdfcac3e97a801721f33b5b832a0a
Author: Brian Leung <29217594+leungbk@users.noreply.github.com>
Commit: GitHub <noreply@github.com>
Handle more registers and range types in ex grammar (#1556)
* evil-ex.el (evil-ex-grammar): Handle ] and [ registers
Co-authored-by: Brian Leung <leungbk@posteo.net>
Co-authored-by: Tom Dalziel <tom_dl@hotmail.com>
* evil-ex (evil-ex-grammar): Handle more range types
* evil-ex.el (evil-ex-grammar): Handle comma- or semicolon-separated
ranges that omit the first argument. The current line will be used as
the input.
Co-authored-by: Brian Leung <leungbk@posteo.net>
Co-authored-by: Nathaniel Nicandro <nathanielnicandro@gmail.com>
Co-authored-by: Tom Dalziel <tom_dl@hotmail.com>
---
evil-ex.el | 7 +++++--
evil-tests.el | 22 ++++++++++++++++++++++
2 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/evil-ex.el b/evil-ex.el
index bb7cd46..19875ac 100644
--- a/evil-ex.el
+++ b/evil-ex.el
@@ -67,13 +67,14 @@
(range
("%" #'(evil-ex-full-range))
("*" #'(evil-ex-last-visual-range))
+ ((alt "," ";") line #'(evil-ex-range (evil-ex-current-line) $2))
(line ";" line #'(let ((tmp1 $1))
(save-excursion
(goto-line tmp1)
(evil-ex-range tmp1 $3))))
(line "," line #'(evil-ex-range $1 $3))
(line #'(evil-ex-range $1 nil))
- ("`" "[-a-zA-Z_<>']" ",`" "[-a-zA-Z_<>']"
+ ("`" marker-name ",`" marker-name
#'(evil-ex-char-marker-range $2 $4)))
(line
(base (\? offset) search (\? offset)
@@ -98,7 +99,7 @@
(offset
(+ signed-number #'+))
(marker
- ("'" "[-a-zA-Z_<>']" #'(evil-ex-marker $2)))
+ ("'" marker-name #'(evil-ex-marker $2)))
(search
forward
backward
@@ -115,6 +116,8 @@
#'(evil-ex-re-bwd $2))
("\\?" "\\(?:[\\].\\|[^?]\\)+" "\\?"
#'(evil-ex-re-bwd $2)))
+ (marker-name
+ "[]\\[-a-zA-Z_<>']")
(next
"\\\\/" #'(evil-ex-prev-search))
(prev
diff --git a/evil-tests.el b/evil-tests.el
index 8212efc..be03b05 100644
--- a/evil-tests.el
+++ b/evil-tests.el
@@ -7192,6 +7192,8 @@ if no previous selection")
(evil-ex-line (evil-ex-marker "x") nil))))
(should (equal (evil-ex-parse "`x,`y" nil 'range)
'(evil-ex-char-marker-range "x" "y")))
+ (should (equal (evil-ex-parse "`[,`]" nil 'range)
+ '(evil-ex-char-marker-range "[" "]")))
(should (equal (evil-ex-parse "5,+" nil 'range)
'(evil-ex-range
(evil-ex-line (string-to-number "5") nil)
@@ -7244,6 +7246,26 @@ if no previous selection")
(evil-ex-last-line)
(+ (evil-ex-signed-number
(intern "-") (string-to-number "10")))))))
+ (should (equal (evil-ex-parse "'[,']" nil 'range)
+ '(evil-ex-range
+ (evil-ex-line
+ (evil-ex-marker "[")
+ nil)
+ (evil-ex-line
+ (evil-ex-marker "]")
+ nil))))
+ (should (equal (evil-ex-parse ",']" nil 'range)
+ '(evil-ex-range
+ (evil-ex-current-line)
+ (evil-ex-line
+ (evil-ex-marker "]")
+ nil))))
+ (should (equal (evil-ex-parse ";']" nil 'range)
+ '(evil-ex-range
+ (evil-ex-current-line)
+ (evil-ex-line
+ (evil-ex-marker "]")
+ nil))))
(should (equal (evil-ex-parse ".+42" nil 'range)
'(evil-ex-range
(evil-ex-line
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [nongnu] elpa/evil 652d726: Handle more registers and range types in ex grammar (#1556),
ELPA Syncer <=