From 9cb07729932e45778a562a07e484ec14fd9700ae Mon Sep 17 00:00:00 2001 From: Christophe Troestler Date: Mon, 2 Jan 2017 14:56:40 +0100 Subject: [PATCH 1/3] Make electric-quote-(local-)mode work when composing emails electric-quote-(local-)mode used to have no effect because `comment-use-syntax' was left to `undecided' so the electric mode was not enabled for paragraphs. Fixes https://github.com/djcb/mu/issues/997 --- mu4e/mu4e-compose.el | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mu4e/mu4e-compose.el b/mu4e/mu4e-compose.el index f2171a13..d03ec11b 100644 --- a/mu4e/mu4e-compose.el +++ b/mu4e/mu4e-compose.el @@ -407,6 +407,8 @@ buffers; lets remap its faces so it uses the ones for mu4e." ;; set this to allow mu4e to work when gnus-agent is unplugged in gnus (set (make-local-variable 'message-send-mail-real-function) nil) (make-local-variable 'message-default-charset) + ;; Set to nil to enable `electric-quote-local-mode' to work: + (set (make-variable-buffer-local 'comment-use-syntax) nil) ;; message-mode has font-locking, but uses its own faces. Let's ;; use the mu4e-specific ones instead (mu4e~compose-remap-faces) From a9cbead5af372747e74d40e4a25f215efde78bd6 Mon Sep 17 00:00:00 2001 From: Christophe Troestler Date: Fri, 6 Jan 2017 02:11:34 +0100 Subject: [PATCH 2/3] Add a menu entry for electric-quote-local-mode --- mu4e/mu4e-compose.el | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/mu4e/mu4e-compose.el b/mu4e/mu4e-compose.el index d03ec11b..a936afea 100644 --- a/mu4e/mu4e-compose.el +++ b/mu4e/mu4e-compose.el @@ -437,16 +437,27 @@ buffers; lets remap its faces so it uses the ones for mu4e." '(left-curly-arrow right-curly-arrow)) (visual-line-mode t)) - (when (lookup-key message-mode-map [menu-bar text]) - (define-key-after - (lookup-key message-mode-map [menu-bar text]) - [mu4e-hard-newlines] - '(menu-item "Format=flowed" mu4e-toggle-use-hard-newlines - :button (:toggle . use-hard-newlines) - :help "Toggle format=flowed" - :visible (eq major-mode 'mu4e-compose-mode) - :enable mu4e-compose-format-flowed) - 'sep)) + (let ((keymap (lookup-key message-mode-map [menu-bar text]))) + (when keymap + (define-key-after + keymap + [mu4e-hard-newlines] + '(menu-item "Format=flowed" mu4e-toggle-use-hard-newlines + :button (:toggle . use-hard-newlines) + :help "Toggle format=flowed" + :visible (eq major-mode 'mu4e-compose-mode) + :enable mu4e-compose-format-flowed) + 'sep) + + (define-key-after + keymap + [mu4e-electric-quote-mode] + '(menu-item "Electric quote" electric-quote-local-mode + :button (:toggle . electric-quote-mode) + :help "Toggle Electric quote mode" + :visible (eq major-mode 'mu4e-compose-mode) + :enable (functionp 'electric-quote-local-mode)) + 'mu4e-hard-newlines))) (when (lookup-key mml-mode-map [menu-bar Attachments]) (define-key-after From bf2f2ee12a13cc872ddde1e8e4f3f55b49003cac Mon Sep 17 00:00:00 2001 From: Christophe Troestler Date: Tue, 24 Jan 2017 23:19:13 +0100 Subject: [PATCH 3/3] Do not show the electric quote menu if Emacs is too old --- mu4e/mu4e-compose.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mu4e/mu4e-compose.el b/mu4e/mu4e-compose.el index a936afea..40ef39e0 100644 --- a/mu4e/mu4e-compose.el +++ b/mu4e/mu4e-compose.el @@ -455,8 +455,8 @@ buffers; lets remap its faces so it uses the ones for mu4e." '(menu-item "Electric quote" electric-quote-local-mode :button (:toggle . electric-quote-mode) :help "Toggle Electric quote mode" - :visible (eq major-mode 'mu4e-compose-mode) - :enable (functionp 'electric-quote-local-mode)) + :visible (and (eq major-mode 'mu4e-compose-mode) + (functionp 'electric-quote-local-mode))) 'mu4e-hard-newlines))) (when (lookup-key mml-mode-map [menu-bar Attachments])