Bug 308839 - Characters missing in the chosen font shouldn't be silently substituted with some other font
Summary: Characters missing in the chosen font shouldn't be silently substituted with ...
Status: RESOLVED DOWNSTREAM
Alias: None
Product: konsole
Classification: Applications
Component: font (show other bugs)
Version: 2.8.4
Platform: FreeBSD Ports FreeBSD
: NOR wishlist
Target Milestone: ---
Assignee: Konsole Developer
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-10-22 22:33 UTC by Yuri
Modified: 2018-03-17 09:48 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
screenshot showing how some characters are substituted with non-monospace characters, and how out of style it looks (9.64 KB, image/png)
2012-10-22 22:35 UTC, Yuri
Details
File containing Simplified Chinese to reproduce the problem (318 bytes, text/plain)
2013-05-03 04:43 UTC, Ed Greshko
Details
Screen Capture of Consistent Fonts (81.29 KB, image/png)
2013-05-03 04:44 UTC, Ed Greshko
Details
Screen Capture of Inconsistent Fonts (85.77 KB, image/png)
2013-05-03 04:44 UTC, Ed Greshko
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Yuri 2012-10-22 22:33:19 UTC
I selected the font "Bitstream Vera Sans Mono" style=Roman size=14 which is a monospace font (on my system it is in file /usr/local/lib/X11/fonts/bitstream-vera/VeraMono.ttf). This font is missing Cyrillic characters altogether.

However, when the text displayed contains Cyrillic, these letters are being substituted with some other, non-monospace font. Cyrillic looks totally out of style compared to Latin letters, see the screenshot attachment. I can't tell where the font for these letters comes from.

Except for this apparent aesthetic issue, I see the artifacts when I am trying to move cursor through Cyrillic letters in vim. Text around Cyrillic jumps around with cursor motions, some parts of it disappear at times.

Konsole should either just display the question marks '?' instead of the missing in font characters. Or it should allow the user an alternative fonts to select from for the characters missing in the major font.


Reproducible: Always
Comment 1 Yuri 2012-10-22 22:35:04 UTC
Created attachment 74739 [details]
screenshot showing how some characters are substituted with non-monospace characters, and how out of style it looks
Comment 2 Jekyll Wu 2012-10-30 08:31:08 UTC
I don't think displaying "?" is  an unacceptable behavior or better than the current behavior.  But I agree  the situation can be improved.
Comment 3 Ed Greshko 2013-05-03 04:43:46 UTC
Created attachment 79651 [details]
File containing Simplified Chinese to reproduce the problem

I believe my issue is the same as above.  To recreate the problem I did the following.

1.  Installed cjkuni-ukai-fonts
2.  In "system settings" set the "General" font to UKai CN and the "Fixed-Width" font to FreeMono.
3.  In the settings for konsole set the font to either "FreeMono" or "Courier 10 Pitch.
4.  Use either vi or cat to display the contents of simp-CN.txt

If konsole is set to Courier the fonts are consistent as shown in the screen capture.

If konsole is set to FreeMono the fonts are a mixture of UKai fonts and FreeMono fonts.
Comment 4 Ed Greshko 2013-05-03 04:44:27 UTC
Created attachment 79652 [details]
Screen Capture of Consistent Fonts
Comment 5 Ed Greshko 2013-05-03 04:44:49 UTC
Created attachment 79653 [details]
Screen Capture of Inconsistent Fonts
Comment 6 Horacio Sanson 2016-05-10 12:14:53 UTC
This would break all terminal applications to non English speaking users. I use mutt to read my emails that come in Spanish, English and Japanese.

There is no single font that supports all three languages so limiting the terminal to a single font would be impractical for users like me.

The real issue here is not Konsole but fontconfig that is not configured correctly for your case. Here is blog post explaining the issue and possible fix:

    https://eev.ee/blog/2015/05/20/i-stared-into-the-fontconfig-and-the-fontconfig-stared-back-at-me/
Comment 7 Ahmad Samir 2018-03-17 09:48:43 UTC
IIUC, font substitution isn't done by konsole but rather by fontconfig; konsole uses whatever the fontconfig on the system has set up.

Closing as DOWNSTREAM; this is a distro fontconfig issue.