Language Support

I’ve finally finished all the research needed to list the characters missing for complete language support for the top sixty translated languages using Latin in GNOME’s localization list for stable release 3.8. With support for Romanian sorted out, there are only five languages with missing glyphs—Danish, Slovak, Serbian, Vietnamese and Asturian—and detailed bugs about these have been filed.

Read my original post about researching extended Latin support here.


It has been a tough couple of weeks trying to build accented characters for the extended Latin character set using anchors on FontForge. Redrawing the accents to harmonize better with the letters they attach to as well as with each other has been relatively easy. When I’ll finish work on this bug, the extended Latin characters will have different accents for the lowercase and uppercase letters, designed to work well with their respective weights and space above them.

Extended Latin
The difficult and yet unresolved problem is how to get FontForge to use the correct accents to build accented glyphs. Despite showing the correct set of components that it should use to build these glyphs in the Glyph Info panel, FontForge continues to not use the combining accents in several cases. Correcting all the glyph names to match the Adobe Glyph LIst has not helped at all. Dave was afraid I was using a very old version of FontForge and that might be the problem, but that’s not it either. At this point, I’m really not sure what the issue is or could possibly be.

Unfortunately, this roadblock has taken me off schedule—taking much more time than I had anticipated it would (even delaying a blog post here!). I’m attending GUADEC at Brno this week and Jakub has organized a hackfest for Cantarell on Monday. Hopefully, we will be able to figure out this problem then.

Among the larger chunks of work I am expected to finish during this internship is reviewing and correcting the existing Cyrillic character set of Cantarell. Along with ensuring that the glyphs are properly drawn and spaced, my first and foremost priority has been to see if the letters do justice to their Cyrillic roots.

An improved version of both the uppercase and lowercase Cyrillic character set in the regular weight has been completed (the lowercase changes need to be committed). Some key changes that one might notice (in lower and upper case both) are to the letters д, л and љ, which now have a more resolved, well-drawn shape; л, п, ц, ш and щ, whose widths have been harmonised with each other and with other letters; ж, к and я that have been redrawn to be more consistent with their Cyrillic origins, rather than look like offshoots of similar looking Latin letters; ђ and ћ now have improved shapes and outlines; and, the bowls in letters в, ъ, ы, ь, љ and њ have been drawn again to have a consistent stroke width.

CyrillicSee bugs 703444 and 703588.

One of the first tasks I have begun to tackle in this internship is reviewing the support Cantarell extends to languages that use the Latin alphabet. There are several languages that employ the Latin alphabet (Omniglot lists over 300 of them) and Cantarell doesn’t support them all. Supporting each of those languages would not just be a monumental task, but is also not a necessity at this moment in time. What one needs really is for the typeface family to first support the languages in which people use (or wish to use) GNOME.

According to the localization information for GNOME’s stable release 3.8 (as accessed on June 18, 2013), out of the sixty most comprehensively localized languages, a little more than half—thirty-two—use the Latin alphabet. In its current avatar, Cantarell does not support all these languages. For some the addition of just a couple of new characters would solve the problem, whereas for other languages there are many more characters that are missing. Based on information collected from sources such as Omniglot, Micheal Everson’s Alphabets of Europe project and Akira Nakanishi’s book, Writing Systems of the World, I have worked out a simple spreadsheet that maps accented and other characters against the top sixty localized languages to quickly illustrate what is missing in Cantarell.

An in-progress screenshot of the spreadsheet: The rows marked in light blue do not use the Latin alphabet. The cells that are marked in red contain glyphs that are currently missing in Cantarell. Languages marked in green have full support and those in red don't. Bugs has been raised for the languages in blue cells, and purple means that more research is required before a bug can be raised.

An in-progress screenshot of the spreadsheet: The rows marked in light blue indicate languages that do not use the Latin alphabet. The cells that are marked in red contain glyphs that are currently missing in Cantarell. Languages marked in green have full support and those in red don’t. Bugs had been raised for the languages in blue cells. Purple indicates that further research is required.

This is work-in-progress. I am currently raising bugs that specifically list the glyphs that need to be added to the typeface family to support a particular language. Bugs for Danish, Slovak, Vietnamese and Serbian are already up, and a few more will follow soon. Once it has been ascertained exactly what is missing, I will get down to adding the required glyphs.