"Notmuch mail reader for Emacs."
:group 'mail)
-(defcustom notmuch-folders '(("inbox" . "tag:inbox") ("unread" . "tag:unread"))
- "List of searches for the notmuch folder view"
- :type '(alist :key-type (string) :value-type (string))
+(defcustom notmuch-search-oldest-first t
+ "Show the oldest mail first when searching."
+ :type 'boolean
:group 'notmuch)
;;
+(defcustom notmuch-saved-searches nil
+ "A list of saved searches to display."
+ :type '(alist :key-type string :value-type string)
+ :group 'notmuch)
+
+(defvar notmuch-folders nil
+ "Deprecated name for what is now known as `notmuch-saved-searches'.")
+
+(defun notmuch-saved-searches ()
+ "Common function for querying the notmuch-saved-searches variable.
+
+We do this as a function to support the old name of the
+variable (`notmuch-folders') as well as for the default value if
+the user hasn't set this variable with the old or new value."
+ (if notmuch-saved-searches
+ notmuch-saved-searches
+ (if notmuch-folders
+ notmuch-folders
+ '(("inbox" . "tag:inbox")
+ ("unread" . "tag:unread")))))
+
(defun notmuch-version ()
"Return a string with the notmuch version number."
(let ((long-string
(match-string 2 long-string)
"unknown")))
+(defun notmuch-config-get (item)
+ "Return a value from the notmuch configuration."
+ ;; Trim off the trailing newline
+ (substring (shell-command-to-string
+ (concat notmuch-command " config get " item))
+ 0 -1))
+
+(defun notmuch-database-path ()
+ "Return the database.path value from the notmuch configuration."
+ (notmuch-config-get "database.path"))
+
+(defun notmuch-user-name ()
+ "Return the user.name value from the notmuch configuration."
+ (notmuch-config-get "user.name"))
+
+(defun notmuch-user-primary-email ()
+ "Return the user.primary_email value from the notmuch configuration."
+ (notmuch-config-get "user.primary_email"))
+
+(defun notmuch-kill-this-buffer ()
+ "Kill the current buffer."
+ (interactive)
+ (kill-buffer (current-buffer)))
+
;;
;; XXX: This should be a generic function in emacs somewhere, not