From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Vitalie Spinu <spinuvit@gmail.com>
Cc: 24749@debbugs.gnu.org
Subject: bug#24749: Making sure syntax-propertize is called
Date: Tue, 04 Jun 2019 09:08:53 -0400 [thread overview]
Message-ID: <jwvftoph59w.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <87o93dx5lp.fsf@gmail.com> (Vitalie Spinu's message of "Tue, 04 Jun 2019 07:49:22 +0200")
> Arh. Right. It's a chicken-egg then, syntax-propertize is triggered by
> search when parse-sexp-lookup-properties are t, but
> parse-sexp-lookup-properties is set by syntax-propertize. So an
> external tool (font-lock) was needed to syntax-propertize for the
> first time before this patch. Things are not particularly elegant,
> are they?
I see you understand ;-)
> Would you consider a patch which sets it to t by default and removes the
> auto-resets? It's hard to imagine that it would break anything.
It's not my call to make, but I won't oppose it, no.
> Ok, but then setting parse-sexp-lookup-properties to t by default
> would not harm such a mode.
No, and I can't think of a case where it would cause harm other than
maybe a potential possible slowdown.
> I am setting it to nil while searching for mode boundaries in
> polymode. First, it doesn't make sense to use local syntax tables in
> search because different inner modes might have a different opinion of
> syntax.
That also means that the regexps you use there presumably don't use
syntax-dependent constructs like \s?, \<, and friends, right?
> Second, I don't want to trigger syntax-propertize for
> performance reasons. The bounds of the forward search is normally eob
> and that would mean syntax-propertizing the entire buffer on every
> mode boundary lookup.
If your regexp doesn't use syntax-dependent constructs, then the regexp
search shouldn't call syntax-propertize, IIRC (and similarly,
syntax-propertize wouldn't be applied to the whole buffer if a match is
found before EOB).
Stefan
next prev parent reply other threads:[~2019-06-04 13:08 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-20 21:14 bug#24749: Making sure syntax-propertize is called Stefan Monnier
2016-10-20 22:31 ` Dmitry Gutov
2016-10-20 23:12 ` Stefan Monnier
2016-10-21 15:58 ` Dmitry Gutov
2016-10-21 6:56 ` Eli Zaretskii
2016-10-21 15:36 ` Stefan Monnier
2016-10-21 16:02 ` Eli Zaretskii
2016-10-21 16:34 ` Stefan Monnier
2016-10-21 17:27 ` Eli Zaretskii
2017-12-12 2:03 ` Noam Postavsky
2017-12-12 14:12 ` Stefan Monnier
[not found] ` <handler.24749.D24749.151308794732170.notifdone@debbugs.gnu.org>
2017-12-12 17:54 ` bug#24749: closed (Re: bug#24749: Making sure syntax-propertize is called) Tassilo Horn
2017-12-12 19:45 ` Stefan Monnier
[not found] ` <jwv4lovu3xj.fsf-monnier+emacs@gnu.org>
2017-12-13 8:50 ` martin rudalics
[not found] ` <87ef4awyb6.fsf@gmail.com>
[not found] ` <jwvblzewpgj.fsf-monnier+emacs@gnu.org>
2019-06-03 17:47 ` bug#24749: Making sure syntax-propertize is called Stefan Monnier
2019-06-03 19:25 ` Vitalie Spinu
2019-06-03 19:45 ` Stefan Monnier
2019-06-03 20:04 ` npostavs
2019-06-04 5:49 ` Vitalie Spinu
2019-06-04 13:08 ` Stefan Monnier [this message]
2019-06-05 5:25 ` Vitalie Spinu
2019-06-05 13:32 ` Stefan Monnier
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=jwvftoph59w.fsf-monnier+emacs@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=24749@debbugs.gnu.org \
--cc=spinuvit@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).