Weekly Emacs tip #12: Emacs 30.1 released
A few days ago, on the 23rd of February, the Emacs maintainers released the latest major version of Emacs: v30.1 (new Emacs major versions always seem to wait for the .1 minor version before being released publicly).
This release has a couple of interesting new features and updated behaviours. As usual, Mickey Petersen has prepared a blog post in which first summarises the highlights and then steps through the NEWS
file discussing each change since the release of Emacs 29.
Another thing that’s good to know is that Mickey Petersen’s “Mastering Emacs” book is now on sale with 30% off. At the time of writing, this offer is still valid for the next two days. It is the best book about Emacs that I have ever read and he updates it for every major release of Emacs. I think it is well worth the money, especially, since the updates are free!
Emacs 30.1 contains two security fixes, so upgrading is advised regardless of any new features.
In terms of new features, it is worth noting that Emacs can now be installed natively on Android devices. I’m not a big fan of using tablets, let alone phones, to “produce” anything. For me those devices are more for consumption, but who knows, I might just give Emacs a try. Especially since 30.1 brings improved support for touchscreen devices.
A more important change, however, is the fact that native compilation is now the default. I compile my Emacsen from source, but for those who don’t: you can now assume that it is enabled in where ever you get your package. Native compilation (of Elisp libraries) gives a significant speed boost to Emacs.
Another one, especially for those using LSPs, is the new builtin JSON parser. Emacs 29 required libjansson
in order to parse JSON (which is output by LSP servers) at a decent speed. Emacs 30, however, has its own parser and it is said to be much faster.
I like the fact that the which-key
package is now builtin, no need to install it explicitly. See my Emacs Tip #1!
Tramp, Emacs’ way to access files on “remote” locations like computers over SSH, but also containers of various source, now also supports Apptainer containers. That will be interesting to test!
One of the Tramp-related variables that I set in my .emacs
is tramp-use-ssh-contromaster-options
. Personally, I think using ControlMaster is a must for anyone using Tramp with SSH (which I’ll discuss in a future tip). Apparently, this variable has been renamed to tramp-use-connection-share
. The old name will still be around as a variable alias, but I’ll update my config anyway.
At first glance, these are (for me) the most important changes in Emacs 30.1. I’ve only compiled it yesterday, so I haven’t used it extensively yet. But so far, no hiccups!
No Comments