[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Orgmode] FR: keystroke to cancel prefix sub-keymap
From: |
Adam Spiers |
Subject: |
[Orgmode] FR: keystroke to cancel prefix sub-keymap |
Date: |
Sat, 29 Dec 2007 21:48:51 +0000 |
User-agent: |
Mutt/1.5.14 (2007-02-12) |
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 <address@hidden>
# 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))))))))
- [Orgmode] FR: keystroke to cancel prefix sub-keymap,
Adam Spiers <=