emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Adam Spiers <orgmode@adamspiers.org>
To: org-mode mailing list <emacs-orgmode@gnu.org>
Subject: FR: keystroke to cancel prefix sub-keymap
Date: Sat, 29 Dec 2007 21:48:51 +0000	[thread overview]
Message-ID: <20071229214851.GC10722@atlantic.linksys.moosehall> (raw)

Suppose that I have a sub-keymap for custom agenda commands with
prefix 's', i.e. shortcuts 's1', 's2', 's3' and so on.  I might invoke
org-agenda, press 's', then change my mind and want to use another
custom command instead.  Currently, the only way of doing this would
be to press something like 'q' or C-g, then reinvoke org-agenda.  It
would be nice instead if there was a keystroke which simply returned
you to the first *Agenda Commands* buffer.  The following patch
demonstrates the required behaviour, but as you can see, is not a
particularly clean way of doing it.

http://www.adamspiers.org/cgi-bin/hg.cgi/org-pacific/rev/8fadf3f7ddda

# HG changeset patch
# User Adam Spiers <orgmode@adamspiers.org>
# Date 1198960339 0
# Node ID 8fadf3f7ddda7680bf0df572bdc48f7a0133ee14
# Parent 42a4c005ba9ce0df46b01b9571fff385a65ccae5
SPACE to cancel prefix sub-keymap

--- a/org.el	Sat Dec 29 20:32:19 2007 +0000
+++ b/org.el	Sat Dec 29 20:32:19 2007 +0000
@@ -19340,6 +19340,14 @@ L   Timeline for current buffer         
 	    (setq restriction nil))
 	   ((and (equal selstring "") (memq c '(?a ?t ?m ?L ?C ?e ?T ?M ?# ?! ?/)))
 	    (throw 'exit (cons (setq selstring (char-to-string c)) restriction)))
+           ((and (> (length selstring) 0) (eq c ? ))
+            (delete-window)
+            (org-agenda-get-restriction-and-command prefix-descriptions))
+;; Can't do it this way because help text describing hardcoded agenda
+;; commands is inserted into buffer outside the (while t ...) loop.
+;;             (setq selstring ""
+;;                   rmheader 0
+;;                   custom org-agenda-custom-commands))
 	   ((equal c ?q) (error "Abort"))
 	   (t (error "Invalid key %c" c))))))))

             reply	other threads:[~2007-12-29 21:48 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-29 21:48 Adam Spiers [this message]
2007-12-31 12:10 ` FR: keystroke to cancel prefix sub-keymap Adam Spiers
2008-01-03 12:17   ` Carsten Dominik

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.orgmode.org/

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

  git send-email \
    --in-reply-to=20071229214851.GC10722@atlantic.linksys.moosehall \
    --to=orgmode@adamspiers.org \
    --cc=emacs-orgmode@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 public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.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).