Yes, I finally got around to adding some "quail" stuff to my .emacs so that I can directly type various kinds of quotation mark and dash rather than rely on complex conversion rules that sometimes go wrong.
The lack of first-class support for balanced quotation marks seems to be a major problem for computers. I think a lot of computer code, particularly scripts, would be easier to read and less buggy if the languages had been designed by someone with balanced quotation marks on their keyboard.
As a thought experiment, imagine what Lisp would look like if '(' and ')' were the same character and you had to use the same work-arounds that shell scripts use for open quotation mark and close quotation mark being the same character. Instead of (a ((b c) d)) we'd write |a \|\\\|b c\\\| d\||. That's fine, right? We can live with that?
Perhaps we should think ourselves lucky that 0 and O are not the same character, and 1 and l, like they were on the first mechanical typewriters.
Mind you, there's one similar annoyance that predates typewriters and continues to plague us in Unicode: apostrophe and closing single quotation mark are logically quite different things, but they're the same character: ’
Yes, good question. One reason is that I haven't found a convenient portable way of modifying Linux keyboard configurations. Another is that sometimes I'm SSH-ing in from a machine that isn't even Linux.
I have used xkbcomp to replace a character I don't need with one I do, but the recipe tends to require maintenance and I don't know how to program dead keys with that approach. Perhaps there's a better way nowadays.
I was somehow expecting the answer to be: "Yes, I do all my keyboard input from inside emacs, including running the shell".
For linux-portable keyboard configuration, you may find that an unholy mix of setxbmap (to set up the grand options) and xmodmap (to modify a few particular keys) is what works best for you. At least it does for me.
> sometimes I'm SSH-ing in from a machine that isn't even Linux.
Came here to say this. UTF-8/16 represents such a relief from the previous text-encoding nightmares that I run away from any tooling that does not use it.
If anyone else was a web dev in the 90s, you know what I’m talking about.
The issue is that the name strongly implies that it doesn't. If a system is named "Doesn'tSupportImportantThingSys" don't be surprised when people don't bother to check the documentation to find that it actually does support the important thing. They'll just skip it.
[0] https://docs.asciidoctor.org/asciidoc/latest/text/quotation-...