emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Adam Spiers <orgmode@adamspiers.org>
To: emacs-orgmode@gnu.org
Subject: Re: FR: more flexible customization of org-agenda-custom-commands key bindings
Date: Sat, 27 Oct 2007 14:40:36 +0100	[thread overview]
Message-ID: <20071027134036.GG10118@atlantic.linksys.moosehall> (raw)
In-Reply-To: <878x60ivz9.fsf@bzg.ath.cx>

Sorry for the slow replies.  I have not had time to catch up with the
backlog in my orgmode inbox recently, so I previously missed this
thread :-(

Bastien (bzg@altern.org) wrote:
> Carsten Dominik <dominik@science.uva.nl> writes:
> >> 2. Once a custom command has been invoked, provide a binding for going
> >>    straight back to the *Org Agenda* buffer to invoke another one.
                             ^^^^^^^^^^^^
> > This second part I do not understand.  Please explain.

Doh, I made a braino :-(  It's probably much simpler request than I
made it sound; should read:

  | Once a custom command has been invoked, provide a binding to a
  | single keystroke for going straight back from the *Org Agenda*
  | buffer to the *Agenda Commands* buffer, in order to be able to run
  | another custom command.

An example workflow:

  1. call `org-agenda' to obtain the *Agenda Commands* buffer
  2. invoke any custom command (not necessarily a sub-keymap)
  3. do some stuff in the resulting *Org Agenda* buffer
  4. press a single-letter keystroke to switch the buffer displayed in
     the current window (i.e. the one containing *Org Agenda*) back
     to *Agenda Commands*
  5. go to step 2.

> If the idea is just to re-display the *Org agenda* buffer

Correct.  It's effectively a more generic version of "Press `C-u r' to
search again with new search string".

> C-x b RET is enough most of the times.

That defaults to the wrong buffer for me, maybe because I'm using
ido.el.  For me, it's important that it be bound to a single keystroke
rather than a chord, since I want to be able to iterate over steps
2--5 many times and rapidly.  According to `describe-bindings', the
following letters are still unbound in *Org Agenda*: 'e', 'k', 'u',
'v', and 'z'.  I can't think of a good mnemonic for binding any of
these to this operation.  My preferred solution would be the
following, though I would understand if it was rejected on the grounds
of being too disruptive to what users are used to:

  - rebind 'r' to this operation, since 'redo' or 'repeat' is the most
    obvious mnemonic,

  - rebind 'g' to `org-agenda-redo', since 'g' is a universal emacs
    keybinding meaning 'refresh the current buffer display', and

  - bind 'G' to `org-agenda-toggle-time-grid', since this is a less
    frequent operation and hence can be moved to the chord "shift-G"
    without causing hassle.

> But I think the idea was to process commands of the same kind
> (i.e. belonging to the same sub-keymap) quickly.

Nothing so advanced :-) But if the above solution were to be
implemented, repeatedly rerunning a mix of sub-keymap and normal
custom commands would be trivial, e.g. to use your example:

   C-c a s 1
   <do some stuff with resulting *Org Agenda* custom buffer>
   r s 2
   <do some stuff with resulting *Org Agenda* custom buffer>
   r M "match string"
   <do some stuff with resulting *Org Agenda* TODO matches buffer>
   r L
   <do some stuff with resulting timeline buffer>

and so on.

  reply	other threads:[~2007-10-27 13:40 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-16 16:20 FR: more flexible customization of org-agenda-custom-commands key bindings Adam Spiers
2007-10-16 16:36 ` Adam Spiers
2007-10-18  5:35   ` Carsten Dominik
2007-10-18  9:59     ` Bastien
2007-10-27 13:40       ` Adam Spiers [this message]
2007-10-28 14:42         ` Bastien
2007-10-30  6:06           ` Carsten Dominik
2007-10-30  8:53             ` Adam Spiers
2007-10-30 18:18             ` Bastien
2007-10-16 17:38 ` Bastien
2007-10-17 13:03 ` Bastien
2007-10-17 14:04   ` Adam Spiers
2007-10-17 22:06 ` 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=20071027134036.GG10118@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).