X-Git-Url: https://git.madduck.net/etc/offlineimap.git/blobdiff_plain/2c47d04aa4ac78b142e62c116a98c894125107a2..a9d2139bc5facb84db13a457be1f38406d41d59d:/.offlineimap/helper.py diff --git a/.offlineimap/helper.py b/.offlineimap/helper.py index 674adf3..d758d95 100644 --- a/.offlineimap/helper.py +++ b/.offlineimap/helper.py @@ -2,23 +2,24 @@ import re -base_excludes = ['delayed', 'outgoing', 'Trash', 'Sent', 'Queue', 'sent', 'inbox'] -full_excludes_re = ['discard', 'spool', 'spam', 'store\..+'] -prioritised = ['outgoing','resubmit','drafts','INBOX','ardex','immo','debian','sudetia','admin','retrain'] +base_excludes = ['delayed', 'outgoing', 'Trash', 'Queue', 'inbox', 'Spam', 'Sent', 'Drafts'] +base_excludes_re = [ '[Ss]ent.*' ] +full_excludes_re = ['discard', 'spool', 'spam', 'store/.+'] +prioritised = ['resubmit','drafts','inbox','ardex','kbkg','toni','tahi','debian','mtfk','admin','retrain'] deprioritised = ['discard','spam','store','spool'] def py_foldersort_main(x, y): for prefix in prioritised: - if x.name.startswith(prefix): + if x.startswith(prefix): return -1 - elif y.name.startswith(prefix): + elif y.startswith(prefix): return +1 for prefix in deprioritised: - if x.name.startswith(prefix): + if x.startswith(prefix): return +1 - elif y.name.startswith(prefix): + elif y.startswith(prefix): return -1 - return cmp(x, y) + return (x > y) - (x < y) def py_nametrans(x): return re.sub('^INBOX', 'inbox', x) @@ -27,6 +28,9 @@ def py_folderfilter_main(x): if x in base_excludes: return False + elif re.search('^(' + '|'.join(base_excludes_re) + ')', x): + return False + elif re.search('^(' + '|'.join(full_excludes_re) + ')', x): return False @@ -45,6 +49,6 @@ def py_folderfilter_bulk(x): return False def py_folderfilter_mbnames(acct, x): - full_excludes_re_mbnames = ['retrain/(sp|h)am'] + full_excludes_re + full_excludes_re_mbnames = ['retrain(/(sp|h)am)?$'] + full_excludes_re return acct in ['madduck.net', 'madduck.net_bulk'] \ and not re.search('^(' + '|'.join(full_excludes_re_mbnames) + ')', x)