Fonts on Librem5

Needing to use Greek on my phone I soon realized that the default fonts, that is Cantarell does not support Greek. Only Latin and Cyrillic. So the phone falls back to Sans which is a not a good looking font for Greek.

So I was looking for a better solution with good Latin and Cyrillic support. By the way, I work with fonts a lot (for example https://ctan.org/pkg/newcomputermodern). Of course there are tons of fonts out there. But some like my proposal below, first look great on screen and second they bring some nostalgia from the early Unix/Linux era.

I tried the Go project fonts by Bigelow&Holmes: https://blog.golang.org/go-fonts
They look great on L5, they support Greek too, they use the so called DEK 0
(it was a request I think of Donald Knuth to Charles Bigelow to design 0 to look different from O) and this is very useful on the terminal.
And the fonts come with a free license to redistribute and modify if needed.

The support for Greek is great as it provides correct Greek semicolon (which is wrong in other fonts including Unicode, and Unicode refuses to fix telling me “you are right, we have it wrong but will not fix it for backwards compatibility” !!! So I have to live with their mistakes…) The Go fonts are correct in this too.

How to install: Download the fonts and place the provided ttf in

/home/purism/.fonts/

Create the .fonts/ folder if not present.

Use the scale screen app to scale to 1.25 and launch the Gnome-tweek app in landscape! Change the fonts to your liking. The defaults are Cantarell, Sans, and Mono. The screenshots below use Go Regular, Go-Medium Regular, Go-Mono Regular and Go-Bold. Do not forget to close tweaks and scale back to 2x.

By the way @dcz the English keyboard picks up the font changes and switches to Go but only for Latin. For Greek I guess it is hardcoded to use Sans(?) can I change it to something that looks better like Go?

3 Likes

Latin shouldn’t work any different than Greek. If you are sure the font you selected actually has the characters you want, then you should file an issue in Squeekboard, explaining the problem in detail.

1 Like

There are also a few fonts available through the packaging system:

https://packages.debian.org/de/buster/fonts/ (amber)
https://packages.debian.org/de/bullseye/fonts/ (byzantium)

Not sure if they are all in the PureOS repository, in the worst case one could download those .debs and install them by hand. There are a few fonts mentioning greek in there.

3 Likes

Is it bad that all I can think about now is “what the hell does a Greek semicolon look like?”! :open_mouth:

3 Likes

And you’d think of all the distros “byzantium” (not Istanbul) would support Greek. :slight_smile:

4 Likes

It is just the upper dot of the char :
Unicode decided at some point that this is the same with the character periodcentered. Periodcentered is what the name says; a dot in the middle of the x-height. Greek semicolon should be located at the x-height (not half of it). But as I said Unicode refuses to fix it although they admit it is wrong. I do not understand these guys. So much bureaucracy. It is like saying that Microsoft will not fix the blue screen of death for backwards compatibility… :rofl:

Font designers follow Unicode rules and routinely copy the periodcentered character (uni00B7) to the Greek semicolon slot (uni387) although they are different slots, just because Unicode says “they are the same”.

On the other hand designers who know the language (such as Bigelow and Holmes) refuse to follow this bug. Think about this: it is not only for native Greek people. Philologists and Philosophers in the US can not properly write a Greek passage because some person in Unicode decides so. For me it is unthinkable.

About squeekboard. Dear @dcz I am sorry my eyes were not good when I looked at the keyboard. It did not change (even Latin) with my font changes. So the correct question is how to change this? There must be someplace that declares that Sans must be used. And Sans looks bad (at least for Greek).

2 Likes

There is currently no way to change the font in Squeekboard, and I’m not sure when I can get around to it. Please file an issue, and there we can discuss the best approach. Otherwise I guarantee your problem will get forgotten by the time someone can spare some attention to fix it.

1 Like

I will gladly do it. But where is squeekboard. I entered Purism Git Repo with the link you gave me above but I do not see where I should file this issue.

Please excuse my ignorance.

1 Like

Oh, the forum software must have botched what I pasted. Anyway, here it is: https://source.puri.sm/Librem5/squeekboard/-/issues

2 Likes

I can feel the pain. I just did a big translation to orca and it was mostly names of the most rarely used unicode mathematical symbols of so high order that I’m not sure anyone has ever bothered to translate them to a human language from math. Greek may have been included :wink:

Backwards compatibility is important. Wouldn’t the right approach be to introduce a new character that is correct? Then, over time, software can be changed to allow (and even encourage) the new character where that is appropriate, while still recognising the old character.

1 Like

If it is an upper dot. How about putting a regular dot as superscript? It will shrink but then again you can increase the font size to huge. (The reader need not know.)

1 Like

That doesn’t work on platforms that don’t allow you to alter the font size (like this one).

I’m not against changing font sizes in Squeekboard, but no one asked for it yet. Filing an issue would be a good first step, I take into account how much conversation issues have when choosing future features.

1 Like

Here it is:

1 Like

No it can not work. It will not work when writing in capitals or when in ancient language a word ends in ksi (Îľ). Remember that it should be at x-height. (not at X-height).

Maybe you are right. When I talked to them they did not give me that option and I did not think of it. Maybe I should try again. But I thought that Unicode is there to ensure that people can write their languages. What will happen if other mistakes are discovered in the huge chinese block? They will leave the mistakes there for backwards compatibility? Why this is not a bug? Aren’t bugs to be fixed? Anyway, maybe I have to talk to them again with this new proposal.

But you see… it is not only fonts. Will X11 fix their maps? I have to give another fight there if Unicode accepts to add a new slot. It is tiresome. It would be much faster if they fixed their mistakes. The “time heals” approach you propose why is not relevant to old fonts?

Will there be a penalty for anyone using Comic Sans…? :crazy_face:

No. But yes for WingDings. :crazy_face:

1 Like

There is always Humor Sans in the Debian repo :slight_smile:

1 Like

Maybe there’s something usable in GNOME Characters; see this app sample: List of Apps that fit and function well [Post them here.]