I don't have a general problem with XTerm and Unicode. For the most part, things are working. This works great:
$ echo "¿dónde está la llama?"
¿dónde está la llama?
As does this:
$ echo -e "\xE2\x98\xA0"
☠
But this fails:
$ echo -e "\xE2\xA4\xB7"
Rather than the expected output (⤷, aka ARROW POINTING DOWNWARDS THEN CURVING RIGHTWARDS) I get the dreaded box. I'm currently using:
xterm*faceName: Hack Regular:size=12:antialias=true
This is the same font I use with gnome-terminal
, which displays the
same character correctly. I've also tried the same thing with a
variety of other monospace fonts (Droid Sans Mono, DejaVu Sans Mono,
Liberation Mono), which all have the same behavior in XTerm (but work
fine elsewhere). In fact, looking at the characters between \u2620
,
which displays correctly, and \u2937
, which does not, there are a
number of characters that don't seem to display correctly in XTerm:
$ python
>>> for x in range(0x2620, 0x2938):
... print(unichr(x))
I'd like to understand what's going on here. Why does XTerm have trouble displaying some of these characters, but not others?
xfd
, so that was useful. Do you know from which font something likegnome-terminal
is getting the missing glyphs? There doesn't appear to be an explicit configuration for that, at least ingnome-terminal
. Maybe it's a global Gnome setting somewhere... – larsks May 03 '16 at 23:20charmap
to view the glyphs in Hack, and it shows a lot of extra glyphs thatxfd
doesn't. This answer helped me work out the source of my problem. Now I wonder whycharmap
is showing symbols which aren't in the selected font? I thought that showing characters from a given font was the whole point of the program! – Aaron F Sep 03 '18 at 08:16