From 3e615f43295569368528cac6fe2c4f0930a419b1 Mon Sep 17 00:00:00 2001 From: be5invis Date: Sat, 29 May 2021 16:49:33 -0700 Subject: [PATCH] Fix regression of diacritic placement of over-the-tie marks (#1092). --- changes/7.0.1.md | 3 ++- font-src/glyphs/auto-build/composite.ptl | 1 - font-src/glyphs/space/index.ptl | 1 + font-src/otl/gsub-ccmp.ptl | 9 ++------- font-src/support/gr.js | 4 ++-- 5 files changed, 7 insertions(+), 11 deletions(-) diff --git a/changes/7.0.1.md b/changes/7.0.1.md index 029c28016..092deab1b 100644 --- a/changes/7.0.1.md +++ b/changes/7.0.1.md @@ -6,4 +6,5 @@ * Fix missing variant of Latin Small Letter Ue (`U+1D6B`) (#1086). * Fix missing serif of Italic Latin Phi (#1087). * Remove `U+1FB93` ("Left Half Block and Right Half Inverse Medium Shade") since it is a reserved code point for now (#1088). - * Add Black Rightwards Arrowhead (`U+27A4`) (#1090). \ No newline at end of file + * Add Black Rightwards Arrowhead (`U+27A4`) (#1090). + * Fix regression of diacritic placement of over-the-tie marks (#1092). \ No newline at end of file diff --git a/font-src/glyphs/auto-build/composite.ptl b/font-src/glyphs/auto-build/composite.ptl index 17ff38ff5..ab39cdc41 100644 --- a/font-src/glyphs/auto-build/composite.ptl +++ b/font-src/glyphs/auto-build/composite.ptl @@ -710,7 +710,6 @@ glyph-block AutoBuild-Enclosure : begin do "triple-digit dashed-boxed" createDashedBoxedGlyphs 3 : list - list 0x034F {'C.serifless' 'G.toothedSeriflessHooked' 'J.serifless'} WideWidth1 list 0xFFFC {'O' 'B.standardSerifless' 'J.serifless'} WideWidth1 do "inset boxed" diff --git a/font-src/glyphs/space/index.ptl b/font-src/glyphs/space/index.ptl index 43afb63f4..aa4c213a1 100644 --- a/font-src/glyphs/space/index.ptl +++ b/font-src/glyphs/space/index.ptl @@ -41,6 +41,7 @@ glyph-block Symbol-Mosaic-NotDef : begin set currentGlyph.autoRefPriority (-9999) alias 'nonmarkingreturn' 0x000D 'zwsp' + alias 'cgj' 0x34F 'zwsp' alias 'nbsp' 0xA0 'space' alias 'enquad' 0x2000 'sp1' diff --git a/font-src/otl/gsub-ccmp.ptl b/font-src/otl/gsub-ccmp.ptl index c8b5b0da7..0002f329a 100644 --- a/font-src/otl/gsub-ccmp.ptl +++ b/font-src/otl/gsub-ccmp.ptl @@ -138,21 +138,16 @@ export : define [buildCCMP sink glyphStore markGlyphs] : begin object [from {'revCommaAbove' 'perispomeniAbove'}] [to 'dasiaperispomeni'] object [from {'cyrlPsiliAbove' 'cyrlPokrytieAbove'}] [to 'cyrlPsiliPokrytieAbove'] - define gnCgjNwid 'dashed-boxed3{847}{C}{G}{J}.NWID' - define gnCgjWwid 'dashed-boxed3{847}{C}{G}{J}.WWID' - define lookupCcmp-TieMarkLigature : add-lookup sink : object .type 'gsub_ligature' .substitutions : {}.concat TieMarkFrom.map : lambda [gnFrom idx] - object [from {gnCgjNwid gnFrom}] [to TieMarkTo.(idx)] - TieMarkFrom.map : lambda [gnFrom idx] - object [from {gnCgjWwid gnFrom}] [to TieMarkTo.(idx)] + object [from {'cgj' gnFrom}] [to TieMarkTo.(idx)] define lookupCcmp-TieMarkContextual : add-lookup sink : object .type 'gsub_chaining' .rules : list : object - match {[TieGlyphs.concat TieMarkTo] {gnCgjNwid gnCgjWwid} TieMarkFrom} + match {[TieGlyphs.concat TieMarkTo] {'cgj'} TieMarkFrom} inputBegins 1 inputEnds 3 apply {{.at 1 .lookup lookupCcmp-TieMarkLigature}} diff --git a/font-src/support/gr.js b/font-src/support/gr.js index 7a78b7474..c36f8055b 100644 --- a/font-src/support/gr.js +++ b/font-src/support/gr.js @@ -77,12 +77,12 @@ const TieMark = { const TieGlyph = { get(glyph) { - if (glyph && glyph.related) return glyph.related.TieMark; + if (glyph && glyph.related) return glyph.related.TieGlyph; else return null; }, set(glyph) { if (!glyph.related) glyph.related = {}; - glyph.related.TieMark = true; + glyph.related.TieGlyph = true; } };