mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-21 18:38:08 +01:00
emacs: show: w3m/invisibility workaround
There is a bug in the current notmuch code with w3m and invisible parts. w3m sets a keymap, and if we have a hidden [text/html] point at the start of the following line still gets this w3m keymap which causes some strange effects. For example, RET gives an error "No URL at Point" rather than hiding the message, <down> goes to the next link rather than just down a line. These keybinding are also inconvenient when the text/html part is displayed so we ask w3m not to install a keymap. This is only likely to be a problem for emacs 23 as shr is preferred as html renderer on emacs 24 (although the user can set the renderer to w3m even on emacs 24). This solution was suggested by Tomi Ollila <tomi.ollila@iki.fi>
This commit is contained in:
parent
e43e0af920
commit
f1a355febf
1 changed files with 10 additions and 0 deletions
|
@ -818,6 +818,16 @@ message at DEPTH in the current thread."
|
|||
(defun notmuch-show-insert-part-inline-patch-fake-part (msg part content-type nth depth declared-type)
|
||||
(notmuch-show-insert-part-*/* msg part "text/x-diff" nth depth "inline patch"))
|
||||
|
||||
(defun notmuch-show-insert-part-text/html (msg part content-type nth depth declared-type)
|
||||
;; text/html handler to work around bugs in renderers and our
|
||||
;; invisibile parts code. In particular w3m sets up a keymap which
|
||||
;; "leaks" outside the invisible region and causes strange effects
|
||||
;; in notmuch. We set mm-inline-text-html-with-w3m-keymap to nil to
|
||||
;; tell w3m not to set a keymap (so the normal notmuch-show-mode-map
|
||||
;; remains).
|
||||
(let ((mm-inline-text-html-with-w3m-keymap nil))
|
||||
(notmuch-show-insert-part-*/* msg part content-type nth depth declared-type)))
|
||||
|
||||
(defun notmuch-show-insert-part-*/* (msg part content-type nth depth declared-type)
|
||||
;; This handler _must_ succeed - it is the handler of last resort.
|
||||
(notmuch-show-insert-part-header nth content-type declared-type (plist-get part :filename))
|
||||
|
|
Loading…
Reference in a new issue