From 2526b3a7e539453a3f70d858767d47e0f762827e Mon Sep 17 00:00:00 2001 From: be5invis Date: Mon, 19 Jul 2021 19:31:55 -0700 Subject: [PATCH] * Fix anchor placement of: - Latin Letter Small Capital R (`U+0280`) (#1159) - Latin Letter Small Capital L (`U+029F`) (#1159) - Cyrillic Small Letter Psi (`U+0471`) (#1159) - Latin Letter Small Capital E (`U+1D07`) (#1159) - Latin Letter Small Capital L with Stroke (`U+1D0C`) (#1159) - Latin Letter Small Capital U (`U+1D1C`) (#1159) - Modifier Letter Small Capital U (`U+1DB8`) (#1159) - Turned Small F (`U+214E`) (#1159) - Latin Letter Small Capital Turned E (`U+2C7B`) (#1159) - Latin Small Letter Egyptological Alef (`U+A723`) (#1159) - Latin Small Letter Egyptological Ain (`U+A725`) (#1159) - Latin Letter Small Capital F (`U+A730`) (#1159) - Latin Small Letter R Rotunda (`U+A75B`) (#1159) --- changes/7.3.2.md | 14 ++++++++++++++ font-src/glyphs/letter/greek/psi.ptl | 2 +- font-src/glyphs/letter/latin-ext/egyptological.ptl | 4 ++-- font-src/glyphs/letter/latin/u.ptl | 2 +- font-src/glyphs/letter/latin/upper-e.ptl | 2 +- font-src/glyphs/letter/latin/upper-f.ptl | 2 +- font-src/glyphs/letter/latin/upper-l.ptl | 2 +- font-src/glyphs/letter/latin/upper-r.ptl | 4 ++-- sample-text/bug1159.txt | 1 + 9 files changed, 24 insertions(+), 9 deletions(-) create mode 100644 changes/7.3.2.md create mode 100644 sample-text/bug1159.txt diff --git a/changes/7.3.2.md b/changes/7.3.2.md new file mode 100644 index 000000000..b39b6bf3b --- /dev/null +++ b/changes/7.3.2.md @@ -0,0 +1,14 @@ + * Fix anchor placement of: + - Latin Letter Small Capital R (`U+0280`) (#1159) + - Latin Letter Small Capital L (`U+029F`) (#1159) + - Cyrillic Small Letter Psi (`U+0471`) (#1159) + - Latin Letter Small Capital E (`U+1D07`) (#1159) + - Latin Letter Small Capital L with Stroke (`U+1D0C`) (#1159) + - Latin Letter Small Capital U (`U+1D1C`) (#1159) + - Modifier Letter Small Capital U (`U+1DB8`) (#1159) + - Turned Small F (`U+214E`) (#1159) + - Latin Letter Small Capital Turned E (`U+2C7B`) (#1159) + - Latin Small Letter Egyptological Alef (`U+A723`) (#1159) + - Latin Small Letter Egyptological Ain (`U+A725`) (#1159) + - Latin Letter Small Capital F (`U+A730`) (#1159) + - Latin Small Letter R Rotunda (`U+A75B`) (#1159) diff --git a/font-src/glyphs/letter/greek/psi.ptl b/font-src/glyphs/letter/greek/psi.ptl index 850febc54..fe239325f 100644 --- a/font-src/glyphs/letter/greek/psi.ptl +++ b/font-src/glyphs/letter/greek/psi.ptl @@ -51,6 +51,6 @@ glyph-block Letter-Greek-Psi : begin create-glyph 'cyrl/psi' 0x471 : glyph-proc local df : DivFrame para.diversityM 3 set-width df.width - include : df.markSet.if + include : df.markSet.p include : PsiBaseShape df Descender 0 XH XH false false SLAB false diff --git a/font-src/glyphs/letter/latin-ext/egyptological.ptl b/font-src/glyphs/letter/latin-ext/egyptological.ptl index 20ed91b5a..a272de3cc 100644 --- a/font-src/glyphs/letter/latin-ext/egyptological.ptl +++ b/font-src/glyphs/letter/latin-ext/egyptological.ptl @@ -52,7 +52,7 @@ glyph-block Letter-Latin-Egyptological : begin include : EgyptologicalAlefShape 0 CAP create-glyph 'EgyptologicalSmallAlef' 0xA723 : glyph-proc - include : MarkSet.capital + include : MarkSet.e include : EgyptologicalAlefShape 0 XH # Per Unicode chart create-glyph 'EgyptologicalCapitalAyin' 0xA724 : glyph-proc @@ -60,7 +60,7 @@ glyph-block Letter-Latin-Egyptological : begin include : EgyptologicalAyinShape 0 CAP create-glyph 'EgyptologicalSmallAyin' 0xA725 : glyph-proc - include : MarkSet.capital + include : MarkSet.e include : EgyptologicalAyinShape 0 XH # Per Unicode chart glyph-block-import Marks : markMiddle aboveMarkTop aboveMarkBot aboveMarkMid diff --git a/font-src/glyphs/letter/latin/u.ptl b/font-src/glyphs/letter/latin/u.ptl index 4fa569d29..e481ce85a 100644 --- a/font-src/glyphs/letter/latin/u.ptl +++ b/font-src/glyphs/letter/latin/u.ptl @@ -153,7 +153,7 @@ glyph-block Letter-Latin-U : begin include : SetGrekUpperTonos [if fLTSlab (-SideJut) 0] create-glyph "smcpU.\(suffix)" : glyph-proc - include : MarkSet.capital + include : MarkSet.e include : Base XH include : Slabs XH diff --git a/font-src/glyphs/letter/latin/upper-e.ptl b/font-src/glyphs/letter/latin/upper-e.ptl index fa0387ede..b325ff468 100644 --- a/font-src/glyphs/letter/latin/upper-e.ptl +++ b/font-src/glyphs/letter/latin/upper-e.ptl @@ -56,7 +56,7 @@ glyph-block Letter-Latin-Upper-E : begin include : SetGrekUpperTonos [if lt (-SideJut) 0] create-glyph "smcpE.\(suffix)" : glyph-proc - include : MarkSet.capital + include : MarkSet.e include : EShape XH (serifLT -- lt) (serifLB -- lb) (serifV -- v) set-base-anchor 'trailing' (RightSB - markHalfStroke) 0 diff --git a/font-src/glyphs/letter/latin/upper-f.ptl b/font-src/glyphs/letter/latin/upper-f.ptl index 8eae29ee5..d2b3c9973 100644 --- a/font-src/glyphs/letter/latin/upper-f.ptl +++ b/font-src/glyphs/letter/latin/upper-f.ptl @@ -67,7 +67,7 @@ glyph-block Letter-Latin-Upper-F : begin [mix [if lb Stroke 0] ([yMidBar CAP] - HalfStroke) (2 / 3)] - OverlayStroke / 2 create-glyph "smcpF.\(suffix)" : glyph-proc - include : MarkSet.capital + include : MarkSet.e include : FShape XH (serifLT -- lt) (serifLB -- lb) (serifV -- v) select-variant 'F' 'F' diff --git a/font-src/glyphs/letter/latin/upper-l.ptl b/font-src/glyphs/letter/latin/upper-l.ptl index a9eb8cd75..38a72656b 100644 --- a/font-src/glyphs/letter/latin/upper-l.ptl +++ b/font-src/glyphs/letter/latin/upper-l.ptl @@ -32,7 +32,7 @@ glyph-block Letter-Latin-Upper-L : begin include : LShape CAP serifGrade set-base-anchor 'cvDecompose' ([mix SB RightSB 0.65] + 0.25 * Stroke * HVContrast) [mix Stroke CAP 0.5] create-glyph "smcpL.\(suffix)" : glyph-proc - include : MarkSet.capital + include : MarkSet.e include : LShape XH serifGrade select-variant 'L' 'L' diff --git a/font-src/glyphs/letter/latin/upper-r.ptl b/font-src/glyphs/letter/latin/upper-r.ptl index dc51d799a..9fcba91a5 100644 --- a/font-src/glyphs/letter/latin/upper-r.ptl +++ b/font-src/glyphs/letter/latin/upper-r.ptl @@ -184,7 +184,7 @@ glyph-block Letter-Latin-Upper-R : begin if fOpen [PShape.OpenGap CAP (mul -- 1) (bp -- bpCap)] [glyph-proc] create-glyph "smcpR.\(suffix)" : glyph-proc - include : MarkSet.capital + include : MarkSet.e include : ROverlayAnchor include : difference RShape legShape XH (slab -- slabs) (bp -- bpXH) @@ -195,7 +195,7 @@ glyph-block Letter-Latin-Upper-R : begin include : RRotundaShape legShape CAP (hook -- Hook) (pBar -- 0.9) (slab -- slabs) if (!fMotion && !fOpen) : create-glyph "rrotunda.\(suffix)" : glyph-proc - include : MarkSet.capital + include : MarkSet.e include : RRotundaShape legShape XH (hook -- AHook) (pBar -- 0.9) (slab -- slabs) create-glyph "cyrl/Ya.\(suffix)" : glyph-proc diff --git a/sample-text/bug1159.txt b/sample-text/bug1159.txt new file mode 100644 index 000000000..78b048d59 --- /dev/null +++ b/sample-text/bug1159.txt @@ -0,0 +1 @@ +\u0280\u0304\u029F\u0304\u0471\u0304\u1D07\u0304\u1D0C\u0304\u1D1C\u0304\u1DB8\u0304\u214E\u0304\u2C7B\u0304\uA723\u0304\uA725\u0304\uA730\u0304\uA75B\u0304 \ No newline at end of file