The other day, I wrote about Álvaro Ramírez’s post on his Emacs theme. In a nice coda to Ramírez’s post, Aimé Bertrand writes about how he configures his UI and the functions he uses to support it.
Bertrand has some nice ideas. He’s a Mac user so some of them are meant for macOS only but others work in any environment. Among the Mac specific functions are those to switch his theme based on whether the Mac is in light or dark mode.
As he points out, switching themes can be a problem because some aspects of the previous theme can remain active. He has a function that solves this problem by first deactivating the previous theme and then activating the new one.
Another nice trick is dealing with the “warning beep”. The conventional way for dealing with this is just to set ring-bell-function
to 'ignore
but then you get no notification at all. You can also set visible-bell
to t
to flash the screen instead but many find that annoying. Bertrand solves this problem with a function that flashes the mode line instead. That’s arguably better than no notice at all but less annoying than an audible beep or flashing the whole window.
Finally, he’s got a function to propertize a string in a way similar to set-face-attirbute
. I don’t have a need for such a function but I can see how it’s just what you need if, say, you’re writing a package and want to specialize the appearance of a string.
As I say, Bertrand has some good ideas so it’s worth taking a look at his post. It’s fairly short so it won’t take much time to give it a read.