We use GNU Unifont in Solvespace for the text window/property browser. It's built right into the executable. This turned out to be amazingly useful. Some people have CJK stuff in their designs and it "just works" on all platforms. I was also looking into hole annotations in CAD and was pleased to see the symbols for counter-bore and counter-sink are both already there in unifont.
GNU Unifont is a bitmap font. It provides a fixed glyph for every code point in the BMP. It also covers additional code points in other planes.
I am guessing this is useful for writing editors that can edit Unicode text without knowing anything about various languages and their conventions. Authors who try to use this font to compose documents in (say) devanagari will have to learn the Unicode characters "in the raw", because I don't see a shaper for devanagari, so they won't get feedback that looks like real text.
If anyone can explain this better, please do!
show comments
nycticorax
Shouldn't the first sentence on that website describe what GNU Unifont actually is? I guess it's a single copyleft font designed to have coverage of all (or nearly all?) unicode code points?
show comments
edent
It also looks beautiful when printed out - I made it into a spiral which hangs on my wall.
> Unifont only stores one glyph per printable Unicode code point. This means that complex scripts with special forms for letter combinations including consonant combinations and floating vowel marks such as with Indic scripts (Devanagari, Bengali, Tamil, etc.) or letters that change shape depending upon their position in a word (Indic and Arabic scripts) will not render well in Unifont. In those cases, Unifont is only suitable as a font of last resort. Users wishing to properly render such complex scripts should use full OpenType fonts that faithfully display such alternate forms.
An important caveat, that while this is potentially a useful fallback font to at least something for unknown glyphs, without any sort of combining/shaping, it's not going to usefully render a whole bunch of languages (i.e. languages like Arabic will be a disaster)
ekjhgkejhgk
You know, when I see GNU, I don't necessarily think it's the best software in all dimensions, but it's almost the best in terms of respecting its users.
magios
i use this font system wide, forced as the only font in firefox, with web or downloadable fonts disabled. i also have my some of my own characters in csur, the conscript unicode registry, that is mapped to u+e000 thru u+f8ff so the unicode codepoints used by random webpages for various glyphs show up as my own. qt is a pain to use sometimes with unifont only but iirc QT_FONT_DPI=128 environment variable fixes that. i just wish i could get unifont only to work in games like rimworld.
show comments
kwk1
Often I've seen font websites have a sort of "font hello world" preview image, and adding something like that here would be great. Apparently they're called "type specimens".
aidenn0
I had to uninstall unifont to get nice looking CJK fonts in Firefox; somehow the font-fallback for my font was picking unifont over all of the other fonts installed...
Really like the idea of a font with extremely broad glyph support, sadly it looks really blurry on any custom size, like if I'd try to use this font in my IDE but would want to make it smaller so I can fit more text on the screen.
For that particular use case (tbh mostly aesthetics than glyph support), I also found the TTF version of Terminus to be pleasant: https://files.ax86.net/terminus-ttf/ though JetBrains Mono is good enough for me to not venture far away from defaults, albeit maybe Liberation Mono / Cousine was the peak of readability at somewhat small sizes out of any font out there for me.
Wonder if the Potrace approach of Terminus TTF version would work for Unifont. I imagine that Unifont is a pretty good default when doing shipping labels and for such utilitarian use cases.
TheRealPomax
The problem with Unifont is that is was never designed to actually support real text, it just has glyph support. So if you need "it can do every language I might want, while looking pretty good" you're far better off with the (much newer) family of NoTo fonts, which aren't just free to use, but explicitly use the modern SIL Open Font License.
show comments
kccqzy
Please don’t use this unless the purpose is specifically to have a retro effect where you eschew modern fonts for aesthetic purposes. Because for any other purpose this just looks terrible, even for English text. Scripts requiring special shaping won’t be supported well. I don’t think it even supports different shapes for the same CJK character according to the language.
show comments
asgs
it is so nice of them to explain the fact using the GNU Unifont in commercial non-free softwares clarifying when it is required to be published to public domain.
bborud
Why does every GNU web page look like 1996? This actually matters. Even stripping the page down and removing any styling would make it look more trustworthy less like an abandoned project.
Perhaps a GNU style could be something we could help fund?
show comments
joeel84
Amazing work!
jarbus
Been a proud user for a while at jarbus.net :)
phoronixrly
I like this better than the Google Sans Flex that made the front page today.
positron26
> A user has asked if GNU Unifont can be used with commercial (non-free) software.
One can be forgiven for thinking the author means to imply that all commercial software is non-free. It is a further disappointment that anyone has to ask.
Open source was right to get rid of the intentional and unintentionally anti-commercial motifs that only got in the way of paid open source development.
We use GNU Unifont in Solvespace for the text window/property browser. It's built right into the executable. This turned out to be amazingly useful. Some people have CJK stuff in their designs and it "just works" on all platforms. I was also looking into hole annotations in CAD and was pleased to see the symbols for counter-bore and counter-sink are both already there in unifont.
You can see unifont in the experimental web version here: https://cad.apps.dgramop.xyz/
For others who might be as confused as me:
GNU Unifont is a bitmap font. It provides a fixed glyph for every code point in the BMP. It also covers additional code points in other planes.
I am guessing this is useful for writing editors that can edit Unicode text without knowing anything about various languages and their conventions. Authors who try to use this font to compose documents in (say) devanagari will have to learn the Unicode characters "in the raw", because I don't see a shaper for devanagari, so they won't get feedback that looks like real text.
If anyone can explain this better, please do!
Shouldn't the first sentence on that website describe what GNU Unifont actually is? I guess it's a single copyleft font designed to have coverage of all (or nearly all?) unicode code points?
It also looks beautiful when printed out - I made it into a spiral which hangs on my wall.
https://shkspr.mobi/blog/2022/07/the-mostly-complete-unicode...
> Unifont only stores one glyph per printable Unicode code point. This means that complex scripts with special forms for letter combinations including consonant combinations and floating vowel marks such as with Indic scripts (Devanagari, Bengali, Tamil, etc.) or letters that change shape depending upon their position in a word (Indic and Arabic scripts) will not render well in Unifont. In those cases, Unifont is only suitable as a font of last resort. Users wishing to properly render such complex scripts should use full OpenType fonts that faithfully display such alternate forms.
An important caveat, that while this is potentially a useful fallback font to at least something for unknown glyphs, without any sort of combining/shaping, it's not going to usefully render a whole bunch of languages (i.e. languages like Arabic will be a disaster)
You know, when I see GNU, I don't necessarily think it's the best software in all dimensions, but it's almost the best in terms of respecting its users.
i use this font system wide, forced as the only font in firefox, with web or downloadable fonts disabled. i also have my some of my own characters in csur, the conscript unicode registry, that is mapped to u+e000 thru u+f8ff so the unicode codepoints used by random webpages for various glyphs show up as my own. qt is a pain to use sometimes with unifont only but iirc QT_FONT_DPI=128 environment variable fixes that. i just wish i could get unifont only to work in games like rimworld.
Often I've seen font websites have a sort of "font hello world" preview image, and adding something like that here would be great. Apparently they're called "type specimens".
I had to uninstall unifont to get nice looking CJK fonts in Firefox; somehow the font-fallback for my font was picking unifont over all of the other fonts installed...
I also made some fonts for playdate based on unifont: https://github.com/remysucre/cuniform
Really like the idea of a font with extremely broad glyph support, sadly it looks really blurry on any custom size, like if I'd try to use this font in my IDE but would want to make it smaller so I can fit more text on the screen.
For that particular use case (tbh mostly aesthetics than glyph support), I also found the TTF version of Terminus to be pleasant: https://files.ax86.net/terminus-ttf/ though JetBrains Mono is good enough for me to not venture far away from defaults, albeit maybe Liberation Mono / Cousine was the peak of readability at somewhat small sizes out of any font out there for me.
Wonder if the Potrace approach of Terminus TTF version would work for Unifont. I imagine that Unifont is a pretty good default when doing shipping labels and for such utilitarian use cases.
The problem with Unifont is that is was never designed to actually support real text, it just has glyph support. So if you need "it can do every language I might want, while looking pretty good" you're far better off with the (much newer) family of NoTo fonts, which aren't just free to use, but explicitly use the modern SIL Open Font License.
Please don’t use this unless the purpose is specifically to have a retro effect where you eschew modern fonts for aesthetic purposes. Because for any other purpose this just looks terrible, even for English text. Scripts requiring special shaping won’t be supported well. I don’t think it even supports different shapes for the same CJK character according to the language.
it is so nice of them to explain the fact using the GNU Unifont in commercial non-free softwares clarifying when it is required to be published to public domain.
Why does every GNU web page look like 1996? This actually matters. Even stripping the page down and removing any styling would make it look more trustworthy less like an abandoned project.
Perhaps a GNU style could be something we could help fund?
Amazing work!
Been a proud user for a while at jarbus.net :)
I like this better than the Google Sans Flex that made the front page today.
> A user has asked if GNU Unifont can be used with commercial (non-free) software.
One can be forgiven for thinking the author means to imply that all commercial software is non-free. It is a further disappointment that anyone has to ask.
Open source was right to get rid of the intentional and unintentionally anti-commercial motifs that only got in the way of paid open source development.