First, there was a suggestion to write my own answer rather than editing the question. Also, thanks to everyone for supplying intelligent and thoughtful comments. I obviously needed the help.
I had a saved keyboard macro set to produce —
, which is an em dash
for use in HTML.
The macro looked like (global-set-key [?\C-c ?h] [? ?& ?m ?d ?a ?s ?h ?; ? ])
.
Me? Clueless, so I just ended the expression with a semicolon
and a space
. And oddly enough, it works fine. It did work fine, until I did a bit of customizing via the Emacs menu system while adding a couple of tweaks to make use of some Org mode features.
Now that I understand where the problem is and why it should be a problem it all (finally) makes sense. The semicolon begins a comment, which causes two parenthetical expressions to be not-closed, i.e. ]
and )
. This actually is reasonable in the Emacs world. Even I can understand it.
But it gets better.
The init.el
file, bent as it was, still let itself be saved without even a tiny squeak of protest, and ran perfectly. It was only when I tried something like changing the face color, for example, that init.el
would get ornery. And reluctantly throw a an error message. I guess we have to call it a message even though I've had better communications with a drunken chicken. (Her name was Heather, by the way. She was actually pretty astute at times, besides the eggs too, but then there was that drinking problem. Anyhow.)
So there I was, up to my elbows in a bucket of snakes all going every whichway and suddenly it all made sense, at which point I knew I'd better start backing away or it would soon be too late.
Emacs. Make sense? Ow.
So after about six hours more searching, I found \
(It's how you draw an escape hatch in Emacs). So I added that to the macro and it kept working. And now whenever I get in there and try to do some customizing and things get hot and furious, that little escape hatch pops open and lets out enough steam so things don't blow up any more.
The updated macro with the escape hatch now looks like:
(global-set-key [?\C-c ?h] [? ?& ?m ?d ?a ?s ?h ?\; ? ])
.
I guess the moral of the story is that you can stick your head into a fan if you want, or stick it into Emacs. Pretty much the same result, except that Emacs can also do —
.
If it really has to.