Climbing the winding stairs of Emacs

My earlier reports about my interest and use of emacs had mostly focused on editing code or text, mostly CSS, html and org files. I had considered using emacs for email reading and processing, and I had backed away from it although I wanted to give myself the time to consider more options and get even more acquainted with the various tools and modes available for the famous text editor. Today, I’d like to share with you my latest progress and how my choices to invest more on Emacs shape the way I will be using my desktop in the near future.

Increasing my daily use of Emacs

Aside thinking about email clients on Emacs, I also thought that if I were to do anything else than my (almost) daily editing of org files and note taking, I would need to increase the possible use cases involving emacs on a regular basis. As I wrote in my post this Summer, I use Emacs mostly for its fantastic Org-mode, this notes/organizer/GTD/project management/calendaring set of tools. I use Emacs from time to time (say a few times a month) to edit CSS and html files, sometimes even quite complex CSS. More rarely javascript or python files will come in my way and I may need to edit them. The “programming” angle of Emacs does exist for me, but it would alone keep my use of Emacs only somewhat more frequent than, say, the Gimp. If I had continued working on web sites on an almost daily basis like in 2013, I would use it a lot. These day this type of activity is not infrequent for me, but it certainly does not happen daily; and it falls under the categories of “hobbies” and “family and friends stuff”.

In this context, it is Org-mode that really took off as my main and daily use of Emacs. But Org-mode did carbon-emacs-iconmake me curious about the power and the possibilities of Emacs. Using it more, even on a daily basis, would then mean using other tools, which is what I have actually started doing:

  • RSS reading : After a frustrating experience with the native rss reader of Emacs, Newsticker, that led me to the conclusion that it does indeed have its own XML standard against everbody else including the W3C and the OASIS, I opted for Elfeed. It is fast, rather simple, and works pretty much out of the box.
  • Note taking through Org-Capture: It’s not enough to use the Scratch buffer, it’s nice to actually take notes and manage them; well to be honest, I don’t do refilings nor attachments yet; but actually taking notes with Org-mode is quite nice.
  • Drafting some documents and blog posts with the MarkDown mode (I’m investigating direct exports to WordPress with org2blog)
  • Browsing some web pages with eww, at least the ones that are really mostly about text
  • Having fun with themes, which, oddly enough, involves installing packages, dabbling with Emacs packages repositories.
  • Configuring Emacs utilities, such as the Recent tool
  • Trying to do more stuff from within Emacs, such as opening a document (.doc, PDF, ODF…) only for a short consultation, or browsing tweets (yes!)
  • I plan to investigate dired (file manager) soon.

You may now start to notice the recurring idea behind these use cases: all of them aim at increasing my ability to stay within emacs when doing things on my computer. Is it absolutely useful? Not overly so, because I don’t master all these tools to the point where I can gain time in a significant way; but that’s one of the goals I keep in mind. Do I get to learn a lot? Absolutely, yes. Learning all this does make me go both through setbacks and leaps forward. I’m starting to get to the point where I instinctively use Emacs keybindings for other programs, and where I no longer even have the instinct to look for the mouse when on Emacs. I’m pretty happy with all this. But I had to continue and come back to the mail challenge.

Emacs an Email

Before configuring any email “client” or component on Emacs I had to think a bit about which one would be best for me. I took some time at this surprisingly crowded list of available options. In my view, emacs email viewers, indexers or anything that remotely would look like a client fall in two broad categories (the Unix philosophy and design precludes anything like Evolution or Thunderbird and relies instead on specific tools for each type of usage: fetching mail, sending mail, etc. typically are not part of the “email clients” on Emacs). These two categories are not based on features, but rather on generation of tools. The first one is the old, historical category where you have Gnus, Rmail and tools like VM, MH-E and a few more. The new category tends to be composed of smaller and more recent projects, doing one thing well but not much more than that: NotMuch Mail, Mu4e, Wanderlust and Mew. There are others of course, but they’re just less known.

My requirements are these: IMAP access, local storage relies on MailDir or MH, multiple accounts are required. After having read quite a lot about the tools mentioned above, I decided once again to in favor of mu4e. Gnus was way too complex and on top of this seems to be rather slow, especially when used with MailDir as a backend. RMail is somewhat more interesting and simpler, but its primary reliance on mbox would have me pipe all sorts of odd hacks to save my mail as MailDir. VM did not seem to be developed anymore and does not meet several of my requirements anyway.

I got interested by Mew; Wanderlust seemed rather buggy judging by the general feedback; NotMuch Mail really hooked me up for a while and it was the most serious contender to mu4e. NotMuch is first of all a mail indexer, just like mu is the indexer of mu4e, but the two are different in how they search and index mail. The development of NotMuch Mail is a bit more recent and some really nice things are happening in this project. One thing ticked me off at first, and then I realized that mu4e’s longer existence had made a few more things available in terms of interface that ultimately made me choose this software over NotMuch Mail: NotMuch Mail tags email. It does not seem to have an approach based on folders; sorting emails may thus be powerful but in my eyes rather unsettling. The interface of mu4e is better suited for threads management as well.

This time, I set and configured mu4e for my three main accounts, which amounts roughly to 5 Go of emails. The indexing and retrieving is indeed wonderfully fast; I guess now that I use this tool not just with 50 Mo of emails in one IMAP account, I can experience why people love non-Gui email clients and indexers that much. So far I’m not getting rid of Claws-Mail, which sits on my primary machine; and I keep Evolution at hand, were it only for calendaring. I need to learn the keybindings, set quite a lot of details  (html view, vertical split view, which seems to work well with mu4e). I’m not using this on a daily basis, but I’ll invest more time when every little setting is properly configured.

I really like this experience. Emacs’ winding stairs may be at times difficult, but overcoming them is definitely rewarding.

What about word processing?

One of the most well-known epiphanies about emacs is that you can do everything with it if you realize that you manipulate insanely high amounts of text as a developer or as an “information worker”. This seems to suggest that office suites like LibreOffice could become obsolete for someone using Emacs or any other powerful text editor. If you plan and can use LaTex and that it covers the sum of your needs when sending documents to other people, I guess it’s great and you don’t have to rely on an office suite. The same goes for spreadsheets if all you need is simple tables and simple presentations as well. But life tends to be more complicated than that, and after some investigation, I do not plan on learning Latex anytime soon: LibreOffice does all I need when it comes to creating and editing complex visual documents. I can organize my thoughts on Emacs; but I won’t be able to properly draft the same document on Emacs. I know how Latex works; but very few people can rely on Latex to edit back the same document. I also believe there’s an actual elegance in using office suites when they’re being properly used, especially when it comes to applying styles and working with them as the baseline of document creation: this is something that seems to elude inexperienced users as much as the power users of LaTex and text editors in general. To me the debate between writing your content and then formatting it vs. writing and formatting at the same time is not a relevant one: an office suite can help you structure both the form (the document) and your thoughts (its content) very effectively: here again, it’s all about learning!

Leave a Reply

%d bloggers like this: