Posts

dired no hiline

I was trying to make sure that hl-line mode (to highlight a line) is not on in my dired buffers without changing its presence anywhere else, since it messes up display of my diredfl permission faces. Unfortunately, the following didn’t work, probably because “setting” isn’t the same thing as calling the variable. What was the best way to selectively disable hl-line-mode? There were many good answers on Reddit1. (add-hook 'dired-mode-hook (lambda () (setq-local global-hl-line-mode nil hl-line-mode nil) ;; I wasn't sure on the relationship between ;; these two, or even which one was being used )) Learning along the way: global- is unrelated to hl-line-mode It turns out that global-hl-line does not share anything in common with hl-line-mode other than the end result, so altering one does not alter the other.

How do I change Firefox urlbar font size in 89.0?

My userChrome.css doesn’t seem to be doing what it did previously, and the text in my URL-bar is far too small. Here’s what fixed it in my userChrome.css previously: #urlbar {-moz-appearance: none !important; font-family: Tahoma Bold !important; color: Black !important; font-size: 16pt !important; } but it doesn’t seem to be doing anything now; change the font-size and restarting Firefox doesn’t seem to make any difference. Why is it behaving differently now?

Tip: BBDB mode for contact management

BBDB1 is one of those libraries that has been around for so long it would be highly irregular if we weren’t talking about Emacs. The size and age of the thing is what originally scared me away from it in favor of org-contacts2, which had the advantage of being orgmode but was deprecated a long time ago. With BBDB you don’t usually view the elisp database that lies beneath, instead using its robust interface to interact.

Anzu mode for incremental find-and-replace

Shared on the Emacs Tip & Tricks thread 1. Anzu is great for previewing your query-replace as you go; just remember not to attempt it on HUGE files as the preview (or at least, result counting) gets problematic. Also remember that if you are doing a regexp replace that has side-effects (e.g. incrementing a counter), the preview itself will also do all those side effects before you run the actual replace.

Clojure in Action: Teaching new Clojure devs on our work applications

For reasons of internal review but also for the benefit of the community, at work I’ve started recording and making public some of our work meetings, where we build web applications using a full-stack Clojure setup derived (years ago) from Luminus. Several of our team members are brand new to Clojure, so we deal with lots of basics. Questions are welcome! https://www.youtube.com/playlist?list=PLRoUFLqvFD3MRYXTnXQyl-z_svY2gDhFi

What can Emacs give me in 2021? A response to the Mother of All Emacs Papers

Image above NOT a title for Burrough’s 1912 story “A Princess of Mars” 1 This is an essay inspired by Greenberg’s 1996 “Mother of All Emacs papers"2. We learn in that paper that Emacs was born of a necessity for a text tool that had to solve several problems: Hardware (memory space) limitations Costly, lengthy compilation times for other programming languages Steep learning curve compared to arcane character-editing tools, which were painfully close to the assembler and showed it It succeeded in all of these, and after we look at how it succeeded we’ll be ready to think about its viability in an age where the problems have changed completely.

exwm as a recognized desktop manager (my KDE SDDM)

For the past years I have had a little script that shuffles my ~/.profile file back and forth so that rebooting starts in exwm or not, since starting in my GUI is occasionally exactly what I need. Reviewing the exwm page1, though, I found a way of adding exwm (actually, “emacs”) to the list of “Start Session In…” options that are shown on the login screen, which bypasses the ~/.

straight change repo?

I just had an issue in which I changed the repo of a package I had been using (use-package), to a fork of that package. Making that change in Straight proved that either there needs to be an easy way, or I need to know the easy way. Due to conflicting recipes I ended up changing the use-package statement (expected), editing the straight cache file (ugh), manually deleting folders in /repos and /builds, and restarting emacs.

pdftools cannot open libpoppler.so.108

Error Message File mode specification error: (error Error running ‘/home/me/epdfinfo’: /home/me/epdfinfo: error while loading shared libraries: libpoppler.so.108: cannot open shared object file: No such file or directory Fix My system recently upgraded libpoppler to 1.09 with no 1.08 in sight. By making a symlink so that 1.08 is actually pointing at 1.09, pdftools resumed operation. A risky maneauver since we can’t guarantee 1.09 isn’t breaking, but it seems to work here and could be easily undone if necessary.

why does exwm sometimes fail to connect to extra monitors?

I have a 3-monitor setup, using a USB3 dock. Plugging in to my windows machine just works; all monitors connect. However, plug in into my exwm machine sometimes fails, where the extra monitors will remain blank. Usually this is easily fixed when I see it; I press C-M- to open up a terminal outside exwm, and all monitors come alive; then C-M- back to exwm and it finds them, and all workspaces are where they should be.