Module mailcap
[hide private]
[frames] | no frames]

Module mailcap

Mailcap file handling. See RFC 1524.

Functions [hide private]
 
getcaps()
Return a dictionary containing the mailcap database.
 
listmailcapfiles()
Return a list of all mailcap files found on the system.
 
readmailcapfile(fp)
Read a mailcap file and return a dictionary keyed by MIME type.
 
parseline(line)
Parse one entry in a mailcap file and return a dictionary.
 
parsefield(line, i, n)
Separate one key-value pair in a mailcap entry.
 
findmatch(caps, MIMEtype, key='view', filename='/dev/null', plist=[])
Find a match for a mailcap entry.
 
lookup(caps, MIMEtype, key=None)
 
subst(field, MIMEtype, filename, plist=[])
 
findparam(name, plist)
 
test()
 
show(caps)

Imports: os


Function Details [hide private]

getcaps()

 

Return a dictionary containing the mailcap database.

The dictionary maps a MIME type (in all lowercase, e.g. 'text/plain') to a list of dictionaries corresponding to mailcap entries. The list collects all the entries for that MIME type from all available mailcap files. Each dictionary contains key-value pairs for that MIME type, where the viewing command is stored with the key "view".

readmailcapfile(fp)

 

Read a mailcap file and return a dictionary keyed by MIME type.

Each MIME type is mapped to an entry consisting of a list of dictionaries; the list will contain more than one such dictionary if a given MIME type appears more than once in the mailcap file. Each dictionary contains key-value pairs for that MIME type, where the viewing command is stored with the key "view".

parseline(line)

 

Parse one entry in a mailcap file and return a dictionary.

The viewing command is stored as the value with the key "view", and the rest of the fields produce key-value pairs in the dict.

findmatch(caps, MIMEtype, key='view', filename='/dev/null', plist=[])

 

Find a match for a mailcap entry.

Return a tuple containing the command line, and the mailcap entry used; (None, None) if no match is found. This may invoke the 'test' command of several matching entries before deciding which entry to use.