From: storm@cua.dk (Kim F. Storm)
Cc: emacs-devel@gnu.org, monnier@iro.umontreal.ca,
alexander.pohoyda@gmx.net, rms@gnu.org
Subject: Re: how-many/count-matches for non-interactive use
Date: Mon, 18 Oct 2004 10:39:18 +0200 [thread overview]
Message-ID: <m3y8i4h13d.fsf@kfs-l.imdomain.dk> (raw)
In-Reply-To: <200410172053.i9HKrdL01136@raven.dms.auburn.edu> (Luc Teirlinck's message of "Sun, 17 Oct 2004 15:53:39 -0500 (CDT)")
Luc Teirlinck <teirllm@dms.auburn.edu> writes:
> Stefan Monnier wrote:
>
> Sit-for doesn't wait when executed from a macro. As for messages you might
> be right in some (maybe even in many) cases but I doubt it matters much
> since unless the message is the last in the macro it will just be
> overwritten anyway.
>
> If the macro is called with M-1000 or M-0, then, if nothing else, all
> these messages might slow macro execution down. Moreover, if there
> are at least two different messages printed during execution of the
> macro, it will also get rid of all previous info in *Messages*.
Another good point in favour of the current functionality!
>
> On the other hand, there also is the problem that `interactive-p'
> returns t while _defining_ a keyboard macro. It would appear to be
> deceiving to the user to have different behavior while _defining_ the
> macro and while executing it.
I see this as a feature -- not a problem.
I think it would be far more confusing if a command behaves
differently when defining a macro.
> I do not know what declaring a function obsolete _exactly_ means. I
> believe that what we could do is keep the function around indefinitely
> in its current form, but discourage its use in new code meant for
> inclusion in Emacs.
Or enhance it:
(interactive-p) => current behaviour
(interactive-p t) => interactive or executing macro
(interactive-p 1) => interactive or executing macro ONCE
> If people write their own functions for private
> use, they might find interactive-p more convenient than the
> alternative. It also would mean that we would not have to worry about
> checking all existing calls _right now_.
>
> We could then recommend the following in the Elisp manual:
This would be good.
>
> (defun foo (&optional interactive-p)
> (interactive "p")
> (when interactive-p
> (message "foo")))
>
> if the message needs to be printed even during keyboard
> macro-execution and:
>
> (defun foo (&optional interactive-p)
> (interactive "p")
> (or (not interactive-p)
> executing-kbd-macro
> defining-kbd-macro
> (message "foo")))
>
> if not.
>
> Note that the behavior of the latter version of `foo' differs from the
> current behavior of `interactive-p' by not showing the message during
> macro definition either.
>
> Sincerely,
>
> Luc.
>
>
>
>
--
Kim F. Storm <storm@cua.dk> http://www.cua.dk
next prev parent reply other threads:[~2004-10-18 8:39 UTC|newest]
Thread overview: 109+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-09-24 6:09 [rmail-mbox-branch]: expunge Alfred M. Szmidt
2004-09-24 7:16 ` Kim F. Storm
2004-09-24 8:21 ` Alfred M. Szmidt
2004-09-24 9:23 ` Kim F. Storm
2004-09-24 12:03 ` Paul Michael Reilly
2004-09-25 7:08 ` Richard Stallman
2004-10-03 10:40 ` Alexander Pohoyda
2004-10-04 15:18 ` Richard Stallman
2004-10-06 21:38 ` [rmail-mbox-branch]: mail-utils Alexander Pohoyda
2004-10-06 21:47 ` Miles Bader
2004-10-08 23:34 ` Alexander Pohoyda
2004-10-08 23:47 ` Miles Bader
2004-10-09 16:04 ` Alexander Pohoyda
2004-10-09 17:12 ` Stefan
2004-10-09 18:15 ` Alexander Pohoyda
2004-10-09 18:20 ` Miles Bader
2004-10-09 21:02 ` Alexander Pohoyda
2004-10-09 21:10 ` Miles Bader
2004-10-09 21:19 ` Miles Bader
2004-10-10 15:15 ` Richard Stallman
2004-10-10 22:58 ` Miles Bader
2004-10-11 16:45 ` Richard Stallman
2004-10-12 2:09 ` Miles Bader
2004-10-12 14:42 ` Juri Linkov
2004-10-12 15:03 ` Miles Bader
2004-10-12 16:05 ` Syncing Gnus with Emacs and back (was: [rmail-mbox-branch]: mail-utils) Reiner Steib
2004-10-13 1:26 ` Syncing Gnus with Emacs and back Miles Bader
2004-10-13 20:21 ` Reiner Steib
2004-10-13 22:51 ` Miles Bader
2004-10-14 7:47 ` Miles Bader
2004-10-13 14:43 ` [rmail-mbox-branch]: mail-utils Richard Stallman
2004-10-09 19:02 ` Stefan
2004-10-09 20:40 ` Alexander Pohoyda
2004-10-11 10:36 ` Simon Josefsson
2004-10-08 16:06 ` Richard Stallman
2004-10-08 23:17 ` Alexander Pohoyda
2004-10-10 15:16 ` Richard Stallman
2004-10-10 23:50 ` Alexander Pohoyda
2004-10-11 16:45 ` Richard Stallman
2004-10-11 19:01 ` Alexander Pohoyda
2004-10-12 8:57 ` Richard Stallman
2004-10-12 16:12 ` Alexander Pohoyda
2004-10-13 14:42 ` Richard Stallman
2004-10-13 18:16 ` how-many/count-matches for non-interactive use Alexander Pohoyda
2004-10-15 0:26 ` Richard Stallman
2004-10-15 6:28 ` Alexander Pohoyda
2004-10-15 12:22 ` Richard Stallman
2004-10-15 15:30 ` Alexander Pohoyda
2004-10-16 13:52 ` Richard Stallman
2004-10-16 21:49 ` Alexander Pohoyda
2004-10-15 12:54 ` Stefan
2004-10-16 13:51 ` Richard Stallman
2004-10-16 18:41 ` Stefan Monnier
2004-10-16 22:00 ` Kim F. Storm
2004-10-17 15:19 ` Stefan Monnier
2004-10-17 20:53 ` Luc Teirlinck
2004-10-17 21:44 ` Stefan Monnier
2004-10-18 8:39 ` Kim F. Storm [this message]
2004-10-18 13:59 ` Richard Stallman
2004-10-19 1:58 ` Luc Teirlinck
2004-10-19 2:08 ` Luc Teirlinck
2004-10-19 10:29 ` Kim F. Storm
2004-10-19 17:17 ` Alexander Pohoyda
2004-10-20 12:01 ` Kim F. Storm
2004-10-19 16:46 ` Richard Stallman
2004-10-19 22:08 ` Kim F. Storm
2004-10-21 1:45 ` Richard Stallman
2004-10-21 3:22 ` Luc Teirlinck
2004-10-20 1:14 ` Luc Teirlinck
2004-10-20 1:35 ` David Kastrup
2004-10-20 13:28 ` Robert J. Chassell
2004-10-20 1:27 ` Luc Teirlinck
2004-10-21 1:45 ` Richard Stallman
2004-10-21 3:08 ` Luc Teirlinck
2004-10-22 10:47 ` Richard Stallman
2004-10-22 12:54 ` Convert keyboard macros to Lisp (was: how-many/count-matches for non-interactive use) Juri Linkov
2004-10-23 13:54 ` Richard Stallman
2004-10-22 17:35 ` how-many/count-matches for non-interactive use Luc Teirlinck
2004-10-22 22:22 ` Luc Teirlinck
2004-10-23 1:53 ` Luc Teirlinck
2004-10-23 11:32 ` John Paul Wallington
2004-10-23 18:49 ` Richard Stallman
2004-10-23 20:36 ` Luc Teirlinck
2004-10-24 17:09 ` Richard Stallman
2004-10-26 3:09 ` Luc Teirlinck
2004-10-26 8:19 ` Kim F. Storm
2004-11-02 8:53 ` Richard Stallman
2004-10-24 2:31 ` Luc Teirlinck
2004-10-24 17:09 ` Richard Stallman
2004-10-25 1:53 ` Luc Teirlinck
2004-10-26 9:05 ` Richard Stallman
2004-10-25 2:53 ` Luc Teirlinck
2004-10-26 9:04 ` Richard Stallman
2004-10-25 3:08 ` Luc Teirlinck
2004-10-24 17:09 ` Richard Stallman
2004-10-23 18:49 ` Richard Stallman
2004-10-25 14:04 ` Ken Manheimer
2004-10-27 10:49 ` Richard Stallman
2004-10-28 4:39 ` Ken Manheimer
2004-11-02 15:48 ` Ken Manheimer
2004-11-07 3:37 ` Richard Stallman
2004-10-23 18:49 ` Richard Stallman
2004-10-23 19:53 ` John Paul Wallington
2004-10-23 18:49 ` Richard Stallman
2004-10-21 22:13 ` Luc Teirlinck
2004-10-23 4:48 ` Richard Stallman
2004-10-23 16:03 ` Luc Teirlinck
2004-10-18 8:32 ` Kim F. Storm
2004-10-17 16:07 ` Richard Stallman
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m3y8i4h13d.fsf@kfs-l.imdomain.dk \
--to=storm@cua.dk \
--cc=alexander.pohoyda@gmx.net \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
--cc=rms@gnu.org \
/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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.