diff --git a/changes/31.2.1.md b/changes/31.3.0.md similarity index 56% rename from changes/31.2.1.md rename to changes/31.3.0.md index 0613c1a5a..90c88d827 100644 --- a/changes/31.2.1.md +++ b/changes/31.3.0.md @@ -1 +1,2 @@ * Add `diagonal-tailed-cursive` variants for Cyrillic Lower Ef (`cv93`). +* Prevent clipping of texture-extended glyphs in Kitty. diff --git a/packages/font-glyphs/src/auto-build/transformed.ptl b/packages/font-glyphs/src/auto-build/transformed.ptl index 00b2d2418..683743303 100644 --- a/packages/font-glyphs/src/auto-build/transformed.ptl +++ b/packages/font-glyphs/src/auto-build/transformed.ptl @@ -3,7 +3,8 @@ $$include '../meta/macros.ptl' import [linreg clamp mix fallback] from "@iosevka/util" import [getGrTree IsSuperscript IsSubscript AnyCvOrCherryPicking] from "@iosevka/glyph/relation" -import [AnyLocalizedForm DotlessOrNot CvDecompose MathSansSerif Texture] from "@iosevka/glyph/relation" +import [AnyLocalizedForm DotlessOrNot CvDecompose MathSansSerif] from "@iosevka/glyph/relation" +import [Texture Joining] from "@iosevka/glyph/relation" import [BooleanGeometry StrokeGeometry] from "@iosevka/geometry" import [NumeratorForm DenominatorForm] from "@iosevka/glyph/relation" import [Transform] from "@iosevka/geometry/transform" @@ -725,6 +726,8 @@ glyph-block Autobuild-Transformed-Texture : begin create-glyph targetNameMap.(glyphid) unicode : glyph-proc include glyphT AS_BASE ALSO_METRICS set-width Width + if (extL > 0) : Joining.or currentGlyph Joining.Classes.Left + if (extR > 0) : Joining.or currentGlyph Joining.Classes.Right if extL : begin local shift : (glyphT.advanceWidth - Width) * extL / (extL + extR) currentGlyph.applyTransform [Translate (-shift) 0] true diff --git a/packages/glyph/src/relation.mjs b/packages/glyph/src/relation.mjs index 2136ff45b..b452cf170 100644 --- a/packages/glyph/src/relation.mjs +++ b/packages/glyph/src/relation.mjs @@ -137,7 +137,7 @@ export const Joining = { glyph.related.joining = cls; }, or(glyph, cls) { - Joining.set(glyph, cls | Joining.get(cls)); + Joining.set(glyph, cls | Joining.get(glyph)); }, amendOtName(baseName, cl) { switch (cl) {