From: Richard Stallman <rms@gnu.org>
To: "Herbert Euler" <herberteuler@hotmail.com>
Cc: miles.bader@necel.com, schwab@suse.de, emacs-devel@gnu.org,
juri@jurta.org, rudalics@gmx.at, monnier@iro.umontreal.ca,
miles@gnu.org
Subject: Re: find-file-noselect needs save-match-data
Date: Fri, 15 Jun 2007 04:49:01 -0400 [thread overview]
Message-ID: <E1Hz7UL-0002Vb-E1@fencepost.gnu.org> (raw)
In-Reply-To: <BAY143-F304985F0EC260D8CAD1A82DA1F0@phx.gbl> (herberteuler@hotmail.com)
Excuse me but just another question: as Stefan said, 99% of
non-trivial functions use regexps, does it mean that these 99%
non-trivial functions shall not be put on the hooks that may be run
between two regexp-sensitive functions/commands unless the putter
saves match-data? Or, does it mean that this type of hooks need
`save-match-data'?
It depends on how the hook is used.
`pre-command-hook', `post-command-hook',
`before-change-functions' and `after-change-functions' seem to be some
of the hooks.
`pre-command-hook' and `post-command-hook' are not called from many
places. The principal one is the main command loop, which does not
care if the match data is clobbered by the hook. Therefore, anyplace
else that runs these hooks should make sure not to care either.
`before-change-functions' and `after-change-functions' can be called
from lots of primitives, including `insert'. It would be a horrible
pain to have to worry that all these primitives might clobber the
match data. Therefore, any hook functions put on these hooks must
preserve the match data.
That should be documented in the doc strings of those hooks
and in the Lisp Ref Manual. Would someone like to do that?
next prev parent reply other threads:[~2007-06-15 8:49 UTC|newest]
Thread overview: 117+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-04 15:17 find-file-noselect needs save-match-data Herbert Euler
2007-06-04 16:05 ` martin rudalics
2007-06-05 3:10 ` Herbert Euler
2007-06-05 5:52 ` martin rudalics
2007-06-05 22:32 ` Richard Stallman
2007-06-06 1:13 ` Stefan Monnier
2007-06-06 1:44 ` Herbert Euler
2007-06-06 6:58 ` martin rudalics
2007-06-06 7:25 ` David Kastrup
2007-06-06 22:09 ` Richard Stallman
2007-06-06 12:14 ` Stefan Monnier
2007-06-06 22:09 ` Richard Stallman
2007-06-06 6:57 ` martin rudalics
2007-06-06 12:17 ` Stefan Monnier
2007-06-06 12:33 ` Lennart Borgman (gmail)
2007-06-06 12:49 ` martin rudalics
2007-06-06 22:10 ` Richard Stallman
2007-06-06 22:29 ` Stefan Monnier
2007-06-08 7:11 ` Richard Stallman
2007-06-08 8:31 ` Kim F. Storm
2007-06-08 9:42 ` martin rudalics
2007-06-08 10:31 ` Kim F. Storm
2007-06-09 9:45 ` Richard Stallman
2007-06-10 0:05 ` Herbert Euler
2007-06-10 0:11 ` Herbert Euler
2007-06-09 9:46 ` Richard Stallman
2007-06-09 21:32 ` Juri Linkov
2007-06-09 21:59 ` David House
2007-06-09 22:43 ` Juri Linkov
2007-06-09 22:53 ` Jason Rumney
2007-06-09 23:59 ` Miles Bader
2007-06-10 0:02 ` Drew Adams
2007-06-10 13:19 ` Richard Stallman
2007-06-12 3:05 ` Bob Rogers
2007-06-12 4:06 ` Miles Bader
2007-06-12 16:45 ` Juri Linkov
2007-06-12 17:46 ` Andreas Schwab
2007-06-12 21:55 ` David Kastrup
2007-06-12 22:10 ` Miles Bader
2007-06-12 22:37 ` David Kastrup
2007-06-13 16:22 ` Richard Stallman
2007-06-13 17:31 ` Stefan Monnier
2007-06-13 18:33 ` David Kastrup
2007-06-13 19:55 ` Stefan Monnier
2007-06-14 6:37 ` Herbert Euler
2007-06-15 8:48 ` Richard Stallman
2007-06-15 14:22 ` Stefan Monnier
2007-06-15 16:03 ` Herbert Euler
2007-06-14 6:57 ` martin rudalics
2007-06-14 14:36 ` Stefan Monnier
2007-06-14 16:05 ` Herbert Euler
2007-06-14 16:22 ` Stefan Monnier
2007-06-15 1:59 ` Herbert Euler
2007-06-15 8:49 ` Richard Stallman
2007-06-15 8:49 ` Richard Stallman [this message]
2007-06-14 6:57 ` martin rudalics
2007-06-15 8:48 ` Richard Stallman
2007-06-15 14:23 ` Stefan Monnier
2007-06-15 22:45 ` Richard Stallman
2007-06-17 19:54 ` Juri Linkov
2007-06-17 20:27 ` Lennart Borgman (gmail)
2007-06-14 16:19 ` Richard Stallman
2007-06-14 17:18 ` David Kastrup
2007-06-15 19:21 ` Richard Stallman
2007-06-15 19:52 ` Stefan Monnier
2007-06-13 23:39 ` Miles Bader
2007-06-14 0:52 ` Stefan Monnier
2007-06-14 6:58 ` martin rudalics
2007-06-14 16:20 ` Richard Stallman
2007-06-14 18:50 ` Stefan Monnier
2007-06-15 6:31 ` martin rudalics
2007-06-15 14:20 ` Stefan Monnier
2007-06-15 15:55 ` Herbert Euler
2007-06-15 19:22 ` Richard Stallman
2007-06-16 10:01 ` martin rudalics
2007-06-16 22:35 ` Richard Stallman
2007-06-15 19:21 ` Richard Stallman
2007-06-15 19:55 ` Stefan Monnier
2007-06-15 20:03 ` David Kastrup
2007-06-16 18:51 ` Richard Stallman
2007-06-16 19:10 ` David Kastrup
2007-06-17 21:49 ` Richard Stallman
2007-06-18 5:16 ` David Kastrup
2007-06-18 21:30 ` Richard Stallman
2007-06-18 21:42 ` David Kastrup
2007-06-19 22:26 ` Richard Stallman
2007-06-19 22:42 ` David Kastrup
2007-06-25 13:19 ` Richard Stallman
2007-06-16 3:50 ` Herbert Euler
2007-06-17 12:28 ` Stefan Monnier
2007-06-16 18:51 ` Richard Stallman
2007-06-16 21:39 ` Miles Bader
2007-06-17 8:55 ` Richard Stallman
2007-06-17 3:19 ` Herbert Euler
2007-06-17 3:26 ` Herbert Euler
2007-06-17 21:49 ` Richard Stallman
2007-06-17 12:50 ` Stefan Monnier
2007-06-18 7:25 ` Richard Stallman
2007-06-20 8:07 ` Herbert Euler
2007-06-20 14:12 ` Juri Linkov
2007-06-20 14:44 ` Herbert Euler
2007-06-21 1:07 ` Richard Stallman
2007-06-21 1:29 ` Herbert Euler
2007-06-21 6:31 ` David Kastrup
2007-06-28 14:06 ` Herbert Euler
2007-06-29 15:07 ` Herbert Euler
2007-07-06 17:05 ` byte-compiling an elisp-file fails in Emacs 22.1 (reproducable) klaus.berndl
2007-07-06 22:20 ` Jason Rumney
2007-07-07 13:06 ` Richard Stallman
2007-07-08 6:30 ` AW: " klaus.berndl
2007-06-22 1:51 ` find-file-noselect needs save-match-data Richard Stallman
2007-06-20 17:36 ` Richard Stallman
2007-06-13 16:21 ` Richard Stallman
2007-06-05 5:18 ` Richard Stallman
2007-06-06 1:10 ` Stefan Monnier
2007-06-14 16:19 ` Stefan Monnier
-- strict thread matches above, loose matches on Subject: below --
2007-06-06 0:25 Herbert Euler
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=E1Hz7UL-0002Vb-E1@fencepost.gnu.org \
--to=rms@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=herberteuler@hotmail.com \
--cc=juri@jurta.org \
--cc=miles.bader@necel.com \
--cc=miles@gnu.org \
--cc=monnier@iro.umontreal.ca \
--cc=rudalics@gmx.at \
--cc=schwab@suse.de \
/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).