mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-22 02:48:08 +01:00
Allow folders with no messages to be elided from list
This makes it easier to see folders with messages. Eliding empty folders is togged with the 'e' binding. Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
parent
b16a767f51
commit
79d3f9773c
1 changed files with 24 additions and 5 deletions
29
notmuch.el
29
notmuch.el
|
@ -1447,6 +1447,7 @@ current search results AND that are tagged with the given tag."
|
||||||
(define-key map "x" 'kill-this-buffer)
|
(define-key map "x" 'kill-this-buffer)
|
||||||
(define-key map "q" 'kill-this-buffer)
|
(define-key map "q" 'kill-this-buffer)
|
||||||
(define-key map "m" 'message-mail)
|
(define-key map "m" 'message-mail)
|
||||||
|
(define-key map "e" 'notmuch-folder-show-empty-toggle)
|
||||||
(define-key map ">" 'notmuch-folder-last)
|
(define-key map ">" 'notmuch-folder-last)
|
||||||
(define-key map "<" 'notmuch-folder-first)
|
(define-key map "<" 'notmuch-folder-first)
|
||||||
(define-key map "=" 'notmuch-folder)
|
(define-key map "=" 'notmuch-folder)
|
||||||
|
@ -1523,14 +1524,32 @@ Currently available key bindings:
|
||||||
(goto-char (point-max))
|
(goto-char (point-max))
|
||||||
(forward-line -1))
|
(forward-line -1))
|
||||||
|
|
||||||
|
(defun notmuch-folder-count (search)
|
||||||
|
(car (process-lines notmuch-command "count" search)))
|
||||||
|
|
||||||
|
(setq notmuch-folder-show-empty t)
|
||||||
|
|
||||||
|
(defun notmuch-folder-show-empty-toggle ()
|
||||||
|
"Toggle the listing of empty folders"
|
||||||
|
(interactive)
|
||||||
|
(setq notmuch-folder-show-empty (not notmuch-folder-show-empty))
|
||||||
|
(notmuch-folder))
|
||||||
|
|
||||||
(defun notmuch-folder-add (folders)
|
(defun notmuch-folder-add (folders)
|
||||||
(if folders
|
(if folders
|
||||||
(let ((name (car (car folders)))
|
(let* ((name (car (car folders)))
|
||||||
(inhibit-read-only t)
|
(inhibit-read-only t)
|
||||||
(search (cdr (car folders))))
|
(search (cdr (car folders)))
|
||||||
(insert name)
|
(count (notmuch-folder-count search)))
|
||||||
(indent-to 16 1)
|
(if (or notmuch-folder-show-empty
|
||||||
(call-process notmuch-command nil t nil "count" search)
|
(not (equal count "0")))
|
||||||
|
(progn
|
||||||
|
(insert name)
|
||||||
|
(indent-to 16 1)
|
||||||
|
(insert count)
|
||||||
|
(insert "\n")
|
||||||
|
)
|
||||||
|
)
|
||||||
(notmuch-folder-add (cdr folders)))))
|
(notmuch-folder-add (cdr folders)))))
|
||||||
|
|
||||||
(defun notmuch-folder-find-name ()
|
(defun notmuch-folder-find-name ()
|
||||||
|
|
Loading…
Reference in a new issue