[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Emacs-diffs] master 644cdd1: Use grep's --null option (Bug#6843)

From: Dmitry Gutov
Subject: Re: [Emacs-diffs] master 644cdd1: Use grep's --null option (Bug#6843)
Date: Wed, 26 Jul 2017 19:58:32 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:55.0) Gecko/20100101 Thunderbird/55.0

Hey Noam,
Sorry I'm late to the party. Some questions below. Thanks.

On 7/20/17 3:02 AM, Noam Postavsky wrote:
branch: master
commit 644cdd1aa0a10dbfffa3b9b4c7a97f8cddded0b8
Author: Noam Postavsky <address@hidden>
Commit: Noam Postavsky <address@hidden>
+*** Grep commands will now use GNU grep's '--null' option if
+available, which allows distinguishing the filename from contents if
+they contain colons.  This can be controlled by the new custom option

Why do the want the option?

And on the same note, are there any versions of Grep in widespread usage that don't support '--null'? AFAICT this flag was added to GNU Grep 2.4 which was released in 1999.

+(defconst grep--regexp-alist-bin-matcher
+  '("^Binary file \\(.+\\) matches$" 1 nil nil 0 1))
+(defconst grep-with-null-regexp-alist
+  `(("^\\([^\0]+\\)\\(\0\\)\\([0-9]+\\):" 1 3 ,grep--regexp-alist-column nil 

Any reason to change 2 to 3? Why don't we use a non-capturing group for \0 here?

If the numbers are the same, we could keep the variable's name the same as well. As a result, most third-party code would continue to simply work.

+     (2 '(face unspecified display ":")))
+    ,grep--regexp-alist-bin-matcher)
+  "Regexp used to match grep hits.
+See `compilation-error-regexp-alist'.")
+(defconst grep-fallback-regexp-alist

Compensating for the multitude of variables by eliminating newlines between them doesn't look too hot to me.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]