The wisdom of being selective about python-lsp-server plugins

As far as I know, the most common Python server for the LanguageServer Protocol is still python-lsp-server (pylsp) , although thereare now some alternatives (see eg the Emacs lsp-mode page on thisfor all languages ).Pylsp can use a number of plugins (what it calls 'providers') thatprovide additional checks, warnings, and so on; some are integratedinto the pip installation process if you ask for them, and some ofthem require injecting third party packages. One


Keyboard keys and characters

When I wrote about my understanding of completion in Emacs , I mentioned thaton demand completion is accessible through what Emacs calls "M-TAB",a notation that means 'Meta-', where Meta is normally your Altkey(s). Over on the Fediverse, Jason P mentioned that this completionis also accessible through "C-M-i", Ctrl-Meta-i. This will raisethe eyebrows of some people, because Ctrl-i is also a tab; in


My understanding of various sorts of completion in GNU Emacs

One of the things that happens when you (I) only touch your Emacsconfiguration every few years is that you forget exactly how thingswork, especially if you didn't fully understand them when you werecopying directions from elsewhere when you set things up. Due to recent events I've beendoing a lot of GNU Emacs stuff, which has involved both recoveringold understanding and learning new things about completions . Before I forget itall again, I'm writing it down for my future use.

GNU Emacs


The tools I use to read email affect how I read it (more than I thought)

Up until recently, I read most of my email with exmh ,a graphical X frontend on (N)MH ,and some of it with command line NMH tools. I've used exmh atwork for a long time, and then at home from early 2020 onward (whenI started working from home a lot). Recent changes in my homeInternet made using exmh from home less pleasant, so I started trying out the only othercurrent (N)MH frontend that I know of,


The three modern formats for email forwarded by people

It's routine for people to forward email around, often with theirown comments added. Today, there are three different formats thatthis is done in, all of which have their own ecological niche, andall of which you may need to care about if you're setting up andconfiguring a new mail client environment, or if you get sentforwarded email by people (for example, because they're reportingsome problem with email, perhaps relayed to them from someone else).

The first format and


Understanding the orderless package for GNU Emacs

Orderless is a popularEmacs package for modifying how minibuffer completion works .It gets mentioned frequently when people talk about their Emacscustomizations or put together 'bedrock' setups and, driven by that, Igave it a try. My initial reactions weren't particularly positive ; I didn't likethe changes to default completion behavior ( which I turn out tobe very accustomed to )and I didn't understand when and why I'd want its style of completion,or even really what it was. However


X's two ways to send events to X clients (more or less)

Once upon a time, the X11 protocol was shiny and new. One small part of the protocol (and theclient library) was a way for one client program to send X events,such as key or mouse presses ( or more routinely expected things )),to another program. In Xlib , thisis XSendEvent() ( also ).When the target X client receives this event, it will have a specialflag set in the X event structure tosignal that it comes from a SendEvent request


You can do Apache HTTP Basic Authentication through PAM

I recently wrote about how Apache's HTTP Basic Authenticationcould do with more logging . One ofthe reasons many other programs that do authentication have betterlogging is that they use PAM ,and it's the PAM modules and PAM framework that's doing the logging.If Apache could use PAM for HTTP Basic Authentication , it'dget (somewhat) better logging for free. As it turns out, you actuallycan do this in at least three ways, with three different third partyApache modules (at


In praise of modest, simple third party packages for GNU Emacs

Lately I've been using GNU Emacs more than usual, in a situationthat's driven me to actively customize it (specifically, I'vebeen pushed to work in MH-E because my remote X experience fromhome got worse ). As one oftendoes in this situation, I've been reading articles about how peopleset up and customize their Emacs environments with third partypackages from ELPA and MELPA , and have beentempted into trying some of them out. Over the course of thisexperience,


What we did when we couldn't gracefully roll over an OpenVPN TLS root certificate

A few years ago I wrote an entry on my failure to gracefully rollover a TLS root certificate for OpenVPN ,where I described the problem and what hadn't worked for me, butdidn't describe what we did about it (partly because at the time Iwrote the entry, we hadn't dealt with the problem). Recently acommentator was interested in what we ended up doing, because they'rein a similar situation. Unfortunately we didn't find a solution, sowe had