1 \section{\module{mhlib
} ---
2 Access to MH mailboxes
}
4 % LaTeX'ized from the comments in the module by Skip Montanaro
7 \declaremodule{standard
}{mhlib
}
8 \modulesynopsis{Manipulate MH mailboxes from Python.
}
11 The
\module{mhlib
} module provides a Python interface to MH folders and
14 The module contains three basic classes,
\class{MH
}, which represents a
15 particular collection of folders,
\class{Folder
}, which represents a single
16 folder, and
\class{Message
}, which represents a single message.
19 \begin{classdesc
}{MH
}{\optional{path
\optional{, profile
}}}
20 \class{MH
} represents a collection of MH folders.
23 \begin{classdesc
}{Folder
}{mh, name
}
24 The
\class{Folder
} class represents a single folder and its messages.
27 \begin{classdesc
}{Message
}{folder, number
\optional{, name
}}
28 \class{Message
} objects represent individual messages in a folder. The
29 Message class is derived from
\class{mimetools.Message
}.
33 \subsection{MH Objects
\label{mh-objects
}}
35 \class{MH
} instances have the following methods:
38 \begin{methoddesc
}[MH
]{error
}{format
\optional{, ...
}}
39 Print an error message -- can be overridden.
42 \begin{methoddesc
}[MH
]{getprofile
}{key
}
43 Return a profile entry (
\code{None
} if not set).
46 \begin{methoddesc
}[MH
]{getpath
}{}
47 Return the mailbox pathname.
50 \begin{methoddesc
}[MH
]{getcontext
}{}
51 Return the current folder name.
54 \begin{methoddesc
}[MH
]{setcontext
}{name
}
55 Set the current folder name.
58 \begin{methoddesc
}[MH
]{listfolders
}{}
59 Return a list of top-level folders.
62 \begin{methoddesc
}[MH
]{listallfolders
}{}
63 Return a list of all folders.
66 \begin{methoddesc
}[MH
]{listsubfolders
}{name
}
67 Return a list of direct subfolders of the given folder.
70 \begin{methoddesc
}[MH
]{listallsubfolders
}{name
}
71 Return a list of all subfolders of the given folder.
74 \begin{methoddesc
}[MH
]{makefolder
}{name
}
78 \begin{methoddesc
}[MH
]{deletefolder
}{name
}
79 Delete a folder -- must have no subfolders.
82 \begin{methoddesc
}[MH
]{openfolder
}{name
}
83 Return a new open folder object.
88 \subsection{Folder Objects
\label{mh-folder-objects
}}
90 \class{Folder
} instances represent open folders and have the following
94 \begin{methoddesc
}[Folder
]{error
}{format
\optional{, ...
}}
95 Print an error message -- can be overridden.
98 \begin{methoddesc
}[Folder
]{getfullname
}{}
99 Return the folder's full pathname.
102 \begin{methoddesc
}[Folder
]{getsequencesfilename
}{}
103 Return the full pathname of the folder's sequences file.
106 \begin{methoddesc
}[Folder
]{getmessagefilename
}{n
}
107 Return the full pathname of message
\var{n
} of the folder.
110 \begin{methoddesc
}[Folder
]{listmessages
}{}
111 Return a list of messages in the folder (as numbers).
114 \begin{methoddesc
}[Folder
]{getcurrent
}{}
115 Return the current message number.
118 \begin{methoddesc
}[Folder
]{setcurrent
}{n
}
119 Set the current message number to
\var{n
}.
122 \begin{methoddesc
}[Folder
]{parsesequence
}{seq
}
123 Parse msgs syntax into list of messages.
126 \begin{methoddesc
}[Folder
]{getlast
}{}
127 Get last message, or
\code{0} if no messages are in the folder.
130 \begin{methoddesc
}[Folder
]{setlast
}{n
}
131 Set last message (internal use only).
134 \begin{methoddesc
}[Folder
]{getsequences
}{}
135 Return dictionary of sequences in folder. The sequence names are used
136 as keys, and the values are the lists of message numbers in the
140 \begin{methoddesc
}[Folder
]{putsequences
}{dict
}
141 Return dictionary of sequences in folder
{name: list
}.
144 \begin{methoddesc
}[Folder
]{removemessages
}{list
}
145 Remove messages in list from folder.
148 \begin{methoddesc
}[Folder
]{refilemessages
}{list, tofolder
}
149 Move messages in list to other folder.
152 \begin{methoddesc
}[Folder
]{movemessage
}{n, tofolder, ton
}
153 Move one message to a given destination in another folder.
156 \begin{methoddesc
}[Folder
]{copymessage
}{n, tofolder, ton
}
157 Copy one message to a given destination in another folder.
161 \subsection{Message Objects
\label{mh-message-objects
}}
163 The
\class{Message
} class adds one method to those of
164 \class{mimetools.Message
}:
166 \begin{methoddesc
}[Message
]{openmessage
}{n
}
167 Return a new open message object (costs a file descriptor).