Linux – Some unicode symbols still not displayed with urxvt or xterm

arch linuxfontsunicodeurxvtxorg

I've been having trouble viewing certain unicode symbols under urxvt or xterm. The font I'm using is Source Code Pro for Powerline which I installed through the powerline fonts repo. My .Xresources contains the following:

  9 URxvt.font: xft:Source\ Code\ Pro\ for\ Powerline:pixelsize=22,xft:PowerlineSymbols
 10 URxvt.scrollBar: false
 11 
 12 Xft.dpi: 150
 13 Xft.antialias: true
 14 Xft.rgba: rgb
 15 Xft.hinting: true
 16 Xft.hintstyle: hintslight
 17 
 18 XTerm*selectToClipboard: true
 19 XTerm*termName: xterm-256color
 20 XTerm*locale: true
 21 XTerm*metaSendsEscape: true
 22 UXTerm*faceName: Source Code Pro for Powerline:style=Medium
 23 UXTerm*faceSize:10

but I still get funky behavior like in the following circumstances

enter image description here
enter image description here
enter image description here

$TERM outputs rxvt-unicode-256color

Running urxvt --help 2>&1 | grep options: returns iso14755, unicode3, and frills among other things.

So I'm unsure why I still can't see some of these unicode symbols because I have all my bases covered? This is happening system-wide as I can't see certain symbols in Firefox either, so I think it has to be a font issue.

Thanks in advance!

Best Answer

What I do here to get the glyphs I need working on urxvt is to add more fonts in the font list:

URxvt.font: xft:Ubuntu Mono:pixelsize=18:antialias=true:hinting=true,\
            xft:Source Code Pro:pixelsize=18:style=medium:antialias=true,\
            -*-unifont-*-*-*-*-*-*-*-*-*-*-*-*

It is still not perfect, though. I still can't get everything properly displayed in this file: http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt

What helped the most so far with most unicode glyphs I use frequently was the inclusion of Unifont in the list. I hope it helps you in some way.

As for xterm, it doesn't support multiple fonts.

To discover which font provides a certain glyph, I use gucharmap (available on linux distros at least), hit Ctrl-f, C-s-u <unicode codepoint> (ex: C-s-u2713 which is ✓) and then I right-click on the glyph found and the app shows the name of the font used to render that specific glyph.

Related Question