168 lines · 4.5 KB · TeX
RawDownload
\section{\module{mhlib} ---         Access to MH mailboxes} % LaTeX'ized from the comments in the module by Skip Montanaro% <skip@mojam.com>. \declaremodule{standard}{mhlib}\modulesynopsis{Manipulate MH mailboxes from Python.}  The \module{mhlib} module provides a Python interface to MH folders andtheir contents. The module contains three basic classes, \class{MH}, which represents aparticular collection of folders, \class{Folder}, which represents a singlefolder, and \class{Message}, which represents a single message.  \begin{classdesc}{MH}{\optional{path\optional{, profile}}}\class{MH} represents a collection of MH folders.\end{classdesc} \begin{classdesc}{Folder}{mh, name}The \class{Folder} class represents a single folder and its messages.\end{classdesc} \begin{classdesc}{Message}{folder, number\optional{, name}}\class{Message} objects represent individual messages in a folder.  TheMessage class is derived from \class{mimetools.Message}.\end{classdesc}  \subsection{MH Objects \label{mh-objects}} \class{MH} instances have the following methods:  \begin{methoddesc}[MH]{error}{format\optional{, ...}}Print an error message -- can be overridden.\end{methoddesc} \begin{methoddesc}[MH]{getprofile}{key}Return a profile entry (\code{None} if not set).\end{methoddesc} \begin{methoddesc}[MH]{getpath}{}Return the mailbox pathname.\end{methoddesc} \begin{methoddesc}[MH]{getcontext}{}Return the current folder name.\end{methoddesc} \begin{methoddesc}[MH]{setcontext}{name}Set the current folder name.\end{methoddesc} \begin{methoddesc}[MH]{listfolders}{}Return a list of top-level folders.\end{methoddesc} \begin{methoddesc}[MH]{listallfolders}{}Return a list of all folders.\end{methoddesc} \begin{methoddesc}[MH]{listsubfolders}{name}Return a list of direct subfolders of the given folder.\end{methoddesc} \begin{methoddesc}[MH]{listallsubfolders}{name}Return a list of all subfolders of the given folder.\end{methoddesc} \begin{methoddesc}[MH]{makefolder}{name}Create a new folder.\end{methoddesc} \begin{methoddesc}[MH]{deletefolder}{name}Delete a folder -- must have no subfolders.\end{methoddesc} \begin{methoddesc}[MH]{openfolder}{name}Return a new open folder object.\end{methoddesc}   \subsection{Folder Objects \label{mh-folder-objects}} \class{Folder} instances represent open folders and have the followingmethods:  \begin{methoddesc}[Folder]{error}{format\optional{, ...}}Print an error message -- can be overridden.\end{methoddesc} \begin{methoddesc}[Folder]{getfullname}{}Return the folder's full pathname.\end{methoddesc} \begin{methoddesc}[Folder]{getsequencesfilename}{}Return the full pathname of the folder's sequences file.\end{methoddesc} \begin{methoddesc}[Folder]{getmessagefilename}{n}Return the full pathname of message \var{n} of the folder.\end{methoddesc} \begin{methoddesc}[Folder]{listmessages}{}Return a list of messages in the folder (as numbers).\end{methoddesc} \begin{methoddesc}[Folder]{getcurrent}{}Return the current message number.\end{methoddesc} \begin{methoddesc}[Folder]{setcurrent}{n}Set the current message number to \var{n}.\end{methoddesc} \begin{methoddesc}[Folder]{parsesequence}{seq}Parse msgs syntax into list of messages.\end{methoddesc} \begin{methoddesc}[Folder]{getlast}{}Get last message, or \code{0} if no messages are in the folder.\end{methoddesc} \begin{methoddesc}[Folder]{setlast}{n}Set last message (internal use only).\end{methoddesc} \begin{methoddesc}[Folder]{getsequences}{}Return dictionary of sequences in folder.  The sequence names are used as keys, and the values are the lists of message numbers in thesequences.\end{methoddesc} \begin{methoddesc}[Folder]{putsequences}{dict}Return dictionary of sequences in folder {name: list}.\end{methoddesc} \begin{methoddesc}[Folder]{removemessages}{list}Remove messages in list from folder.\end{methoddesc} \begin{methoddesc}[Folder]{refilemessages}{list, tofolder}Move messages in list to other folder.\end{methoddesc} \begin{methoddesc}[Folder]{movemessage}{n, tofolder, ton}Move one message to a given destination in another folder.\end{methoddesc} \begin{methoddesc}[Folder]{copymessage}{n, tofolder, ton}Copy one message to a given destination in another folder.\end{methoddesc}  \subsection{Message Objects \label{mh-message-objects}} The \class{Message} class adds one method to those of\class{mimetools.Message}: \begin{methoddesc}[Message]{openmessage}{n}Return a new open message object (costs a file descriptor).\end{methoddesc}