Emacs 25.2 Has Been Released

The latest release of Emacs, Version 25.2, has been released. Despite the title on the announcement at the link, it really is 25.2 not 25.1.

Posted in General | Tagged | Leave a comment

Paredit Video

If you’re working in a Lisp type language, you really want to be using paredit (or possibly smartparens). Smartparens can be used for any language or even plain text so many people prefer it. Some use both saving paredit for Lisp languages and using smartparens elsewhere.

As part of his Productive Emacs series, Arjen Wiersma has a nice video introduction to paredit. It gives you an idea of the basic functionality and what it can do. As Wiersma says, the nice thing about paredit is that it ensures you always maintain a syntactically correct program. It won’t let you do things like get unbalanced brackets or quotation marks. If you’ve written in a Lisp language you know how easy it is to get unbalanced brackets so paredit can be a life saver.

Wiersma’s video is 19 minutes so plan accordingly. If you decide you want to try it—and you should—be prepared for some frustration. I don’t know anyone who just started using it and stuck with it the first time. The real secret, I think, is understanding slurping and barfing. Wiersma’s video covers that important topic so after watching it and perhaps printing out a cheat sheet to help get you going you’ll be ready to try it out. Stick with it. Everyone who has, including me, says they wouldn’t want to live without it.

Posted in General | Tagged | 2 Comments

Using Babel Video

Rainer Köenig has a new video in his OrgMode tutorial series. This time he takes a brief look at using Babel in Org files. The video is a bit limited because, as Köenig admits, he doesn’t have very many use cases for source code in Org files and he doesn’t feel comfortable talking about things he doesn’t use himself.

Still, the video is a useful introduction to Babel and covers everything you need to get going. Köenig demonstrates running shell code and a Graphviz dot file to draw a graph.

The video is just short of 15 minutes so you may have to schedule some time. It’s definitely worth watching, especially if you aren’t familiar with Babel.

Posted in General | Tagged , | 1 Comment

Elfeed

Those of you who have been paying attention know that I’ve been threatening to complete my move to (almost) all-things-in-Emacs by switching to elfeed for my RSS feeds. It doesn’t really have a good iOS solution but it is easy to keep two or more laptops/desktops in sync so there was no reason for me not to give it a try.

I started with the configuration from Mike Zamansky’s first elfeed video and made a couple of small tweaks for my local situation. I also added a bit of Elisp to have elfeed run in a single large window and then restore the previous window configuration when I quit. That’s because I usually have two windows open in Emacs and things are easier with just one when I’m reading my feeds.

I’ve long been an admirer of Chris Wellons and have written about some of his posts before. Elfeed is just what I’d expect from him. It’s beautifully written and reimagines the process in terms of searching rather than a simple list of posts to read. You can search on tags or titles or times to get the exact list of topics you want to see. Take a look at Wellon’s README to get a good overview and watch Zamansky’s three videos on Elfeed to see it in action.

For the time being I haven’t implemented the very nice searching solution that Zamansky shows in the second two videos but I probably will. I decided to get used to Elfeed and get the basics the way I like them first.

I’ve already noticed a change in the way I read the feeds. Before, I used to read everything at once at the end of the day using Feedly in Safari. Now I find myself bringing up elfeed several times during the day and reading a few at a time—usually whatever has come in since my last session. It’s comfortable, mouseless, and built right into Emacs. I really like it.

Posted in General | Tagged | 3 Comments

An Easy Way to Download Your Email in Maildir Format

As you all know, I spent considerable time configuring mbsync to download my email in Maildir format so that I could try out mu4e and move one more function into Emacs. It wasn’t, by far, the hardest thing I’ve ever done but I did spend a lot of time on it and had to beg for help from Irreal readers. It was, when you think of it, a bit of a risk. A lot of effort and research for something I might not like all that much. As it turned out, I like mu4e a lot so it was worth the effort for me but your mileage may vary.

There turns out to be an easier way: just let Thunderbird download your email. The writer of the linked reddit piece sometimes likes to read his email in Thunderbird anyway so using it means

  1. He didn’t have to configure mbsync.
  2. He has only one copy of his email on his machine.

Since I did, in fact, get mbsync configured, I haven’t tried this on the Mac but I don’t see any reason why it wouldn’t work. If you’re not already using Thunderbird it might end up being easier to just install mbsync and configure it. If you do have Thunderbird installed and want to try mu4e, you can do it easily without worrying about getting your email downloaded. If you like mu4e and don’t need Thunderbird anymore, then you can go through the pain of getting mbsync running.

