markset rec pt 1 (#1792)

This commit is contained in:
Logo 2023-06-14 14:30:55 +08:00 committed by GitHub
parent 960a1ab764
commit a04caaea37
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
29 changed files with 77 additions and 51 deletions

View file

@ -1 +1,4 @@
* Fix shape of `U+1D95` (#1790). * Fix shape of `U+1D95` (#1790).
* Fix combining mark anchors for several characters.
* Fix upside down shape of `U+1D12`.
* Fix variant assignment for `U+1D84` and `U+2C6A`.

View file

@ -1342,7 +1342,7 @@ glyph-block Autobuild-Pnonetic-Ligatures : begin
createPhoneticLigatures ToLetter 'phonetic' para.diversityM 2 stdShrink 1 : list createPhoneticLigatures ToLetter 'phonetic' para.diversityM 2 stdShrink 1 : list
list 0x02A3 { 'd/phoneticLeft' 'z' } 'b' list 0x02A3 { 'd/phoneticLeft' 'z' } 'b'
list 0x02A4 { 'd/phoneticLeft' 'ezh' } 'if' list 0x02A4 { 'd/phoneticLeft' 'ezh' } 'if'
list 0x02A5 { 'd/phoneticLeft' 'zCurlyTail' } 'if' list 0x02A5 { 'd/phoneticLeft' 'zCurlyTail' } 'b'
list 0x02A6 { 't/phoneticLeft2' 's/phoneticRight' } 'b' list 0x02A6 { 't/phoneticLeft2' 's/phoneticRight' } 'b'
list 0x02A7 { 't/teshLeft' 'esh' } 'if' list 0x02A7 { 't/teshLeft' 'esh' } 'if'
list 0x02A8 { 't/phoneticLeft1' 'cCurlyTail' } 'b' list 0x02A8 { 't/phoneticLeft1' 'cCurlyTail' } 'b'
@ -1350,7 +1350,7 @@ glyph-block Autobuild-Pnonetic-Ligatures : begin
list 0x02AA { 'l/phoneticLeft' 's/phoneticRight' } 'b' list 0x02AA { 'l/phoneticLeft' 's/phoneticRight' } 'b'
list 0x02AB { 'l/phoneticLeft' 'z' } 'b' list 0x02AB { 'l/phoneticLeft' 'z' } 'b'
list 0xAB66 { 'd/phoneticLeft' 'zRTailBR' } 'if' list 0xAB66 { 'd/phoneticLeft' 'zRTailBR' } 'if'
list 0xAB67 { 't/phoneticLeft1' 'sRTail' } 'p' list 0xAB67 { 't/phoneticLeft1' 'sRTail' } 'if'
list 0xFB00 { 'f' 'f' } null list 0xFB00 { 'f' 'f' } null
list 0xFB01 { 'f/compLigLeft1' 'dotlessi/compLigRight' } null list 0xFB01 { 'f/compLigLeft1' 'dotlessi/compLigRight' } null
list 0xFB02 { 'f/compLigLeft2' 'l/compLigRight' } null list 0xFB02 { 'f/compLigLeft2' 'l/compLigRight' } null

View file

@ -184,7 +184,7 @@ glyph-block Autobuild-Transformed : begin
list 0x1DAA 'lPalatalHook' list 0x1DAA 'lPalatalHook'
list 0x1DAC 'mLTail' list 0x1DAC 'mLTail'
list 0x1DAD 'turnmLeg' list 0x1DAD 'turnmLeg'
list 0x1DAE 'nltail' list 0x1DAE 'nLTail'
list 0x1DAF 'nHookBottom' list 0x1DAF 'nHookBottom'
list 0x1DB0 'smcpN' list 0x1DB0 'smcpN'
list 0x1DB1 'obar' list 0x1DB1 'obar'

View file

@ -209,7 +209,7 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
union [ze.Shape] [ze.AutoStartSerifL] [ze.AutoEndSerifL] union [ze.Shape] [ze.AutoStartSerifL] [ze.AutoEndSerifL]
create-glyph "cyrl/DzjeKomi.\(suffix)" : glyph-proc create-glyph "cyrl/DzjeKomi.\(suffix)" : glyph-proc
include : MarkSet.capDesc include : MarkSet.capital
local ze : CyrZe slabTop slabBot CAP 0 SB RightSB StdBlend Hook local ze : CyrZe slabTop slabBot CAP 0 SB RightSB StdBlend Hook
define [object stroke midy] : ze.Dim define [object stroke midy] : ze.Dim
include : ze.ShapeHalf include : ze.ShapeHalf
@ -218,7 +218,7 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
include : CyrDescender.rSideJut (RightSB - OX * 2) 0 include : CyrDescender.rSideJut (RightSB - OX * 2) 0
create-glyph "cyrl/dzjeKomi.\(suffix)" : glyph-proc create-glyph "cyrl/dzjeKomi.\(suffix)" : glyph-proc
include : MarkSet.p include : MarkSet.e
local ze : CyrZe slabTop slabBot XH 0 SB RightSB StdBlend SHook local ze : CyrZe slabTop slabBot XH 0 SB RightSB StdBlend SHook
define [object stroke midy] : ze.Dim define [object stroke midy] : ze.Dim
include : ze.ShapeHalf include : ze.ShapeHalf
@ -269,12 +269,12 @@ glyph-block Letter-Greek-Lower-Epsilon : begin
if SLAB : include sf2.rt.full if SLAB : include sf2.rt.full
create-glyph "cyrl/KsiBase.\(suffix)" : glyph-proc create-glyph "cyrl/KsiBase.\(suffix)" : glyph-proc
include : MarkSet.capital include : MarkSet.capDesc
include : let [ze : CyrZe slabTop SLAB-NONE CAP 0 SB RightSB StdBlend Hook] include : let [ze : CyrZe slabTop SLAB-NONE CAP 0 SB RightSB StdBlend Hook]
union [ze.KsiBaseShape] [ze.AutoStartSerifL] union [ze.KsiBaseShape] [ze.AutoStartSerifL]
create-glyph "cyrl/ksiBase.\(suffix)" : glyph-proc create-glyph "cyrl/ksiBase.\(suffix)" : glyph-proc
include : MarkSet.e include : MarkSet.p
include : let [ze : CyrZe slabTop SLAB-NONE XH 0 SB RightSB StdBlend SHook] include : let [ze : CyrZe slabTop SLAB-NONE XH 0 SB RightSB StdBlend SHook]
union [ze.KsiBaseShape] [ze.AutoStartSerifL] union [ze.KsiBaseShape] [ze.AutoStartSerifL]

View file

@ -4,7 +4,7 @@ import [mix linreg clamp fallback] from"../../../support/utils.mjs"
glyph-module glyph-module
glyph-block Letter-Greek-Lower-Rho : begin glyph-block Letter-Greek-Lower-Kappa : begin
glyph-block-import CommonShapes glyph-block-import CommonShapes
glyph-block-import Common-Derivatives glyph-block-import Common-Derivatives
glyph-block-import Letter-Shared-Shapes : VerticalHook glyph-block-import Letter-Shared-Shapes : VerticalHook
@ -13,7 +13,7 @@ glyph-block Letter-Greek-Lower-Rho : begin
create-glyph "grek/kappaSymbol" 0x3F0 : glyph-proc create-glyph "grek/kappaSymbol" 0x3F0 : glyph-proc
local df : DfKappasymbol local df : DfKappasymbol
include : MarkSet.e include : df.markSet.e
define xLeft : df.leftSB + 0.25 * df.mvs * HVContrast define xLeft : df.leftSB + 0.25 * df.mvs * HVContrast
define xRight : df.rightSB - 0.25 * df.mvs * HVContrast define xRight : df.rightSB - 0.25 * df.mvs * HVContrast
define yBottom : 0 + 0.2 * Stroke define yBottom : 0 + 0.2 * Stroke
@ -50,6 +50,8 @@ glyph-block Letter-Greek-Lower-Rho : begin
g2 (xRight - deltaX) (yTop - deltaY) [widths (swTermThin / 2) (swTerm / 2)] g2 (xRight - deltaX) (yTop - deltaY) [widths (swTermThin / 2) (swTerm / 2)]
g2 xRight yTop g2 xRight yTop
derive-composites 'grek/kaiSymbol' 0x3D7 'grek/kappaSymbol' create-glyph "grek/kaiSymbol" 0x3D7 : glyph-proc
let [df : DfKappasymbol] include [refer-glyph "grek/kappaSymbol"] AS_BASE ALSO_METRICS
VerticalHook.r df.rightSB 0 (-HookX) (Hook) (sw -- df.mvs) (yExtension -- Stroke) local df : DfKappasymbol
include : df.markSet.p
include : VerticalHook.r df.rightSB 0 (-HookX) (Hook) (sw -- df.mvs) (yExtension -- Stroke)

View file

@ -124,8 +124,9 @@ glyph-block Letter-Greek-Upper-Gamma: begin
select-variant 'grek/Digamma' 0x3DC (follow -- 'grek/Gamma') select-variant 'grek/Digamma' 0x3DC (follow -- 'grek/Gamma')
derive-glyphs 'cyrl/GheHook' 0x494 'cyrl/Ghe' : lambda [src gr] : glyph-proc derive-glyphs 'cyrl/GheMidHook' 0x494 'cyrl/Ghe' : lambda [src gr] : glyph-proc
include [refer-glyph src] AS_BASE ALSO_METRICS include [refer-glyph src] AS_BASE ALSO_METRICS
include : MarkSet.capDesc
include : MidHook.general include : MidHook.general
left -- (GammaBarLeft + Stroke * HVContrast) left -- (GammaBarLeft + Stroke * HVContrast)
right -- RightSB right -- RightSB
@ -133,8 +134,9 @@ glyph-block Letter-Greek-Upper-Gamma: begin
ada -- ArchDepthA ada -- ArchDepthA
adb -- ArchDepthB adb -- ArchDepthB
derive-glyphs 'cyrl/gheHook' 0x495 'cyrl/ghe.upright' : lambda [src gr] : glyph-proc derive-glyphs 'cyrl/gheMidHook' 0x495 'cyrl/ghe.upright' : lambda [src gr] : glyph-proc
include [refer-glyph src] AS_BASE ALSO_METRICS include [refer-glyph src] AS_BASE ALSO_METRICS
include : MarkSet.p
include : MidHook.general include : MidHook.general
left -- (GammaBarLeft + Stroke * HVContrast) left -- (GammaBarLeft + Stroke * HVContrast)
right -- RightSB right -- RightSB

View file

@ -30,7 +30,7 @@ glyph-block Letter-Latin-Gha : begin
create-glyph 'Gha' 0x1A2 : glyph-proc create-glyph 'Gha' 0x1A2 : glyph-proc
local df : DivFrame para.diversityM 3 local df : DivFrame para.diversityM 3
set-width df.width set-width df.width
include : df.markSet.capital include : df.markSet.capDesc
include : GhaShape df CAP include : GhaShape df CAP
create-glyph 'gha' 0x1A3 : glyph-proc create-glyph 'gha' 0x1A3 : glyph-proc

View file

@ -40,7 +40,7 @@ glyph-block Letter-Latin-Glottal-Stop : begin
include : HSerif.mb Middle 0 Jut include : HSerif.mb Middle 0 Jut
create-glyph 'smallGlottalStop' 0x242 : glyph-proc create-glyph 'smallGlottalStop' 0x242 : glyph-proc
include : MarkSet.b include : MarkSet.e
include : dispiro include : dispiro
widths.rhs widths.rhs
g4 SB (XH - Hook) g4 SB (XH - Hook)
@ -53,7 +53,7 @@ glyph-block Letter-Latin-Glottal-Stop : begin
include : HSerif.mb Middle 0 Jut include : HSerif.mb Middle 0 Jut
create-glyph 'smallRevGlottalStop' : glyph-proc create-glyph 'smallRevGlottalStop' : glyph-proc
include : MarkSet.b include : MarkSet.e
include : dispiro include : dispiro
widths.lhs widths.lhs
g4 RightSB (XH - Hook) g4 RightSB (XH - Hook)

View file

@ -194,12 +194,12 @@ glyph-block Letter-Latin-C : begin
create-glyph "revSmallCSideways.\(suffix)" : glyph-proc create-glyph "revSmallCSideways.\(suffix)" : glyph-proc
local df : DivFrame (XH / Width) 2 (XH * 0.1 / SB) local df : DivFrame (XH / Width) 2 (XH * 0.1 / SB)
include : df.markSet.e
local top : Width - SB local top : Width - SB
local p : mix 1 (Width / UPM) 0.5 local p : mix 1 (Width / UPM) 0.5
include : PointingTo Width XH Width 0 : function [] : glyph-proc include : PointingTo Width XH Width 0 : function [] : glyph-proc
local lf : CLetterForm df sty styBot top 0 (hook -- Hook * p) local lf : CLetterForm df sty styBot top 0 (hook -- Hook * p)
include : lf.revFull include : lf.revFull
include : FlipAround df.middle (top / 2)
include : Translate 0 (SB / 2) include : Translate 0 (SB / 2)
create-glyph "cHookTop.\(suffix)" : glyph-proc create-glyph "cHookTop.\(suffix)" : glyph-proc

View file

@ -416,6 +416,7 @@ glyph-block Letter-Latin-K : begin
create-glyph "grek/KaiSymbol.\(suffix)" : glyph-proc create-glyph "grek/KaiSymbol.\(suffix)" : glyph-proc
include [refer-glyph "K.\(suffix)"] AS_BASE ALSO_METRICS include [refer-glyph "K.\(suffix)"] AS_BASE ALSO_METRICS
include : MarkSet.capDesc
include : refer-glyph : match slabKS include : refer-glyph : match slabKS
0 'UpperKaiSymbolAttachment/sans' 0 'UpperKaiSymbolAttachment/sans'
1 'UpperKaiSymbolAttachment/serifed' 1 'UpperKaiSymbolAttachment/serifed'

View file

@ -83,10 +83,11 @@ glyph-block Letter-Latin-Lower-B : begin
CreateAccentedComposition 'bTildeOver' 0x1D6C 'b' 'tildeOverOnExension' CreateAccentedComposition 'bTildeOver' 0x1D6C 'b' 'tildeOverOnExension'
select-variant 'bHookTop' 0x253 select-variant 'bHookTop' 0x253
derive-multi-part-glyphs 'bdot' 0x1E03 {'b' 'dotAbove'} : lambda [srcs gr] : glyph-proc derive-multi-part-glyphs 'bDot' 0x1E03 {'b' 'dotAbove'} : lambda [srcs gr] : glyph-proc
local { base mark } srcs local { base mark } srcs
include [refer-glyph base] AS_BASE ALSO_METRICS include : refer-glyph mark
include : WithTransform [ApparentTranslate HalfStroke (XH - Ascender)] [refer-glyph mark] include : Translate (Width + HalfStroke) 0
include [refer-glyph base] AS_BASE
glyph-block-import Letter-Blackboard : BBS BBD BBBarLeft glyph-block-import Letter-Blackboard : BBS BBD BBBarLeft
create-glyph 'mathbb/b' 0x1D553 : glyph-proc create-glyph 'mathbb/b' 0x1D553 : glyph-proc

View file

@ -164,7 +164,7 @@ glyph-block Letter-Latin-Lower-D : begin
derive-composites 'dHookTopBottom' 0x1D91 'dHookTop/hookBottomBase' derive-composites 'dHookTopBottom' 0x1D91 'dHookTop/hookBottomBase'
VerticalHook.r RightSB 0 HookX Hook VerticalHook.r RightSB 0 HookX Hook
derive-multi-part-glyphs 'ddot' 0x1E0B {'d' 'dotAbove'} : lambda [srcs gr] : glyph-proc derive-multi-part-glyphs 'dDot' 0x1E0B {'d' 'dotAbove'} : lambda [srcs gr] : glyph-proc
local { base mark } srcs local { base mark } srcs
include : refer-glyph mark include : refer-glyph mark
include : Translate (Width - HalfStroke) 0 include : Translate (Width - HalfStroke) 0

View file

@ -84,13 +84,13 @@ glyph-block Letter-Latin-Lower-H : begin
include : Serifs fTailed true include : Serifs fTailed true
create-glyph "hHookTopLTail.\(suffix)" : glyph-proc create-glyph "hHookTopLTail.\(suffix)" : glyph-proc
include : MarkSet.b include : MarkSet.if
include : refer-glyph "hHookTop.\(suffix)" include : refer-glyph "hHookTop.\(suffix)"
eject-contour 'serifRB' eject-contour 'serifRB'
include : VerticalHook.r RightSB 0 (-HookX) Hook include : VerticalHook.r RightSB 0 (-HookX) Hook
create-glyph "heng.\(suffix)" : glyph-proc create-glyph "heng.\(suffix)" : glyph-proc
include : MarkSet.b include : MarkSet.if
include : refer-glyph "h.\(suffix)" include : refer-glyph "h.\(suffix)"
eject-contour 'serifRB' eject-contour 'serifRB'
include : VerticalHook.r RightSB 0 (-HookX) Hook include : VerticalHook.r RightSB 0 (-HookX) Hook

View file

@ -230,6 +230,7 @@ glyph-block Letter-Latin-Lower-M : begin
local realTop : XH / 2 + realHeight / 2 local realTop : XH / 2 + realHeight / 2
local realBot : XH / 2 - realHeight / 2 local realBot : XH / 2 - realHeight / 2
local df : DivFrame (realHeight / Width) 3 (XH * 0.1 / SB) local df : DivFrame (realHeight / Width) 3 (XH * 0.1 / SB)
include : df.markSet.e
include : PointingTo Width realTop Width realBot : function [] : glyph-proc include : PointingTo Width realTop Width realBot : function [] : glyph-proc
include : mShapeBody df (Width - SB) include : mShapeBody df (Width - SB)
include : FlipAround df.middle ((Width - SB) / 2) include : FlipAround df.middle ((Width - SB) / 2)

View file

@ -201,9 +201,9 @@ glyph-block Letter-Latin-Lower-N : begin
derive-composites 'nApostrophe' 0x149 'n' 'nApostrophe/comma' derive-composites 'nApostrophe' 0x149 'n' 'nApostrophe/comma'
derive-glyphs 'nltail' 0x272 'n' : lambda [src srl] : glyph-proc derive-glyphs 'nLTail' 0x272 'n' : lambda [src srl] : glyph-proc
include [refer-glyph src] AS_BASE
include : MarkSet.p include : MarkSet.p
include [refer-glyph src]
eject-contour 'serifLB' eject-contour 'serifLB'
include : VerticalHook.l SB 0 (-HookX) Hook include : VerticalHook.l SB 0 (-HookX) Hook

View file

@ -276,10 +276,10 @@ glyph-block Letter-Latin-Lower-T : begin
include : Style.Retroflex df top Descender include : Style.Retroflex df top Descender
create-glyph "tHookTopRTail.\(suffix)" : glyph-proc create-glyph "tHookTopRTail.\(suffix)" : glyph-proc
include : df.markSet.if
include : Style.Retroflex df XH Descender include : Style.Retroflex df XH Descender
local attach : currentGlyph.gizmo.unapply currentGlyph.baseAnchors.hooktopAttach local attach : currentGlyph.gizmo.unapply currentGlyph.baseAnchors.hooktopAttach
include : VerticalHook.m attach.x XH HookX (-Hook) include : VerticalHook.m attach.x XH HookX (-Hook)
include : df.markSet.if
turned "turnt.\(suffix)" nothing "t.\(suffix)" df.middle (XH / 2) [df.markSet.p] turned "turnt.\(suffix)" nothing "t.\(suffix)" df.middle (XH / 2) [df.markSet.p]
@ -384,6 +384,7 @@ glyph-block Letter-Latin-Lower-T : begin
create-glyph 'mathbb/t' 0x1D565 : glyph-proc create-glyph 'mathbb/t' 0x1D565 : glyph-proc
define df : DivFrame 1 define df : DivFrame 1
include : df.markSet.b
define xLeft : xSmallTBarLeftT df define xLeft : xSmallTBarLeftT df
include : HBar.t xLeft (xLeft + BBD) Ascender BBS include : HBar.t xLeft (xLeft + BBD) Ascender BBS
include : Standard.HookShapeT dispiro df false 0 Ascender 0 BBS include : Standard.HookShapeT dispiro df false 0 Ascender 0 BBS

View file

@ -193,16 +193,18 @@ glyph-block Letter-Latin-U : begin
create-glyph "uSideways.\(suffix)" : glyph-proc create-glyph "uSideways.\(suffix)" : glyph-proc
local df : DivFrame (XH / Width) 2 (XH * 0.1 / SB) local df : DivFrame (XH / Width) 2 (XH * 0.1 / SB)
include : df.markSet.e
include : PointingTo Width XH Width 0 : function [] : glyph-proc include : PointingTo Width XH Width 0 : function [] : glyph-proc
include : Base df (Width - SB) include : Base df (Width - SB)
include : Slabs df (Width - SB) include : Slabs df (Width - SB)
include : Translate 0 (SB / 2) include : Translate 0 (SB / 2)
create-glyph "uDieresisSidewaysBase.\(suffix)" : glyph-proc create-glyph "uDieresisSidewaysBase.\(suffix)" : glyph-proc
local df : DivFrame (XH / Width) 2 (XH * 0.1 / SB)
include : df.markSet.e
local ww : Width * para.diversityM local ww : Width * para.diversityM
set-width ww set-width ww
include : PointingTo ww XH ww 0 : function [] : glyph-proc include : PointingTo ww XH ww 0 : function [] : glyph-proc
local df : DivFrame (XH / Width) 2 (XH * 0.1 / SB)
include : Base df (ww - SB - 0.75 * para.diversityM * AccentHeight) include : Base df (ww - SB - 0.75 * para.diversityM * AccentHeight)
include : Slabs df (ww - SB - 0.75 * para.diversityM * AccentHeight) include : Slabs df (ww - SB - 0.75 * para.diversityM * AccentHeight)
include : Translate 0 (SB / 2) include : Translate 0 (SB / 2)

View file

@ -296,12 +296,12 @@ glyph-block Letter-Latin-Upper-H : begin
derive-glyphs 'cyrl/EnLHook' 0x528 'cyrl/En' : lambda [src srl] : glyph-proc derive-glyphs 'cyrl/EnLHook' 0x528 'cyrl/En' : lambda [src srl] : glyph-proc
include : MarkSet.capDesc include : MarkSet.capDesc
include [refer-glyph src] AS_BASE include [refer-glyph src]
eject-contour 'serifLB' eject-contour 'serifLB'
include : VerticalHook.l SB 0 (-HookX) Hook include : VerticalHook.l SB 0 (-HookX) Hook
derive-glyphs 'cyrl/enLHook' 0x529 'cyrl/en' : lambda [src srl] : glyph-proc derive-glyphs 'cyrl/enLHook' 0x529 'cyrl/en' : lambda [src srl] : glyph-proc
include : MarkSet.p include : MarkSet.p
include [refer-glyph src] AS_BASE include [refer-glyph src]
eject-contour 'serifLB' eject-contour 'serifLB'
include : VerticalHook.l SB 0 (-HookX) Hook include : VerticalHook.l SB 0 (-HookX) Hook

View file

@ -70,9 +70,9 @@ glyph-block Letter-Latin-Upper-N : begin
include : VerticalHook.r RightSB 0 (-HookX) Hook include : VerticalHook.r RightSB 0 (-HookX) Hook
include : VBar.r RightSB 0 CAP include : VBar.r RightSB 0 CAP
create-glyph "Nltail.\(suffix)" : glyph-proc create-glyph "NLTail.\(suffix)" : glyph-proc
include [refer-glyph "N.\(suffix)"] AS_BASE
include : MarkSet.capDesc include : MarkSet.capDesc
include [refer-glyph "N.\(suffix)"]
eject-contour 'serifLB' eject-contour 'serifLB'
include : VerticalHook.l SB 0 (-HookX) Hook include : VerticalHook.l SB 0 (-HookX) Hook
@ -93,7 +93,7 @@ glyph-block Letter-Latin-Upper-N : begin
select-variant 'Eng' 0x14A (follow -- 'N') select-variant 'Eng' 0x14A (follow -- 'N')
select-variant 'smcpN' 0x274 (follow -- 'N') select-variant 'smcpN' 0x274 (follow -- 'N')
select-variant 'Nltail' 0x19D (follow -- 'N') select-variant 'NLTail' 0x19D (follow -- 'N')
select-variant 'currency/nairaSignBase' (follow -- 'N') select-variant 'currency/nairaSignBase' (follow -- 'N')
glyph-block-import Letter-Blackboard : BBS BBD glyph-block-import Letter-Blackboard : BBS BBD

View file

@ -198,7 +198,7 @@ glyph-block Letter-Latin-Upper-Q : begin
create-glyph 'mathbb/Q' 0x211A : glyph-proc create-glyph 'mathbb/Q' 0x211A : glyph-proc
define [QInner] : OShapeOutline.NoOvershoot CAP 0 SB RightSB BBS ArchDepthA ArchDepthB define [QInner] : OShapeOutline.NoOvershoot CAP 0 SB RightSB BBS ArchDepthA ArchDepthB
include : MarkSet.capital include : MarkSet.capDesc
include : OShape CAP 0 SB RightSB BBS ArchDepthA ArchDepthB include : OShape CAP 0 SB RightSB BBS ArchDepthA ArchDepthB
include : intersection include : intersection
QInner QInner

View file

@ -135,6 +135,7 @@ glyph-block Letter-Latin-Upper-T : begin
create-glyph "TRTailBR.\(suffix)" : glyph-proc create-glyph "TRTailBR.\(suffix)" : glyph-proc
include [refer-glyph "T.\(suffix)"] AS_BASE ALSO_METRICS include [refer-glyph "T.\(suffix)"] AS_BASE ALSO_METRICS
include : MarkSet.capDesc
include : VerticalHook.m df.middle 0 HookX Hook include : VerticalHook.m df.middle 0 HookX Hook
create-glyph "cyrl/TjeKomi.\(suffix)" : glyph-proc create-glyph "cyrl/TjeKomi.\(suffix)" : glyph-proc

View file

@ -196,7 +196,7 @@ glyph-block Letter-Latin-V : begin
include : VBar.m Middle (0.5 * oHeight) oHeight [AdviceStroke 4] include : VBar.m Middle (0.5 * oHeight) oHeight [AdviceStroke 4]
create-glyph "cyrl/ukUnblended.\(suffix)" : glyph-proc create-glyph "cyrl/ukUnblended.\(suffix)" : glyph-proc
include : MarkSet.e include : MarkSet.b
local vPartHeight : Ascender * 0.45 + HalfStroke local vPartHeight : Ascender * 0.45 + HalfStroke
include : WithTransform [ApparentTranslate 0 (Ascender - vPartHeight)] : glyph-proc include : WithTransform [ApparentTranslate 0 (Ascender - vPartHeight)] : glyph-proc
include : VHookRightShape [DivFrame 1] fStraightBar vPartHeight include : VHookRightShape [DivFrame 1] fStraightBar vPartHeight

View file

@ -233,7 +233,7 @@ glyph-block Letter-Latin-Z : begin
if slash : include : slash CAP if slash : include : slash CAP
create-glyph "ZDTail.\(suffix)" : glyph-proc create-glyph "ZDTail.\(suffix)" : glyph-proc
include : MarkSet.capital include : MarkSet.capDesc
include : capital MODE-ZDESC include : capital MODE-ZDESC
if serifs : include : serifs CAP if serifs : include : serifs CAP
if slash : include : slash CAP if slash : include : slash CAP
@ -257,7 +257,7 @@ glyph-block Letter-Latin-Z : begin
include : difference [ZemlyaBottomStroke] [bsMask CAP] include : difference [ZemlyaBottomStroke] [bsMask CAP]
create-glyph "ZSwash.\(suffix)" : glyph-proc create-glyph "ZSwash.\(suffix)" : glyph-proc
include : MarkSet.capital include : MarkSet.capDesc
include : capital MODE-ZSWASH include : capital MODE-ZSWASH
if serifs : include : serifs CAP if serifs : include : serifs CAP
if slash : include : slash CAP if slash : include : slash CAP
@ -277,7 +277,7 @@ glyph-block Letter-Latin-Z : begin
if slash : include : slash XH if slash : include : slash XH
create-glyph "zDTail.\(suffix)" : glyph-proc create-glyph "zDTail.\(suffix)" : glyph-proc
include : MarkSet.e include : MarkSet.p
include : small MODE-ZDESC include : small MODE-ZDESC
if serifs : include : serifs XH if serifs : include : serifs XH
if slash : include : slash XH if slash : include : slash XH
@ -301,7 +301,7 @@ glyph-block Letter-Latin-Z : begin
include : difference [ZemlyaBottomStroke] [bsMask XH] include : difference [ZemlyaBottomStroke] [bsMask XH]
create-glyph "zSwash.\(suffix)" : glyph-proc create-glyph "zSwash.\(suffix)" : glyph-proc
include : MarkSet.e include : MarkSet.p
include : small MODE-ZSWASH include : small MODE-ZSWASH
if serifs : include : serifs XH if serifs : include : serifs XH
if slash : include : slash XH if slash : include : slash XH

View file

@ -823,15 +823,16 @@ glyph-block Letter-Shared-Shapes : begin
# Retroflex hooks # Retroflex hooks
glyph-block-export RetroflexHook glyph-block-export RetroflexHook
define RetroflexHook : Descenders : function [x y xLink yAttach yOverflow sw] : union define RetroflexHook : Descenders : function [x y xLink yAttach yOverflow sw] : glyph-proc
xLinkStroke xLink x yAttach sw include : union
VerticalHook.m xLinkStroke xLink x yAttach sw
x -- x VerticalHook.m
y -- y x -- x
xDepth -- HookX y -- y
yDepth -- Hook xDepth -- HookX
sw -- sw yDepth -- Hook
yExtension -- yAttach + yOverflow - y sw -- sw
yExtension -- yAttach + yOverflow - y
# Left bar with hook at top, shared by multiple glyphs # Left bar with hook at top, shared by multiple glyphs
glyph-block-export HooktopLeftBar glyph-block-export HooktopLeftBar

View file

@ -94,6 +94,7 @@ glyph-block Digits-Seven : begin
glyph-block-import Letter-Blackboard : BBS BBD glyph-block-import Letter-Blackboard : BBS BBD
create-glyph 'mathbb/seven' 0x1D7DF : glyph-proc create-glyph 'mathbb/seven' 0x1D7DF : glyph-proc
include : MarkSet.capital
local tr : RightSB - BBS / 2 local tr : RightSB - BBS / 2
local kDiag : DiagCorDs (CAP - BBS) (tr - SevenXLeft) (BBD * 0.75) local kDiag : DiagCorDs (CAP - BBS) (tr - SevenXLeft) (BBD * 0.75)
local xTerm : SevenXLeft - 0.25 * kDiag * BBD local xTerm : SevenXLeft - 0.25 * kDiag * BBD

View file

@ -174,6 +174,7 @@ glyph-block Symbol-Letter : begin
turned 'turniota' 0x2129 'grek/iota' HalfAdvance (XH / 2) turned 'turniota' 0x2129 'grek/iota' HalfAdvance (XH / 2)
create-glyph 'estimated' 0x212E : glyph-proc create-glyph 'estimated' 0x212E : glyph-proc
include : MarkSet.capital
local fineArc : CAP * 0.0300 local fineArc : CAP * 0.0300
local fineBar : CAP * 0.0278 local fineBar : CAP * 0.0278
local thickBarWidth : (0.183 / [Math.sqrt 0.9]) * [Math.sqrt (CAP * (RightSB - SB))] local thickBarWidth : (0.183 / [Math.sqrt 0.9]) * [Math.sqrt (CAP * (RightSB - SB))]
@ -194,6 +195,7 @@ glyph-block Symbol-Letter : begin
Rect (CAP * 0.5) (CAP * 0.208) Middle Width Rect (CAP * 0.5) (CAP * 0.208) Middle Width
create-glyph 'mathAleph' 0x2135 : glyph-proc create-glyph 'mathAleph' 0x2135 : glyph-proc
include : MarkSet.capital
define p 0.3 define p 0.3
include : XStrand true false SB CAP RightSB 0 0.1 0.4 0.28 include : XStrand true false SB CAP RightSB 0 0.1 0.4 0.28
include : intersection include : intersection
@ -216,6 +218,7 @@ glyph-block Symbol-Letter : begin
corner SB CAP corner SB CAP
create-glyph 'mathBeth' 0x2136 : glyph-proc create-glyph 'mathBeth' 0x2136 : glyph-proc
include : MarkSet.capital
define pX 0.7 define pX 0.7
define pY 0.8 define pY 0.8
define turnX : mix SB RightSB pY define turnX : mix SB RightSB pY
@ -237,6 +240,7 @@ glyph-block Symbol-Letter : begin
local yBranch : mix 0 CAP 0.5 local yBranch : mix 0 CAP 0.5
set-width df.width set-width df.width
include : df.markSet.capital
include : intersection [MaskAbove 0] : dispiro [widths.rhs] include : intersection [MaskAbove 0] : dispiro [widths.rhs]
flat xStart CAP flat xStart CAP
@ -252,14 +256,16 @@ glyph-block Symbol-Letter : begin
g4 (df.leftSB + 0.2 * HVContrast * Stroke) O g4 (df.leftSB + 0.2 * HVContrast * Stroke) O
create-glyph 'mathDalet' 0x2138 : glyph-proc create-glyph 'mathDalet' 0x2138 : glyph-proc
include : MarkSet.capital
include : HBar.t SB RightSB CAP include : HBar.t SB RightSB CAP
include : VBar.r [mix SB RightSB 0.75] 0 CAP include : VBar.r [mix SB RightSB 0.75] 0 CAP
create-glyph 'informationSource' 0x2139 : glyph-proc create-glyph 'informationSource' 0x2139 : glyph-proc
include : MarkSet.b
local sw : UnicodeWeightGrade 9 1 local sw : UnicodeWeightGrade 9 1
include : VBar.m Middle 0 XH sw include : VBar.m Middle 0 XH sw
include : HSerif.lt (Middle - sw / 2 * HVContrast) XH (LongJut / 2) include : HSerif.lt (Middle - sw / 2 * HVContrast) XH (LongJut / 2)
include : HSerif.lb (Middle - sw / 2 * HVContrast) 0 (LongJut / 2) include : HSerif.lb (Middle - sw / 2 * HVContrast) 0 (LongJut / 2)
include : HSerif.rb (Middle + sw / 2 * HVContrast) 0 (LongJut / 2) include : HSerif.rb (Middle + sw / 2 * HVContrast) 0 (LongJut / 2)
include : DotAt Middle (XH + AccentStackOffset) (DotRadius * sw / Stroke) include : DotAt Middle (XH + AccentStackOffset) (DotRadius * sw / Stroke)

View file

@ -15,6 +15,7 @@ glyph-block Symbol-Other-Phonetic : begin
local toneMarkRight : Width - toneMarkLeft local toneMarkRight : Width - toneMarkLeft
create-glyph 'triangleColon' 0x2D0 : glyph-proc create-glyph 'triangleColon' 0x2D0 : glyph-proc
include : MarkSet.e
include : union include : union
spiro-outline spiro-outline
corner (Middle - triangleSize * 1.35) XH corner (Middle - triangleSize * 1.35) XH
@ -26,6 +27,7 @@ glyph-block Symbol-Other-Phonetic : begin
corner (Middle + triangleSize * 1.35) 0 corner (Middle + triangleSize * 1.35) 0
create-glyph 'halfTriangleColon' 0x2D1 : glyph-proc create-glyph 'halfTriangleColon' 0x2D1 : glyph-proc
include : MarkSet.e
include : spiro-outline include : spiro-outline
corner (Middle - triangleSize * 1.35) XH corner (Middle - triangleSize * 1.35) XH
corner Middle (XH - triangleSize * 2.75) corner Middle (XH - triangleSize * 2.75)

View file

@ -190,11 +190,13 @@ glyph-block Symbol-Punctuation-Quotes-And-Primes : begin
create-glyph 'Saltillo' 0xA78B : glyph-proc create-glyph 'Saltillo' 0xA78B : glyph-proc
local df : DivFrame para.diversityF local df : DivFrame para.diversityF
set-width df.width set-width df.width
include : df.markSet.capital
include : StraightQuoteShape df CAP (0.625 * XH) include : StraightQuoteShape df CAP (0.625 * XH)
create-glyph 'saltillo' 0xA78C : glyph-proc create-glyph 'saltillo' 0xA78C : glyph-proc
local df : DivFrame para.diversityF local df : DivFrame para.diversityF
set-width df.width set-width df.width
include : df.markSet.b
include : StraightQuoteShape df Ascender XH include : StraightQuoteShape df Ascender XH
create-glyph 'asciiGrave/selector.straight' : glyph-proc create-glyph 'asciiGrave/selector.straight' : glyph-proc

View file

@ -2364,7 +2364,7 @@ descriptionAffix = "cursive loop plus diagonal tail"
selectorAffix.k = "cursiveTailed" selectorAffix.k = "cursiveTailed"
selectorAffix."k/sansSerif" = "cursiveTailed" selectorAffix."k/sansSerif" = "cursiveTailed"
selectorAffix.kHookTop = "cursiveTailed" selectorAffix.kHookTop = "cursiveTailed"
selectorAffix.kDescender = "cursiveTailed" selectorAffix.kDescender = "cursive"
[prime.k.variants-buildup.stages.serifs.serifless] [prime.k.variants-buildup.stages.serifs.serifless]
rank = 1 rank = 1