unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
To: "Rudolf Adamkovič" <salutis@me.com>
Cc: "Mattias Engdegård" <mattias.engdegard@gmail.com>,
	60830@debbugs.gnu.org, "Stefan Kangas" <stefankangas@gmail.com>
Subject: bug#60830: 30.0.50; The *Compilation* buffer does not recognize Lua errors
Date: Sun, 08 Oct 2023 11:49:03 -0400	[thread overview]
Message-ID: <jwvedi52kl1.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <m2ttr2ywm6.fsf@me.com> ("Rudolf Adamkovič"'s message of "Sat, 07 Oct 2023 23:02:25 +0200")

> (1) How can I specify "this group cannot be '[C]'" in the regexp?

For true "regular expressions", you'd use conjunction and negation and
Bob's your uncle, but sadly, our regexps don't support conjunction nor
negation, so you're stuck doing it by hand, e.g.:

    "\\|\\[\\|[^[].*\\|\\[C\\|\\[[^C].*\\|\\[C[^]].*\\|\\[C].+"

Yes, it's hideous and it suffers from a really bad size-explosion
syndrome.  I don't even want to think about how to encode "this group
can match neither "joe" nor "henry".

>> I see no reason for the non-greedy match in the first regexp, do you?
> I made the relevant groups greedy, but I wonder what difference it
> makes.  Is there a way to test the change in 'compile-tests.el'?

    .*?\n

and

    .*\n

are equivalent because . can't match the same char as \n, so there's no
choice to be made about how many repetitions of . to use.

But the regexp compiler notices this fact (which it can use to avoid
using backtracking and thus work noticeably more efficiently) only if
you use ".*\n".


        Stefan






  parent reply	other threads:[~2023-10-08 15:49 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-15 11:33 bug#60830: 30.0.50; The *Compilation* buffer does not recognize Lua errors Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-09-13 14:55 ` Stefan Kangas
2023-10-02 12:04   ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-02 18:37     ` Stefan Kangas
2023-10-03  8:12       ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-03  9:37         ` Stefan Kangas
2023-10-03 20:03           ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-05 11:27         ` Mattias Engdegård
2023-10-05 16:21           ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-06 11:38             ` Mattias Engdegård
2023-10-06 13:21               ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-06 14:00                 ` Mattias Engdegård
2023-10-06 14:47                   ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-06 16:20                     ` Mattias Engdegård
2023-10-06 16:49                       ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-07 11:18                         ` Mattias Engdegård
2023-10-07 15:22                           ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-08 10:45                             ` Mattias Engdegård
2023-10-08 14:47                               ` Mattias Engdegård
2023-10-07 21:02               ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-08  9:59                 ` Mattias Engdegård
2023-10-12  8:12                   ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-12  8:17                     ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-10-12 14:32                     ` Mattias Engdegård
2023-12-10 22:53                       ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-01-10 13:48                         ` Stefan Kangas
2024-01-10 16:37                           ` Mattias Engdegård
2024-01-10 17:09                             ` Stefan Kangas
2024-01-10 17:45                               ` Mattias Engdegård
2023-10-08 15:49                 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors [this message]
2023-10-12  8:14                   ` Rudolf Adamkovič via Bug reports for GNU Emacs, the Swiss army knife of text editors

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvedi52kl1.fsf-monnier+emacs@gnu.org \
    --to=bug-gnu-emacs@gnu.org \
    --cc=60830@debbugs.gnu.org \
    --cc=mattias.engdegard@gmail.com \
    --cc=monnier@iro.umontreal.ca \
    --cc=salutis@me.com \
    --cc=stefankangas@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).