* modifying emacs keymap
@ 2009-12-28 21:18 Jameson Graef Rollins
2009-12-28 22:27 ` Tassilo Horn
0 siblings, 1 reply; 3+ messages in thread
From: Jameson Graef Rollins @ 2009-12-28 21:18 UTC (permalink / raw)
To: notmuch
[-- Attachment #1: Type: text/plain, Size: 883 bytes --]
Hey, folks. This is the first in what is surely to be a long line of
requests for help customizing the notmuch emacs UI.
In this episode, I'm trying to add a function to the default keymap in
notmuch-search-mode. Here's what I tried to do:
(add-hook 'notmuch-search-mode
(define-key notmuch-search-mode-map "A" 'notmuch-show-mark-read-then-archive-thread)
)
However, when I tried to use it, I got the following error (from *Messages*):
notmuch-show-get-tags: Search failed: "^Lmessage{"
Does anyone know where this error is coming from, and how to get
around it? I could just be going about modifying the keymap the wrong
way, so if anyone has better suggestions about how to do it, I would
love to hear it. If there's a different way to *modify* a keymap, as
opposed to adding a key to the map, I would be interested in seeing
that as well.
Thanks for the help.
jamie.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: modifying emacs keymap
2009-12-28 21:18 modifying emacs keymap Jameson Graef Rollins
@ 2009-12-28 22:27 ` Tassilo Horn
2009-12-29 0:30 ` Jameson Graef Rollins
0 siblings, 1 reply; 3+ messages in thread
From: Tassilo Horn @ 2009-12-28 22:27 UTC (permalink / raw)
To: Jameson Graef Rollins; +Cc: notmuch
Jameson Graef Rollins <jrollins@phys.columbia.edu> writes:
Hi Jameson,
> (add-hook 'notmuch-search-mode
> (define-key notmuch-search-mode-map "A" 'notmuch-show-mark-read-then-archive-thread)
> )
`notmuch-search-mode' is no hook, and even if it was, you couldn't add
what you like, because that's no function. You would need to define a
function that doesn that or wrap it in a lambda function.
Anyway, this should do the trick:
(define-key notmuch-search-mode-map "A" 'notmuch-show-mark-read-then-archive-thread)
Bye,
Tassilo
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: modifying emacs keymap
2009-12-28 22:27 ` Tassilo Horn
@ 2009-12-29 0:30 ` Jameson Graef Rollins
0 siblings, 0 replies; 3+ messages in thread
From: Jameson Graef Rollins @ 2009-12-29 0:30 UTC (permalink / raw)
To: Tassilo Horn; +Cc: notmuch
[-- Attachment #1: Type: text/plain, Size: 1941 bytes --]
On Mon, Dec 28, 2009 at 11:27:30PM +0100, Tassilo Horn wrote:
> > (add-hook 'notmuch-search-mode
> > (define-key notmuch-search-mode-map "A" 'notmuch-show-mark-read-then-archive-thread)
> > )
>
> `notmuch-search-mode' is no hook, and even if it was, you couldn't add
> what you like, because that's no function. You would need to define a
> function that doesn that or wrap it in a lambda function.
Thanks for the response, Tassilo. I should have explained that the
command I used above did work in so far as it did make the new key
available in the correct mode (notmuch-search-mode), as I could tell
through the notmuch-help in the notmuch-search-mode. The command I
used above has worked for me in other contexts, as I've found
documented in a couple of different place on the net. I'm completely
an elisp n00b, though, and I can't claim to understand why it worked.
> Anyway, this should do the trick:
>
> (define-key notmuch-search-mode-map "A" 'notmuch-show-mark-read-then-archive-thread)
As far as I can tell, this command works the same as the one I used
above. It produces identical results.
I realize now that the problem is that the
notmuch-show-mark-read-then-archive-thread function is meant for
notmuch-show-mode (as should have been clear to me via the name) and
not for notmuch-search-mode. I manually created a new function for
the appropriate mode, and that worked. Below is the code that I used
that worked.
Thanks for the help, and sorry for the spam.
jamie.
(defun notmuch-search-mark-read-then-archive-thread ()
"Mark thread as read (remove \"unread\" tag) and then archive (remove \"inbox\" tag).
This function advances to the next thread when finished."
(interactive)
(notmuch-search-remove-tag "inbox")
(notmuch-search-remove-tag "unread")
(forward-line))
(define-key notmuch-search-mode-map "A" 'notmuch-search-mark-read-then-archive-thread)
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-12-29 0:30 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-28 21:18 modifying emacs keymap Jameson Graef Rollins
2009-12-28 22:27 ` Tassilo Horn
2009-12-29 0:30 ` Jameson Graef Rollins
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.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).