]> git.eshelyaron.com Git - emacs.git/commitdiff
Support highlighting of ripgrep output (bug#44983)
authorJuri Linkov <juri@linkov.net>
Wed, 9 Dec 2020 19:16:03 +0000 (21:16 +0200)
committerJuri Linkov <juri@linkov.net>
Wed, 9 Dec 2020 19:16:03 +0000 (21:16 +0200)
* etc/grep.txt: Add ripgrep samples.

* lisp/progmodes/grep.el (grep-match-regexp): Highlight ripgrep matches too.
(grep-regexp-alist): Remove $ to highlight ripgrep binary file matches.

etc/grep.txt
lisp/progmodes/grep.el
test/README

index 19a3b4b47b7ff7b719e95d5fcf204d237d69ed73..3dc4aac3c89dd572bed69d4e65c5762d3143f3c9 100644 (file)
@@ -85,6 +85,12 @@ git --no-pager grep -inH -p -e "org-element-map"
 lisp/org/org.el\e[36m=\e[m20969\e[36m=\e[m(defun org-fill-paragraph (&optional justify)
 lisp/org/org.el\e[36m:\e[m21047\e[36m:\e[m               (\e[1;31morg-element-map\e[m
 
+* ripgrep
+
+rg -nH --color always --no-heading -e grep-match-regexp
+\e[0m\e[35mlisp/progmodes/grep.el\e[0m:\e[0m\e[32m608\e[0m:        (while (re-search-forward \e[0m\e[1m\e[31mgrep-match-regexp\e[0m end 1)
+Binary file emacs.info matches (found "\u{0}" byte around offset 2222525)
+
 * unknown greps
 
 grep -nH -e "xyzxyz" ../info/*
index 7c8acedaf3d61abd0e3f27c650af19adce6713e8..5dc99cc7e93d6e43847d94eb3023996e6b406024 100644 (file)
@@ -100,7 +100,7 @@ To change the default value, use \\[customize] or call the function
   :set #'grep-apply-setting
   :version "22.1")
 
-(defcustom grep-match-regexp "\033\\[0?1;31m\\(.*?\\)\033\\[[0-9]*m"
+(defcustom grep-match-regexp "\033\\[\\(?:0?1;\\)?31m\\(.*?\\)\033\\[[0-9]*m"
   "Regular expression matching grep markers to highlight.
 It matches SGR ANSI escape sequences which are emitted by grep to
 color its output.  This variable is used in `grep-filter'."
@@ -412,7 +412,7 @@ Notice that using \\[next-error] or \\[compile-goto-error] modifies
                (- mend beg))))))
      nil nil
      (3 '(face nil display ":")))
-    ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1))
+    ("^Binary file \\(.+\\) matches" 1 nil nil 0 1))
   "Regexp used to match grep hits.
 See `compilation-error-regexp-alist' for format details.")
 
index d0da89d1c2c82bef270d5d4280a667d8247416d8..3365f18cf7e4a9f5e8696cf466d1c14ebd0c5f96 100644 (file)
@@ -113,7 +113,8 @@ $EMACS_HYDRA_CI indicates the hydra environment, and $EMACS_EMBA_CI
 indicates the emba environment, respectively.
 
 \f
-(Also, see etc/compilation.txt for compilation mode font lock tests.)
+(Also, see etc/compilation.txt for compilation mode font lock tests
+and etc/grep.txt for grep mode font lock tests.)
 
 \f
 This file is part of GNU Emacs.