def usage(code=0, errormsg=''):
version(0)
sys.stdout.write("""\
- Usage: %s [-h|--help] [-V|--version] [-cCDP] [-H|--host=hostname] [-f charset] [-d header1[,h2,...]|*[,-h1,...]] [-p header1[,h2,h3,...]:param1[,p2,p3,...]] [-r header1[,h2,...]|*[,-h1,...]] [-R header1[,h2,h3,...]:param1[,p2,p3,...]] [--set-header header:value] [--set-param header:param=value] [-Bbeit mask] [--save-headers|body|message mask] [-O dest_dir] [-o output_file] [input_file [output_file]]
+Usage: %s [-h|--help] [-V|--version] [-cCDP] [-H|--host=hostname] [-f charset] [-d header1[,h2,...]|*[,-h1,...]] [-p header1[,h2,h3,...]:param1[,p2,p3,...]] [-r header1[,h2,...]|*[,-h1,...]] [-R header1[,h2,h3,...]:param1[,p2,p3,...]] [--set-header header:value] [--set-param header:param=value] [-Bbeit mask] [--save-headers|body|message mask] [-O dest_dir] [-o output_file] [input_file [output_file]]
""" % me)
if errormsg:
sys.stderr.write(errormsg + os.linesep)
def recode_if_needed(s, charset):
if charset and charset.lower() != g.default_encoding:
- s = unicode(s, charset, "replace").encode(g.default_encoding, "replace")
+ s = s.decode(charset, "replace").encode(g.default_encoding, "replace")
return s
"""Return a decoded string according to RFC 2047.
NOTE: This is almost the same as email.Utils.decode.
"""
- import email.Header
+ import email.header
- L = email.Header.decode_header(s)
+ L = email.header.decode_header(s)
if not isinstance(L, list):
# s wasn't decoded
return s
def decode_header(msg, header):
"Decode mail header (if exists) and put it back, if it was encoded"
- if msg.has_key(header):
+ if header in msg:
value = msg[header]
new_value = _decode_header(value)
if new_value != value: # do not bother to touch msg if not changed
def decode_header_param(msg, header, param):
"Decode mail header's parameter (if exists) and put it back, if it was encoded"
- if msg.has_key(header):
+ if header in msg:
value = msg.get_param(param, header=header)
if value:
if isinstance(value, tuple):
def set_header(msg, header, value):
"Replace header"
- if msg.has_key(header):
+ if header in msg:
msg.replace_header(header, value)
else:
msg[header] = value
entries = mailcap.lookup(caps, content_type, "view")
for entry in entries:
- if entry.has_key('copiousoutput'):
- if entry.has_key('test'):
+ if 'copiousoutput' in entry:
+ if 'test' in entry:
test = mailcap.subst(entry['test'], content_type, filename)
if test and os.system(test) != 0:
continue