diff --git a/mu4e/mu4e-headers.el b/mu4e/mu4e-headers.el index 2aaa4d41..99a98164 100644 --- a/mu4e/mu4e-headers.el +++ b/mu4e/mu4e-headers.el @@ -423,15 +423,14 @@ after the end of the search results." (defmacro mu4e~headers-defun-mark-for (mark) "Define a function mu4e~headers-mark-MARK." - (let ((funcname (intern (concat "mu4e-headers-mark-for-" (symbol-name mark)))) - (docstring (concat "Mark header at point with " (symbol-name mark) "."))) - `(defun ,funcname () ,docstring - (interactive) - (mu4e-headers-mark-and-next (quote ,mark))))) + (let ((funcname (intern (format "mu4e-headers-mark-for-%s" mark))) + (docstring (format "Mark header at point with %s." mark))) + `(progn + (defun ,funcname () ,docstring + (interactive) + (mu4e-headers-mark-and-next ',mark)) + (put ',funcname 'definition-name ',mark)))) -;; define our mark functions; there must be some way to do this in a loop but -;; since `mu4e~headers-defun-mark-func' is a macro, the argument must be a -;; literal value. (mu4e~headers-defun-mark-for refile) (mu4e~headers-defun-mark-for something) (mu4e~headers-defun-mark-for delete) @@ -639,7 +638,7 @@ after the end of the search results." (if width (truncate-string-to-width name width 0 ?\s t) name) - 'face (if arrow 'bold 'fixed-pitch) + 'face (when arrow 'bold) 'help-echo help 'mouse-face (when sortable 'highlight) 'keymap (when sortable map) diff --git a/mu4e/mu4e-vars.el b/mu4e/mu4e-vars.el index fa2c523b..bbfadfc5 100644 --- a/mu4e/mu4e-vars.el +++ b/mu4e/mu4e-vars.el @@ -352,7 +352,7 @@ I.e. a message with the draft flag set." :group 'mu4e-faces) (defface mu4e-header-highlight-face - '((t :inherit default :weight bold :underline t)) + '((t :inherit region :weight bold :underline t)) "Face for the header at point." :group 'mu4e-faces) diff --git a/mu4e/mu4e-view.el b/mu4e/mu4e-view.el index 1481ea4a..7b25bcf1 100644 --- a/mu4e/mu4e-view.el +++ b/mu4e/mu4e-view.el @@ -1105,18 +1105,14 @@ list." (defmacro mu4e~view-defun-mark-for (mark) "Define a function mu4e-view-mark-for-MARK." - (let ((funcname (intern (concat "mu4e-view-mark-for-" (symbol-name mark)))) - (docstring (format "Mark the current message for %s." - (symbol-name mark)))) - `(defun ,funcname () ,docstring - (interactive) - (mu4e~view-in-headers-context - (mu4e-headers-mark-and-next (quote ,mark)))))) - -;; would be cool to do something like the following, but somehow, I can't get -;; the quoting right... -;; (dolist (mark '(move trash refile delete flag unflag unmark deferred)) -;; (mu4e~view-defun-mark-for mark)) + (let ((funcname (intern (format "mu4e-view-mark-for-%s" mark))) + (docstring (format "Mark the current message for %s." mark))) + `(progn + (defun ,funcname () ,docstring + (interactive) + (mu4e~view-in-headers-context + (mu4e-headers-mark-and-next ',mark))) + (put ',funcname 'definition-name ',mark)))) (mu4e~view-defun-mark-for move) (mu4e~view-defun-mark-for trash)