The character width (single vs. double cell) is not defined by the font. Instead, it is defined by the Unicode database and the matching locale definitions.
Some characters are of ambiguous width. They occupy a single cell by default, but gnome-terminal can be configured so that they occupy two cells. In your particular example the three arrows (the triangle and two "normal" arrows) are of this kind. Note however that there's no matching locale on Linux systems, so fullscreen applications are expected to fall apart if you do this. (See also https://bugzilla.gnome.org/show_bug.cgi?id=749414.) To enable this, launch gnome-terminal with the VTE_CJK_WIDTH=1 environment variable. In newer gnome-terminal versions this has been moved to a profile preference under the Compatibility tab. As far as the other symbols (e.g. flag) are concerned, they are apparenty wider in your font than the rest of the symbols, hence the font is lying about being monospace. Maybe gnome-terminal (vte, actually) could do a better job in fitting these symbols in the cell, but maybe that'd do more harm than good, I don't know. ** Bug watch added: GNOME Bug Tracker #749414 https://bugzilla.gnome.org/show_bug.cgi?id=749414 -- You received this bug notification because you are a member of Desktop Packages, which is subscribed to gnome-terminal in Ubuntu. https://bugs.launchpad.net/bugs/1570533 Title: wrong character width with Ubuntu Mono and replacement fonts in gnome- terminal: Status in gnome-terminal package in Ubuntu: New Bug description: I'm using Ubuntu Mono in gnome-terminal. When displaying some unicode (non ascii) characters that are not in Ubuntu Mono and a fallback font is used, the spacing between the glyphs is wrong (too small). The fallback characters are double width, but the next character is display after a single width, leading into overlapping characters. If I see this correctly, gnome-terminal is using libvte which is using pango to render text. I therefore checked how pango renders this with `pango-view --font="Ubuntu Mono 32" --markup --text='<span fallback="true">xxxxxxxxxxxxxxxxxxxxxxxxx
A▷C✚D⚑F↓G↑H..I☺J</span>'` and `pango-view --font="Ubuntu Mono 32" --markup --text='<span fallback="true">xxxxxxxxxxxxxxxxxxxxxxxxx
A▷C✚D⚑F↓G↑H..I☺J</span>'` . In both cases double with characters or "replacement boxes" are displayed and no overlapping occurs. If I use the "monospace" font, no overlapping occurs in gnome- terminal. Whose fault is this and how can it be fixed? I'm on Ubuntu 14.04.4 LTS, gnome-terminal's version is 3.6.2-0ubuntu1, tf-ubuntu-font-family 0.80-0ubuntu6 and everything is up to date. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/1570533/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : desktop-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp