[PATCH] minor cleanup to printmimestructure

Jameson Graef Rollins jrollins at finestructure.net
Mon Jun 11 19:00:00 PDT 2018


make the source slightly easier to read.  no functional change.
---
 devel/printmimestructure | 21 ++++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

diff --git a/devel/printmimestructure b/devel/printmimestructure
index afa0590e..ab2a6673 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), 'â””')
-- 
2.17.1



More information about the notmuch mailing list