From: "T.V Raman" <raman@google.com>
To: raman@google.com
Cc: juri@linkov.net, emacs-devel@gnu.org
Subject: Re: Q: How to programatically terminate repeat-mode
Date: Sat, 10 Sep 2022 12:44:48 -0700 [thread overview]
Message-ID: <25372.59696.529490.482429@google.com> (raw)
In-Reply-To: <p91pmg36mpp.fsf@google.com>
Works like a charm, that took less than a minute to implement and
test:-)
T.V Raman writes:
> Juri Linkov <juri@linkov.net> writes:
>
> will try your suggestions. Would be nice to have a simple API to do
> this.
>
> >> I have been using repeat-mode to good effect in emacspeak e.g. in the
> >> context of its media player etc.
> >>
> >> One issue I have is that once a command to stop media has been
> >> executed, I'd like the repeat to stop i.e. without me executing
> >> another explicit kbd command like C-g to terminate the repeat.
> >
> > The simplest way is just not to put the property 'repeat-map'
> > on the symbol of the command that stops media. Then executing
> > this command will terminate the repeat.
> >
> >> How do I do this from lisp?
> >
> > It's no easy to do the same from Lisp because in repeat-post-hook
> > the value of 'exitfun' returned from 'set-transient-map' is not
> > exposed outside. Maybe the value of 'exitfun' should be stored
> > in a variable? Currently 'exitfun' is used only by repeat-exit-timer.
> >
> >> I'd rather not call keyboard-quit explicitly -- that sounds like
> >> overkill?
> >
> > Or you could put 'repeat-exit-key' on 'unread-command-events'.
>
> --
>
> Thanks,
>
> --Raman(I Search, I Find, I Misplace, I Research)
> ♉ Id: kg:/m/0285kf1 🦮
--
Thanks,
--Raman(I Search, I Find, I Misplace, I Research)
♉ Id: kg:/m/0285kf1 🦮
--
Thanks,
--Raman(I Search, I Find, I Misplace, I Research)
♉ Id: kg:/m/0285kf1 🦮
next prev parent reply other threads:[~2022-09-10 19:44 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-09 17:42 Q: How to programatically terminate repeat-mode T.V Raman
2022-09-10 19:18 ` Juri Linkov
2022-09-10 19:41 ` T.V Raman
2022-09-10 19:44 ` T.V Raman [this message]
2022-10-02 16:20 ` T.V Raman
2022-10-02 17:19 ` T.V Raman
2022-10-02 18:03 ` Juri Linkov
2022-10-03 0:28 ` T.V Raman
2022-10-03 6:56 ` Juri Linkov
2022-10-03 12:48 ` Stefan Monnier
2022-10-03 14:20 ` T.V Raman
2022-10-03 19:56 ` Juri Linkov
2022-10-03 21:41 ` T.V Raman
2022-10-03 23:01 ` T.V Raman
2022-10-03 14:19 ` T.V Raman
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=25372.59696.529490.482429@google.com \
--to=raman@google.com \
--cc=emacs-devel@gnu.org \
--cc=juri@linkov.net \
/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).