Mutt’s secret sauce (2017)
In summary: in order to display HTML emails using Mutt, the author developed a system to automatically pipe them to a tool that parses plaintext multipart MIME messages and converts them to an HTML file, which gets displayed in an auto-reloading Firefox tab. The author also set up the reverse system to compose email, piping markdown to pandoc (which also gets previewed in an auto-reloading browser tab).<p>What is so compelling about a terminal-based email client like Mutt that makes it worthwhile to jump through the hoops to do this, rather than simply using a regular GUI client? I agree that some terminal-based tools are unequivocally far more powerful than GUI alternatives for certain tasks. For example, as a batch processing pipeline (especially when text is involved), the UNIX shell is second-to-none (e.g. “take all CSV files modified in a certain date range, whose name matches a certain regex, and extract all members of fields A-F if field Z matches a certain regex, then sort the result by field D” is an easy shell one-liner). Editors like vim and emacs make it much faster to edit text, due to their powerful editing, navigation, and search&#x2F;replace features that aren&#x27;t found in any other editor (e.g. single keystrokes let you replace everything within the current bracket scope, replace everything up to the next &quot;B&quot;, or delete the next two sentences). We put up with the (massive!) shortcomings of a terminal environment because these tools are just that much more powerful.<p>I don&#x27;t see how a terminal-based email client like Mutt is equivalently that much more powerful than its GUI brethren. And yes, I&#x27;ve tried it, and wasn&#x27;t impressed—it basically felt like an ncurses rendering of Thunderbird, with a similar feature set sans the ability to easily view HTML email or attachments. Yes, it’s more hackable than Thunderbird, but at the end of the day its hackability doesn’t make me a more productive email user.