emacs-devel
[Top][All Lists]
Advanced

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

Re: Scan of regexps in Emacs (March 17)


From: Mattias Engdegård
Subject: Re: Scan of regexps in Emacs (March 17)
Date: Wed, 20 Mar 2019 11:04:50 +0100

20 mars 2019 kl. 02.53 skrev Paul Eggert <address@hidden>:
> 
> Thanks for proofreading that. I installed the attached to try to fix the 
> problems you noted.

That looks fine. You found more skip-chars-* rubbish to clean up, good! Turn 
any stone...

> I also fixed a couple of other problems if I happened to run across them. 
> First, the regexp [a-b-c] is ambiguous according to POSIX, and should be 
> avoided. Second, a regexp like [[:alnum:]-z] is also ambiguous for the same 
> reason. Perhaps these regexps currently have a particular behavior in Emacs 
> but it's not documented as far as I know and code should avoid them. Perhaps 
> the trawler could be modified to catch them.

Right, the rules are muddy; they had to be reverse-engineered for xr. I was a 
bit disappointed not to find any [a-[:alnum:]] anywhere though; that would have 
been a sight.
I'll see what can be done -- it's always a matter of balance to avoid false 
positives.

By the way, my little diatribe about format arguments led to a mechanised 
search for argument count violations. One found, in eshell, pushed to master as 
obvious:

diff --git a/lisp/eshell/esh-proc.el b/lisp/eshell/esh-proc.el
index 55251f5bfb..3432582cf4 100644
--- a/lisp/eshell/esh-proc.el
+++ b/lisp/eshell/esh-proc.el
@@ -498,7 +498,7 @@ See the variable `eshell-kill-processes-on-exit'."
                                        (buffer-name))))
          (eshell-round-robin-kill
           (if (eq eshell-kill-processes-on-exit 'every)
-              (format-message "Kill Eshell child process `%s'? "))))
+              "Kill Eshell child process `%s'? ")))
       (let ((buf (get-buffer "*Process List*")))
        (if (and buf (buffer-live-p buf))
            (kill-buffer buf)))




reply via email to

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