Post by @rl_dane@polymaths.social
Minor quibble, but for the life of me, I cannot figure out why I cannot produce a valid em dash ("—", a.k.a. 0xe28094 or U+2014) on #NetBSD, except with mate-terminal. I've tried (u)xterm, alacritty, and lxterminal, and they all either give me a junk character, or an en-dash followed by a hyphen. When I press the compose key and hit the hyphen three times, it immediately attempts to produce an en-dash after the first two hyphen presses, and then gives me a plain hyphen on top of it.
I've checked the Compose file, and it's set up correctly (as far as I can tell).
I think #OpenBSD has the exact same problem, but I haven't tried installing mate-terminal to find out.
cc: @gumnos
Ok, I created a brand new user and logged into it, stock everything.
I set up the compose key with setxkbmap -option caps:swapescape -option compose:sclk
The command I'm typing into each terminal is printf '<scroll lock>,<minus>,<minus>,<minus>' |hexdump -C
uxterm displays the em dash just fine
Alacritty displays \U+00C2\U+00AD-, and hexdump -C reports c2 ad 2d instead of e2 80 94
lxterminal just displays ?, and hexdump -C reports 3f
mate-terminal shows \U+00E2\U+0080\U+0094, but hexdump -C reports e2 80 94 (correct)
locale on this stock/default account:
LANG=""
LC_CTYPE="en_US.UTF-8"
LC_COLLATE="C"
LC_TIME="C"
LC_NUMERIC="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=""
locale on my regular account:
LANG="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_COLLATE="C"
LC_TIME="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_ALL=""
On my regular account, uxterm gives me 0xad2d when I press compose,minus,minus,minus,
Alacritty gives me 0xc2ad2d
lxterminal just gives me 0x3f
and mate-terminal gives me the correct 0xe28094
🍵 