\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}
\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 and
their contents.
The module contains three basic classes, \class{MH}, which represents a
particular collection of folders, \class{Folder}, which represents a single
folder, 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. The
Message 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 following
methods:
\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 the
sequences.
\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}