Index: Doc/lib/libmhlib.tex =================================================================== --- Doc/lib/libmhlib.tex (revision 53409) +++ Doc/lib/libmhlib.tex (working copy) @@ -47,6 +47,10 @@ Return the mailbox pathname. \end{methoddesc} +\begin{methoddesc}[MH]{getcontextfile}{} +Return the context file pathname. +\end{methoddesc} + \begin{methoddesc}[MH]{getcontext}{} Return the current folder name. \end{methoddesc} Index: Lib/mhlib.py =================================================================== --- Lib/mhlib.py (revision 53409) +++ Lib/mhlib.py (working copy) @@ -11,6 +11,7 @@ mh.error(format, ...) # print error message -- can be overridden s = mh.getprofile(key) # profile entry (None if not set) path = mh.getpath() # mailbox pathname +path = mh.getcontextfile() # path of context file name = mh.getcontext() # name of current folder mh.setcontext(name) # set name of current folder @@ -123,19 +124,22 @@ """Return the path (the name of the collection's directory).""" return self.path + def getcontextfile(self): + """Return the name of the context file.""" + fn = os.environ.get('MHCONTEXT', 'context') + if not os.path.isabs(fn): + fn = os.path.join(self.getpath(), fn) + return fn + def getcontext(self): """Return the name of the current folder.""" - context = pickline(os.path.join(self.getpath(), 'context'), - 'Current-Folder') + context = pickline(self.getcontextfile(), 'Current-Folder') if not context: context = 'inbox' return context def setcontext(self, context): """Set the name of the current folder.""" - fn = os.path.join(self.getpath(), 'context') - f = open(fn, "w") - f.write("Current-Folder: %s\n" % context) - f.close() + updateline(self.getcontextfile(), 'Current-Folder', context) def listfolders(self): """Return the names of the top-level folders."""