pkg update and first config fix
org-brain not working, add org-roam
This commit is contained in:
49
lisp/treemacs/treemacs-count-mail.py
Normal file
49
lisp/treemacs/treemacs-count-mail.py
Normal file
@@ -0,0 +1,49 @@
|
||||
from subprocess import Popen, PIPE
|
||||
import sys
|
||||
|
||||
# mu4e-headers-include-related
|
||||
REL_FLAG = "-r" if sys.argv[1] == "True" else ""
|
||||
UNREAD_CMD = "mu find maildir:'{}' " + REL_FLAG + " --fields 'i' flag:'unread' 2> /dev/null | wc -l"
|
||||
PATH_PREFIX = "treemacs-mu4e"
|
||||
|
||||
# First arg indicates whether 'mu4e-headers-include-related' is t and mu's '-r' flag should be set
|
||||
# to also count related messages
|
||||
# The remaining arguments are a list of maildirs
|
||||
# The output is a list of items in the form '((P1 A1) (P2 A2))' where P is the node path for a maildir
|
||||
# node, and A is the mail count annotation text
|
||||
# Exmaple: '(((treemacs-mu4e "/web" "/web/") " (176)")((treemacs-mu4e "/web" "/web/Inbox") " (161)"))'
|
||||
|
||||
def main():
|
||||
maildirs = sys.argv[2:]
|
||||
|
||||
ret = ["("]
|
||||
for maildir in maildirs:
|
||||
|
||||
unread = Popen(UNREAD_CMD.format(maildir), shell=True, stdout=PIPE, bufsize=100, encoding='utf-8').communicate()[0][:-1]
|
||||
|
||||
if unread == "0":
|
||||
continue
|
||||
|
||||
path = []
|
||||
path_item = ""
|
||||
split_path = maildir.split("/")[1:]
|
||||
|
||||
# the script must have access to the true folder for the count to work
|
||||
# when passing things back to elisp the pseudo-hierarchy must be re-established
|
||||
if len(split_path) == 1:
|
||||
split_path.insert(0, "Local Folders")
|
||||
|
||||
for split_part in split_path:
|
||||
path_item = path_item + "/" + split_part
|
||||
path.append("\"" + path_item + "\"")
|
||||
|
||||
suffix = '" ({})"'.format(unread)
|
||||
|
||||
ret.append('(({} {}) {})'.format(
|
||||
PATH_PREFIX, " ".join(path), suffix
|
||||
))
|
||||
|
||||
ret.append(")")
|
||||
print("".join(ret))
|
||||
|
||||
main()
|
||||
Reference in New Issue
Block a user