| 
									
										
										
										
											1999-03-15 15:44:18 +00:00
										 |  |  | \section{\module{mhlib} --- | 
					
						
							| 
									
										
										
										
											1999-04-23 16:07:38 +00:00
										 |  |  |          Access to MH mailboxes} | 
					
						
							| 
									
										
										
										
											1999-03-15 15:44:18 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-04-03 20:13:55 +00:00
										 |  |  | % LaTeX'ized from the comments in the module by Skip Montanaro
 | 
					
						
							|  |  |  | % <skip@mojam.com>.
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1999-03-15 15:44:18 +00:00
										 |  |  | \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}} | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1999-04-23 16:07:38 +00:00
										 |  |  | The \class{Message} class adds one method to those of | 
					
						
							|  |  |  | \class{mimetools.Message}: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1999-03-15 15:44:18 +00:00
										 |  |  | \begin{methoddesc}[Message]{openmessage}{n} | 
					
						
							|  |  |  | Return a new open message object (costs a file descriptor). | 
					
						
							|  |  |  | \end{methoddesc} |