notmuch.el: Start fleshing out notmuch-search-mode with a custom keymap

All we have here so far is 'n' and 'p' for going to next and
previous lines respectively.
This commit is contained in:
Carl Worth 2009-10-31 01:04:01 -07:00
parent 095a5ac382
commit 8c9cc63a2e

View file

@ -31,11 +31,20 @@
; Authors: Roland McGrath <roland@gnu.org>, ; Authors: Roland McGrath <roland@gnu.org>,
; Daniel Pfeiffer <occitan@esperanto.org> ; Daniel Pfeiffer <occitan@esperanto.org>
(defvar notmuch-search-mode-map
(let ((map (make-sparse-keymap)))
(define-key map "n" 'next-line)
(define-key map "p" 'previous-line)
map)
"Keymap for \"notmuch search\" buffers.")
(fset 'notmuch-search-mode-map notmuch-search-mode-map)
;;;###autoload ;;;###autoload
(defun notmuch-search-mode () (defun notmuch-search-mode ()
"Major mode for handling the output of notmuch search" "Major mode for handling the output of notmuch search"
(interactive) (interactive)
(kill-all-local-variables) (kill-all-local-variables)
(use-local-map notmuch-search-mode-map)
(setq major-mode 'notmuch-search-mode (setq major-mode 'notmuch-search-mode
mode-name "notmuch-search") mode-name "notmuch-search")
(setq buffer-read-only t)) (setq buffer-read-only t))
@ -45,7 +54,7 @@
(interactive "sNotmuch search: ") (interactive "sNotmuch search: ")
(let ((buffer (get-buffer-create (concat "*notmuch-search-" query)))) (let ((buffer (get-buffer-create (concat "*notmuch-search-" query))))
(switch-to-buffer buffer) (switch-to-buffer buffer)
(setq buffer-read-only t) (notmuch-search-mode)
(let ((proc (get-buffer-process (current-buffer))) (let ((proc (get-buffer-process (current-buffer)))
(inhibit-read-only t)) (inhibit-read-only t))
(if proc (if proc
@ -61,5 +70,6 @@
(defun notmuch () (defun notmuch ()
"Run notmuch to display all mail with tag of 'inbox'" "Run notmuch to display all mail with tag of 'inbox'"
(interactive) (interactive)
(require 'compile)
(notmuch-search "tag:inbox")) (notmuch-search "tag:inbox"))
(provide 'notmuch)