X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch.el;h=a205267ecfed76df05c04ef0861c7999f373c849;hp=54237f128441503c774fa3938012144274095065;hb=eacd1ac41eb6f50bdae8121606859a3a673e7e7b;hpb=1d68e75c21e8e7873277c15bfa896cb3b9f726e9 diff --git a/notmuch.el b/notmuch.el index 54237f12..a205267e 100644 --- a/notmuch.el +++ b/notmuch.el @@ -34,6 +34,8 @@ (define-key map "h" 'notmuch-show-toggle-headers-visible) (define-key map "n" 'notmuch-show-next-message) (define-key map "p" 'notmuch-show-previous-message) + (define-key map (kbd "C-n") 'notmuch-show-next-line) + (define-key map (kbd "C-p") 'notmuch-show-previous-line) (define-key map "q" 'kill-this-buffer) (define-key map "s" 'notmuch-show-toggle-signatures-visible) (define-key map "x" 'kill-this-buffer) @@ -73,6 +75,30 @@ within the current window." (or (memq prop buffer-invisibility-spec) (assq prop buffer-invisibility-spec))))) +(defun notmuch-show-next-line () + "Like builtin `next-line' but ensuring we end on a visible character. + +By advancing forward until reaching a visible character. + +Unlike builtin `next-line' this version accepts no arguments." + (interactive) + (set 'this-command 'next-line) + (call-interactively 'next-line) + (while (point-invisible-p) + (forward-char))) + +(defun notmuch-show-previous-line () + "Like builtin `previous-line' but ensuring we end on a visible character. + +By advancing forward until reaching a visible character. + +Unlike builtin `next-line' this version accepts no arguments." + (interactive) + (set 'this-command 'previous-line) + (call-interactively 'previous-line) + (while (point-invisible-p) + (forward-char))) + (defun notmuch-show-get-message-id () (save-excursion (beginning-of-line)