]> git.phdru.name Git - mimedecode.git/commitdiff
Change option -d to accept a list of headers
authorOleg Broytman <phd@phdru.name>
Sat, 8 Mar 2014 12:24:29 +0000 (16:24 +0400)
committerOleg Broytman <phd@phdru.name>
Sat, 8 Mar 2014 12:24:29 +0000 (16:24 +0400)
Change option -d to accept a comma-separated list of headers: -d h1,h2,h3,...

ANNOUNCE
TODO
mimedecode.docbook
mimedecode.py
test/expected/msg_03-1.txt [new file with mode: 0644]
test/test_all

index f925caf5b11753f147f1a7e8d4a03c8b39e09626..dfca45c190ac0a32b86801bb555504bcd07683c9 100644 (file)
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -25,7 +25,8 @@ command-line options.
 
 WHAT'S NEW in version 2.4.0 (2014-03-??)
 
-   Change option -d to accept a list of headers: -d h1,h2,h3,...
+   Change option -d to accept a comma-separated list of headers:
+-d h1,h2,h3,...
 
    Add ChangeLog.
 
diff --git a/TODO b/TODO
index f4d1e7e4e83d2c8e71cc4165dc8fdb02f6684cd6..fae378bd54c93136e8f8e7a0079a773ad9d9825d 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,12 +1,3 @@
-Publish docs in html format.
-
-
-Release 2.3.9.
-
-
-Change option -d to accept a list of headers: -d h1,h2,h3,...
-
-
 Change option -d to decode all headers and accept a list of exceptions:
 -d *,-h1,-h2,...
 
@@ -19,6 +10,9 @@ Allow * and exceptions:
 -p *,-h1,-h2,-h3:*,-p1,-p2,-p3
 
 
+Publish docs in html format.
+
+
 Release 2.4.0.
 
 
index 382fba2cb2f6a79b998c12b3f7661c14fb7eb046..28af4acd0d4e0b7e35d725fa681b7149221331c2 100644 (file)
@@ -48,7 +48,7 @@
          <option>-H|--host=hostname</option>
       </arg>
       <arg choice="opt">
-         <option>-d header</option>
+         <option>-d header1[,header2,header3...]</option>
       </arg>
       <arg choice="opt">
          <option>-p header:param</option>
    </varlistentry>
 
    <varlistentry>
-      <term>-d header</term>
+      <term>-d header1[,header2,header3...]</term>
       <listitem>
          <para>
-            Add the header to a list of headers to decode; initially the list
-            contains headers "From", "To", "Cc", "Reply-To", "Mail-Followup-To"
-            and "Subject".
+            Add the header(s) to a list of headers to decode; initially the
+            list contains headers "From", "To", "Cc", "Reply-To",
+            "Mail-Followup-To" and "Subject".
          </para>
       </listitem>
    </varlistentry>
index 8ea6922ff02743f2fa700f770581b6f1738e0999..82f2d26108a43317f13ef295635b38850713449d 100755 (executable)
@@ -18,7 +18,7 @@ Broytman mimedecode.py version %s, %s
 def usage(code=0, errormsg=''):
     version(0)
     sys.stdout.write("""\
-Usage: %s [-h|--help] [-V|--version] [-cCDP] [-H|--host=hostname] [-f charset] [-d header] [-p header:param] [-r header] [-R header:param] [--remove-params=header] [-beit mask] [-o output_file] [input_file [output_file]]
+Usage: %s [-h|--help] [-V|--version] [-cCDP] [-H|--host=hostname] [-f charset] [-d header1[,header2,header3...]] [-p header:param] [-r header] [-R header:param] [--remove-params=header] [-beit mask] [-o output_file] [input_file [output_file]]
 """ % me)
     if errormsg:
         sys.stderr.write(errormsg + '\n')
@@ -113,8 +113,9 @@ def decode_headers(msg):
     for header, param in gopts.remove_header_params:
         msg.del_param(param, header)
 
-    for header in gopts.decode_headers:
-        decode_header(msg, header)
+    for header_list in gopts.decode_headers:
+        for header in header_list.split(','):
+            decode_header(msg, header)
 
     for header, param in gopts.decode_header_params:
         decode_header_param(msg, header, param)
diff --git a/test/expected/msg_03-1.txt b/test/expected/msg_03-1.txt
new file mode 100644 (file)
index 0000000..8f6c33d
--- /dev/null
@@ -0,0 +1,18 @@
+From test Sat Feb  1 00:00:00 2014
+Return-Path: <bbb@zzz.org>
+Delivered-To: bbb@zzz.org
+Received: by mail.zzz.org (Postfix, from userid 889)
+       id 27CEAD38CC; Fri,  4 May 2001 14:05:44 -0400 (EDT)
+Message-ID: <15090.61304.110929.45684@aaa.zzz.org>
+From: John X. Dôe <bbb@ddd.com>
+To: Jãne Y. Doe <bbb@zzz.org>
+Cc: =?utf-8?B?xIZjxI0=?= <ccc@zzz.org>
+Subject: This is a tést message
+Date: Fri, 4 May 2001 14:05:44 -0400
+
+
+Hi,
+
+Do you like this message?
+
+-Me
index 669d6b3901d91c6ccf2beac59491c0d608e4facc..bf826c6ab76ac9cf186414829321c9cf1e1aa4a5 100755 (executable)
@@ -39,6 +39,7 @@ for f in input/*.txt; do
    test_file "$n" "$n"
 done
 
+test_file msg_03.txt msg_03-1.txt -D -d From,To,Subject
 test_file msg_15.txt msg_15-1.txt -b text/html
 test_file msg_15.txt msg_15-2.txt -i text/html
 test_file msg_22.txt msg_22-1.txt -r content-id