mhi is a commandline style mailreader in the tradition of mh and nmh, but mutated to support IMAP.
One thing that IMAP provides is the ability for multiple clients to access the same mail store. Graphical clients are all well and good, but sometimes a reversion to the commandline is necessary. Neither mh nor nmh will talk to an IMAP server (mh's original semantics, which nmh duplicates, rely on messages not auto-renumbering, as they do in IMAP folders), so I had to write my own client. Python's imaplib made this easy.
As of v0.6.5 MHI is available as a PyPI package (
pip install mhi)
The same version also incorporates the old mkLinks wrapper-script functionality
python -m mhi.mklinks <destdir>
.mhirc is an ini-style config file (parsed with configobj). Useful keys:
connection- an imap[s]://[username[:password]]@host[:port]/path url string that specifies how to connect to the imap server
connection_passwd- the password to use when connection. To avoid putting the password in plaintext in this file, if the string is surrounded by backticks (`), it will be executed as a shell script whose stdout will be used as the password.
folder_prefix- the prefix to add to your IMAP folders
comp_template- the template put into your editor when you use
compto write new mail
repl_template- the template put into your editor when you
reply to a message
- use click - but would require new commands?
- more help - should be self-documenting
Licensing information is in the LICENSE file. (short version: GPLv3 or CCBYSA)