X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=devel%2Fprintmimestructure;fp=devel%2Fprintmimestructure;h=70e0a5c0fc1c94216e50d732aeba1711959e0335;hp=a5fc83e7ec433416b4aee73017674c88566d33ac;hb=0a3dff7b8a7eb0f60abd1e3f04518cce035d11ba;hpb=8ca911d13b6f38bb07586e7d488c0ce9d0be4d30 diff --git a/devel/printmimestructure b/devel/printmimestructure index a5fc83e7..70e0a5c0 100755 --- a/devel/printmimestructure +++ b/devel/printmimestructure @@ -24,7 +24,7 @@ from __future__ import print_function import email import sys -def test(z, prefix=''): +def print_part(z, prefix): fname = '' if z.get_filename() is None else ' [' + z.get_filename() + ']' cset = '' if z.get_charset() is None else ' (' + z.get_charset() + ')' disp = z.get_params(None, header='Content-Disposition') @@ -35,8 +35,23 @@ def test(z, prefix=''): for d in disp: if d[0] in [ 'attachment', 'inline' ]: disposition = ' ' + d[0] + if z.is_multipart(): + nbytes = len(z.as_string()) + else: + nbytes = len(z.get_payload()) + + print('{}{}{}{}{} {:d} bytes'.format( + prefix, + z.get_content_type(), + cset, + disposition, + fname, + nbytes, + )) + +def test(z, prefix=''): if (z.is_multipart()): - print(prefix + '┬╴' + z.get_content_type() + cset + disposition + fname, z.as_string().__len__().__str__() + ' bytes') + print_part(z, prefix+'┬╴') if prefix.endswith('└'): prefix = prefix.rpartition('└')[0] + ' ' if prefix.endswith('├'): @@ -49,6 +64,6 @@ def test(z, prefix=''): test(parts[i], prefix + '└') # FIXME: show epilogue? else: - print(prefix + '─╴'+ z.get_content_type() + cset + disposition + fname, z.get_payload().__len__().__str__(), 'bytes') + print_part(z, prefix+'─╴') test(email.message_from_file(sys.stdin), '└')