Posted in General | Tagged | Leave a comment

Ivy Described

Wilfed Hughes offers this nifty description of Ivy:

This matches my feelings about it exactly.

Posted in General | Tagged | Leave a comment

Pcase and Friends

Early last year, I wrote about John Wiegley’s excellent tutorial on pcase. This tweet from Bozhidar Batsov:

reminded me of Wiegley’s post and inspired me to revisit it. It really is excellent and if you do any Elisp programming you should definitely take a look at it.

Recently, Wilfred Hughes published a great post on Pattern Matching in Emacs Lisp in which he compares pcase.el with cl.el, dash.el, and shadchen for a variety of use cases. You can follow the link to see what conclusions he arrived at.

If your work occasionally requires pattern matching of some sort, you should definitely read these two posts. The pcase family, in particular, is very powerful and allows you to write concise code for matching patterns.

Posted in General | Tagged , | 1 Comment

Introduction to Spacemacs

If you’re an Emacs n00b coming from Vim or if you just like modal editing, you should take a look at Spacemacs. Many say it combines the best aspects of Vim and Emacs. Some even claim that it heralds the end of the editor holy wars. I doubt that last claim but I do think that Spacemacs is an excellent solution for Vim users who want an Emacs environment without giving up modal editing or having to learn a new set of key sequences.

Jon Canady has a nice video that serves as an introduction to/demonstration of Spacemacs. He approaches the topic as a developer so he shows how to use Spacemacs as a development environment. Take a look at the video and see if it provides a comfortable IDE for you. The video is just short of 8 minutes so it’s easy to find time to watch it.

Posted in General | Tagged | Leave a comment

Is Cursive Virtuous?

Irreal has a large corpus on the problems with cursive handwriting (see here, here, here, here, here, here, and here) but I haven’t written about it for a while. I was going through my queue of unpublished blog ideas and came across this New Yorker article on The Lost Virtue of Cursive by Mark Oppenheimer.

Oppenheimer begins with a nostalgia-soaked story of writing his daughter longhand letters while she was at camp and how it reminded him of getting such letters from his parents when he was a child at camp. He goes on to say how he always gets a warm feeling when he reads about efforts to keep cursive in the curriculum:

When I read that Washington state is now considering Senate Bill 6469, “an act related to requiring that cursive writing be taught in common schools,” I gave a little fist pump in the air.

But then he writes, “This is sheer nonsense, of course.” Of course it is. He admits that it’s just nostalgia and snobbery. It’s fine to bring up memories of those golden feelings one got as a child upon receiving a letter from Mom or Dad but that’s no reason to inflict cursive on children who neither want nor need it.

If this subject interests you, Anne Trubek, whom I’ve mentioned before, has a book out on The History and Uncertain Future of Handwriting. I really enjoyed the articles she wrote on the subject and am looking forward to reading her book.

Posted in General | Tagged | 4 Comments

I Stand Corrected...

Last Week I wrote that I’d finally gotten mu4e working and that after I moved to elfeed, I would have everything except browsing and iMessage running under Emacs. I remarked that I didn’t expect to have iMessage or a (full-featured) browser working under Emacs anytime soon so that once I got elfeed going, I would be as Emacs-centric as I was going to get.

It turns out that I was wrong about iMessage. On a whim, I asked DuckDuckGo if there were any packages for using iMessage from within Emacs and to my surprise there is one. Chad Sahlhoff has an iMessage for Emacs package available on GitHub. It’s not available in Elpa, which is probably why I missed it at first.

The package needs Helm, which I don’t use, so I haven’t installed it yet. After a quick look at the code, it doesn’t seem like it would be difficult to use Ivy or Ido instead. Maybe I’ll take a closer look as soon as I get time.

More generally, I’m really enjoying mu4e and it really does change the way you deal with email. The tight coupling with Org mode means that every email can be dealt with at the time you read it—even if “dealing with it” means putting it on a TODO list for later action—so my INBOX is always empty when I finish an email session. No more keeping an email around even for a couple of hours. And did I mention no mouse?

I now spend almost all my time in Emacs or Safari. There’s simply no reason to use other standalone applications except for occasional special tasks. For you dedicated Emacsers, I can’t recommend this way of life enough. It just makes your day a whole lot easier and pleasanter.

Posted in General | Tagged | 12 Comments