indestructible-type / Drafting

An origonal Monospaced font
Other
71 stars 0 forks source link

U+02BC MODIFIER LETTER APOSTROPHE is incorrectly implemented as a combining character #8

Closed inklesspen closed 6 months ago

inklesspen commented 6 months ago

U+02BC is one of what Unicode strangely calls "modifier letters", in the "Spacing Modifier Letters" block (U+02B0 to U+02FF). Its character category is Lm, part of the Letter categories.

According to section 7.8 of the Unicode specification (15th edition):

Modifier letters, in the sense used in the Unicode Standard, are letters or symbols that are typically written adjacent to other letters and which modify their usage in some way. They are not formally combining marks (gc = Mn or gc = Mc) and do not graphically combine with the base letter that they modify. They are base characters in their own right. The sense in which they modify other letters is more a matter of their semantics in usage; they often tend to function as if they were diacritics, indicating a change in pronunciation of a letter, or otherwise distinguishing a letter’s use. Typically this diacritic modification applies to the character preceding the modifier letter, but modifier letters may sometimes modify a following character. Occasionally a modifier letter may simply stand alone representing its own sound.

Those fonts which support U+02BC (such as Gentium, Noto Sans/Serif, Vollkorn) tend to follow this guidance. Typically U+02BC looks and behaves very similarly to U+2019 RIGHT SINGLE QUOTATION MARK or U+0027 APOSTROPHE.

However, in Drafting, the U+02BC glyph gets positioned in the middle of the previous character. In the features.fea file. If I move \uni02BC from @GDEF_Mark to @GDEF_Simple, the glyph behaves correctly as a standalone character. Since all the build scripts use sources/misc/features.fea, I will send a pull request editing that file.