Follow these steps to create a CYRILLIC LETTER I WITH GRAVE in FontLab 8:

Vasil StanevVasil Stanev Posts: 762
edited June 2023 in Technique and Theory
This is a placeholder topic for typographers that google the method of how to create CYRILLIC CAPITAL / SMALL LETTER I WITH GRAVE but don't know, like I didn't the name the FontLab team has assigned to this glyph in their program
1. Go to Wikipedia
2. Find the Symbol you are looking for, in this case CYRILLIC CAPITAL LETTER I WITH GRAVE
3. Copy the glyph from the Wikipedia website
4. In FontLab 8, open Font/Build Glyphs and paste the glyph
5.The Fontlab 8 "Build Glyphs" window should show you how the letter look and its unicode. The unicode you can also get from Wikipedia.
6. By clocking "OK", you can create the cell in FontLab for the glyphs and give it the shape that you like - it should be a И - Icyr + a grave accent.
7. You should be able to test the font by installing it and, on a QWERTY keyboard, using Shift+x to create ѝ. That x in the combination is a Latin letter X,x, not a Cyrillic X, x.

ѝ is, in Bulgarian, a pronoun that means something like "her", "hers". For other uses, you can check 


  • Options
    You can also use the FontLab's Catalog to add any encoded glyph.
    For the Cyrillic I with grave:
    1. Font > Add Glyphs from Catalog.
    2. Selected Scripts > Cyrillic.
    3. Select the glyph and click OK (or double-click).

    Please note that, if your font don't have the components (in this case, Cyrillic N and grave accent), FontLab will add an empty glyph, with proper encode. The same for new glyphs still not drawn.

    FontLab 8 catalog includes all Unicode blocks.
  • Options
    John HudsonJohn Hudson Posts: 2,977
    Also note that using the /grave glyph or any of the other legacy spacing accents to build composites is a bad idea. Use /gravecomb (U+300).
  • Options
    @John Hudson Why is it a bad idea?
  • Options
    John HudsonJohn Hudson Posts: 2,977
    Characters like /grave (U+0060) are spacing characters, mostly inherited from legacy pre-Unicode character sets, although some of them are mapped to spacing modifier letters. These were used to build composites in fonts that supported limited 8-bit codepages with small numbers of Western European diacritics, but they become problematic in larger fonts with extended Unicode and extra-Unicode diacritics and in OpenType fonts in which one wants to be able use a consistent approach to both precomposed and dynamic (GPOS) diacritic display.

    The set of legacy spacing accents is small, and does not include many marks needed for non-Western European diacritics, so if one uses them in composites one ends up with a mixed approach of some spacing accents and some non-spacing combining marks. It is better practice to use a consistent model with non-spacing combining mark glyphs and anchor attachments. [Some tools, notably glyphs, confuse this somewhat, by having spacing combining mark glyphs attached with accents that then get their widths collapsed to zero during font export.]

    Precomposed diacritic characters in Unicode mostly have canonical decompositions to base letters plus combining marks, so it makes sense to me that the precomposed composite glyphs in a font should be made from the same sequences of base + combining mark glyphs, which helps ensure that the display of precomposed and decomposed character sequences in different Unicode normalisation forms is the same.
  • Options
    Vasil StanevVasil Stanev Posts: 762
    edited June 2023
    @John Hudson this means me and many other font designers have been doing it wrong for years! Highly unpleasant...
  • Options
    John HudsonJohn Hudson Posts: 2,977
    Maybe not ‘wrong’, but certainly sub-optimally. The practice of building composites with spacing accent character glyphs was inherited from the making of 8-bit Type 1 fonts, and has persisted among many font makers, including lots of talented designers and well-known foundries. I still get asked to work on fonts that I discover have been made in this way, and the first thing I recommend is changing all the composite recipes to use combining marks where appropriate.

    [My standard practice is to use the combining marks as ingredient glyphs for the legacy spacing accents too, so e.g. /acute is a composite of /acutecomb on an advance width.]
  • Options
    @John Hudson I can follow your logic but I think this issue is more of a concern for the programmers of font editors than their users.

    Also – it doesn’t really matter for generated binaries in the case of OpenType CFF fonts where all components get converted to outlines.

  • Options
    John HudsonJohn Hudson Posts: 2,977
    For me, the tidiness of having all mark components on a common base share the same offset value is important, as is using the same mechanisms for both composite creation and GPOS mark attachment. I understand that there are ways to work otherwise, but it simply makes no sense to me to use spacing components for some composites and non-spacing marks in others, when the former is but a tiny subset of possible marks in diacritics, most of which only exist because of legacy encodings that, ultimately, derive from typewriter keyboards. They belong on the fringes of font production, as an afterthought generated from productive combining marks.

    You are right that this should be primarily an issue for font tool makers. Years ago, I told Georg that he should make combining marks the default components when creating diacritic composites, and he immediately got it (but Glyphs still has problems making zero-width glyphs selectable, hence the workaround to collapse widths during font export; I prefer the direct control in FontLab).
Sign In or Register to comment.