:group 'notmuch-faces)
(defface notmuch-search-flagged-face
- '((t
- (:weight bold)))
+ '((((class color)
+ (background dark))
+ (:foreground "LightBlue1"))
+ (((class color)
+ (background light))
+ (:foreground "blue")))
"Face used in search mode face for flagged threads.
This face is the default value for the \"flagged\" tag in
(defface notmuch-search-unread-face
'((t
- (:foreground "blue")))
+ (:weight bold)))
"Face used in search mode for unread threads.
This face is the default value for the \"unread\" tag in
See `notmuch-tag' for information on the format of TAG-CHANGES.
When called interactively, this uses the region if the region is
active. When called directly, BEG and END provide the region.
-If these are nil or not provided, this applies to the thread at
-point.
+If these are nil or not provided, then, if the region is active
+this applied to all threads meeting the region, and if the region
+is inactive this applies to the thread at point.
If ONLY-MATCHED is non-nil, only tag matched messages."
(interactive (notmuch-search-interactive-tag-changes))
- (unless (and beg end) (setq beg (point) end (point)))
+ (unless (and beg end)
+ (setq beg (car (notmuch-search-interactive-region))
+ end (cadr (notmuch-search-interactive-region))))
(let ((search-string (notmuch-search-find-stable-query-region
beg end only-matched)))
(notmuch-tag search-string tag-changes)
(goto-char (point-min))
(forward-line (1- notmuch-search-target-line)))))))))
+(define-widget 'notmuch--custom-face-edit 'lazy
+ "Custom face edit with a tag Edit Face"
+ ;; I could not persuage custom-face-edit to respect the :tag
+ ;; property so create a widget specially
+ :tag "Manually specify face"
+ :type 'custom-face-edit)
+
(defcustom notmuch-search-line-faces
- '(("unread" 'notmuch-search-unread-face)
- ("flagged" 'notmuch-search-flagged-face))
+ '(("unread" . notmuch-search-unread-face)
+ ("flagged" . notmuch-search-flagged-face))
"Alist of tags to faces for line highlighting in notmuch-search.
Each element looks like (TAG . FACE).
A thread with TAG will have FACE applied.
later. A message having both \"deleted\" and \"unread\" tags with
the above settings would have a green foreground and blue
background."
- :type '(alist :key-type (string) :value-type (custom-face-edit))
+ :type '(alist :key-type (string)
+ :value-type (radio (face :tag "Face name")
+ (notmuch--custom-face-edit)))
:group 'notmuch-search
:group 'notmuch-faces)
"Return the current query in this search buffer"
notmuch-search-query-string)
-;;;###autoload
(put 'notmuch-search 'notmuch-doc "Search for messages.")
+;;;###autoload
(defun notmuch-search (&optional query oldest-first target-thread target-line no-display)
"Display threads matching QUERY in a notmuch-search buffer.
(defun notmuch-search-refresh-view ()
"Refresh the current view.
-Kills the current buffer and runs a new search with the same
+Erases the current buffer and runs a new search with the same
query string as the current search. If the current thread is in
the new search results, then point will be placed on the same
thread. Otherwise, point will be moved to attempt to be in the
(oldest-first notmuch-search-oldest-first)
(target-thread (notmuch-search-find-thread-id 'bare))
(query notmuch-search-query-string))
- (notmuch-bury-or-kill-this-buffer)
- (notmuch-search query oldest-first target-thread target-line)
+ ;; notmuch-search erases the current buffer.
+ (notmuch-search query oldest-first target-thread target-line t)
(goto-char (point-min))))
(defun notmuch-search-toggle-order ()
(with-current-buffer b
(memq major-mode '(notmuch-show-mode
notmuch-search-mode
+ notmuch-tree-mode
notmuch-hello-mode
- message-mode))))
+ notmuch-message-mode))))
;;;###autoload
(defun notmuch-cycle-notmuch-buffers ()