[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/el-search 1175d21 200/332: Allow `string' and `symbol'
From: |
Stefan Monnier |
Subject: |
[elpa] externals/el-search 1175d21 200/332: Allow `string' and `symbol' el-search patterns to set match data |
Date: |
Tue, 1 Dec 2020 15:48:44 -0500 (EST) |
branch: externals/el-search
commit 1175d21ef8006d037c7a8e5b311ba088becb13c4
Author: Michael Heerdegen <michael_heerdegen@web.de>
Commit: Michael Heerdegen <michael_heerdegen@web.de>
Allow `string' and `symbol' el-search patterns to set match data
The rationale is to allow to use the match data when replacing symbols
and strings via `el-search-query-replace'.
* packages/el-search/el-search.el (el-search--string-matcher): Use
`string-match' instead of `string-match-p.
(symbol): Add to documentation an example of using match data with
query-replace.
---
el-search.el | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/el-search.el b/el-search.el
index 782afa8..6c56c32 100644
--- a/el-search.el
+++ b/el-search.el
@@ -7,7 +7,7 @@
;; Created: 29 Jul 2015
;; Keywords: lisp
;; Compatibility: GNU Emacs 25
-;; Version: 1.4.0.12
+;; Version: 1.4.0.13
;; Package-Requires: ((emacs "25") (stream "2.2.4"))
@@ -1497,7 +1497,7 @@ argument (that should be a string)."
(byte-compile regexp-like))
(byte-compile
(let ((string (make-symbol "string")))
- `(lambda (,string) (let ,match-bindings (string-match-p ,regexp
,string))))))))
+ `(lambda (,string) (let ,match-bindings (string-match ,regexp
,string))))))))
(el-search-defpattern string (&rest regexps)
"Matches any string that is matched by all REGEXPS.
@@ -1518,7 +1518,14 @@ Any of the REGEXPS is `el-search-regexp-like-p'."
(el-search-defpattern symbol (&rest regexps)
"Matches any symbol whose name is matched by all REGEXPS.
-Any of the REGEXPS is `el-search-regexp-like-p'."
+Any of the REGEXPS is `el-search-regexp-like-p'.
+
+Example: to replace all symbols with names starting with \"foo-\"
+to start with \"bar-\" instead, you would use
+`el-search-query-replace' with a rule like this:
+
+ (and (symbol \"\\\\`foo-\\\\(.*\\\\)\") s) >
+ (intern (concat \"bar-\" (match-string 1 (symbol-name s))))"
(declare (heuristic-matcher
(lambda (&rest regexps)
(let ((matchers (mapcar #'el-search--string-matcher regexps)))
- [elpa] externals/el-search 6e4b9cc 170/332: Show line numbers in *El Occur* buffers, (continued)
- [elpa] externals/el-search 6e4b9cc 170/332: Show line numbers in *El Occur* buffers, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search a20a333 171/332: Use a separate function to document defined pattern types, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 79ab903 179/332: Always use the current search for query-replace, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 6a7ca23 181/332: Don't limit `el-search-emacs-elisp-sources' to "lisp/" subdir, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 8dc608e 187/332: Improve folding behavior in *El Occur* buffers, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search a2e367e 189/332: Fix starting a search with `el-search-this-sexp', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search d1706eb 190/332: Display match count for *El Occur* buffers, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 97626ac 192/332: Use local binding of `post-command-hook' to reset wrap flag, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 16a5f70 193/332: * el-search/el-search.el: Shorten the query-replace prompt, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 224f384 196/332: ; * el-search/el-search.el: Mention Emacs Bug#29857 in the header, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 1175d21 200/332: Allow `string' and `symbol' el-search patterns to set match data,
Stefan Monnier <=
- [elpa] externals/el-search b88b65a 204/332: Declare any search started with `el-search-this-sexp' single-buffer, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 6b01504 210/332: Add command `el-search-ibuffer-marked-buffers', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search d869368 211/332: Implement `cl-print-object' for el-search-objects, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 6251577 213/332: * el-search/el-search.el: Add `el-search-edit-search-description', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 48103e3 221/332: * el-search/el-search.el: Fix handling of void replacements, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 7c099aa 225/332: Small improvements to el-search--search-and-replace-pattern, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search da7857b 227/332: * el-search/el-search.el: Add `el-search-looking-at', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 9f400b4 234/332: * el-search/el-search.el: Fix infloop in el-search--flatten-tree, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 3bb5b76 236/332: * el-search/el-search.el: Prefer adverb "backward" in names and text, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 41e0251 224/332: * el-search/el-search.el: Bump version to 1.6; some minor tweaks, Stefan Monnier, 2020/12/01