Force full serifs for turned m under monospace. (#2127)

This commit is contained in:
John McWilliams 2023-12-22 09:26:41 -05:00 committed by GitHub
parent dcdf72eea3
commit f287d352da
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 11 additions and 55 deletions

View file

@ -6,4 +6,3 @@
* Make serif variants of Cyrillic Small Letter Tall Te (`U+1C84`) respond to italics. * Make serif variants of Cyrillic Small Letter Tall Te (`U+1C84`) respond to italics.
* Make terminal serif behavior of palatalized Komi consonants (`U+0502`...`U+0505`, `U+0508`...`U+050F`) more consistent with each other. * Make terminal serif behavior of palatalized Komi consonants (`U+0502`...`U+0505`, `U+0508`...`U+050F`) more consistent with each other.
* Refine serifs of Turned M (`U+019C`, `U+026F`, `U+0270`, `U+1D1F`, `U+1D5A`, `U+1DAD`), Cyrillic Sha (`U+0448`, `U+2DF2`, `U+1E046`, `U+1E064`), and Cyrillic Shcha (`U+0449`, `U+2DF3`) under monospace. * Refine serifs of Turned M (`U+019C`, `U+026F`, `U+0270`, `U+1D1F`, `U+1D5A`, `U+1DAD`), Cyrillic Sha (`U+0448`, `U+2DF2`, `U+1E046`, `U+1E064`), and Cyrillic Shcha (`U+0449`, `U+2DF3`) under monospace.
- As a consequence, serifed and motion-serifed variants will look identical under monospace.

View file

@ -161,7 +161,7 @@ glyph-block Autobuild-Transformed : begin
list 0x1D57 't' list 0x1D57 't'
list 0x1D58 'u' list 0x1D58 'u'
list 0x1D59 'uSideways' list 0x1D59 'uSideways'
list 0x1D5A 'turnm/reduced' list 0x1D5A 'turnm'
list 0x1D5B 'v' list 0x1D5B 'v'
list 0x1D5C 'latinAyin' list 0x1D5C 'latinAyin'
list 0x1D5D 'grek/beta' list 0x1D5D 'grek/beta'
@ -188,7 +188,7 @@ glyph-block Autobuild-Transformed : begin
list 0x1DAA 'lPalatalHook' list 0x1DAA 'lPalatalHook'
list 0x1DAB 'smcpL' list 0x1DAB 'smcpL'
list 0x1DAC 'meng' list 0x1DAC 'meng'
list 0x1DAD 'turnmLeg/reduced' list 0x1DAD 'turnmLeg'
list 0x1DAE 'nLTail' list 0x1DAE 'nLTail'
list 0x1DAF 'nHookBottom' list 0x1DAF 'nHookBottom'
list 0x1DB0 'smcpN' list 0x1DB0 'smcpN'
@ -319,7 +319,7 @@ glyph-block Autobuild-Transformed : begin
list 0x1E043 'cyrl/ha' list 0x1E043 'cyrl/ha'
list 0x1E044 'cyrl/tse' list 0x1E044 'cyrl/tse'
list 0x1E045 'cyrl/che' list 0x1E045 'cyrl/che'
list 0x1E046 'cyrl/sha/reduced' list 0x1E046 'cyrl/sha'
list 0x1E047 'cyrl/yery' list 0x1E047 'cyrl/yery'
list 0x1E048 'cyrl/e' list 0x1E048 'cyrl/e'
list 0x1E049 'cyrl/yu' list 0x1E049 'cyrl/yu'
@ -450,7 +450,7 @@ glyph-block Autobuild-Transformed : begin
list 0x1E061 'cyrl/ha' list 0x1E061 'cyrl/ha'
list 0x1E062 'cyrl/tse' list 0x1E062 'cyrl/tse'
list 0x1E063 'cyrl/che' list 0x1E063 'cyrl/che'
list 0x1E064 'cyrl/sha/reduced' list 0x1E064 'cyrl/sha'
list 0x1E065 'cyrl/yer' list 0x1E065 'cyrl/yer'
list 0x1E066 'cyrl/yery' list 0x1E066 'cyrl/yery'
list 0x1E067 'cyrl/ge' list 0x1E067 'cyrl/ge'
@ -546,8 +546,8 @@ glyph-block Autobuild-Transformed : begin
list 0x2DEF 'cyrl/ha' list 0x2DEF 'cyrl/ha'
list 0x2DF0 'cyrl/tse' list 0x2DF0 'cyrl/tse'
list 0x2DF1 'cyrl/che' list 0x2DF1 'cyrl/che'
list 0x2DF2 'cyrl/sha/reduced' list 0x2DF2 'cyrl/sha'
list 0x2DF3 'cyrl/shcha/reduced' list 0x2DF3 'cyrl/shcha'
list 0x2DF4 'cyrl/fita' list 0x2DF4 'cyrl/fita'
list 0x2DF5 'cyrl/este' list 0x2DF5 'cyrl/este'
list 0x2DF6 'cyrl/a' list 0x2DF6 'cyrl/a'

View file

@ -14,9 +14,7 @@ glyph-block Letter-Cyrillic-Orthography : begin
orthographic-italic 'cyrl/te' 0x442 orthographic-italic 'cyrl/te' 0x442
orthographic-italic 'cyrl/tse' 0x446 orthographic-italic 'cyrl/tse' 0x446
orthographic-italic 'cyrl/sha' 0x448 orthographic-italic 'cyrl/sha' 0x448
orthographic-italic 'cyrl/sha/reduced' null
orthographic-italic 'cyrl/shcha' 0x449 orthographic-italic 'cyrl/shcha' 0x449
orthographic-italic 'cyrl/shcha/reduced' null
orthographic-italic 'cyrl/dzhe' 0x45F orthographic-italic 'cyrl/dzhe' 0x45F
orthographic-italic 'cyrl/yat' 0x463 orthographic-italic 'cyrl/yat' 0x463
orthographic-italic 'cyrl/iShortTail' 0x48B orthographic-italic 'cyrl/iShortTail' 0x48B

View file

@ -40,8 +40,6 @@ glyph-block Letter-Cyrillic-Sha : begin
include : df.markSet.e include : df.markSet.e
include : CyrShaShape XH df false include : CyrShaShape XH df false
alias 'cyrl/sha/reduced.upright' null 'cyrl/sha.upright'
create-glyph 'cyrl/teThreeLeg.upright' : glyph-proc create-glyph 'cyrl/teThreeLeg.upright' : glyph-proc
local df : include : DivFrame para.diversityM 3 local df : include : DivFrame para.diversityM 3
include : df.markSet.e include : df.markSet.e
@ -63,5 +61,3 @@ glyph-block Letter-Cyrillic-Sha : begin
local df : include : DivFrame para.diversityM 3 local df : include : DivFrame para.diversityM 3
include : df.markSet.e include : df.markSet.e
include : CyrShchaShape XH df include : CyrShchaShape XH df
alias 'cyrl/shcha/reduced.upright' null 'cyrl/shcha.upright'

View file

@ -105,11 +105,10 @@ glyph-block Letter-Latin-Lower-M : begin
define [FullTurnMSerifs df top lbot mbot rbot tailed earless _mid] : glyph-proc define [FullTurnMSerifs df top lbot mbot rbot tailed earless _mid] : glyph-proc
local mid : fallback _mid df.middle local mid : fallback _mid df.middle
local fFull : MEnoughSpaceForFullSerifs df mid if [not earless] : include : SmallMTopLeftSerif df top lbot true
if [not earless] : include : SmallMTopLeftSerif df top lbot fFull include : SmallMBottomMotionLeftSerif df top lbot true
include : SmallMBottomMotionLeftSerif df top lbot fFull include : SmallMBottomMotionMiddleSerif df top mbot true mid
include : SmallMBottomMotionMiddleSerif df top mbot fFull mid if [not tailed] : include : SmallMBottomMotionRightSerif df top rbot true
if [not tailed] : include : SmallMBottomMotionRightSerif df top rbot fFull
define [AutoSerifs df top lbot mbot rbot tailed earless _mid] : begin define [AutoSerifs df top lbot mbot rbot tailed earless _mid] : begin
if SLAB [FullSerifs df top lbot mbot rbot tailed earless _mid] [no-shape] if SLAB [FullSerifs df top lbot mbot rbot tailed earless _mid] [no-shape]
@ -378,19 +377,15 @@ glyph-block Letter-Latin-Lower-M : begin
include : CyrDescender.rSideJut df.rightSB 0 (refSw -- df.mvs) include : CyrDescender.rSideJut df.rightSB 0 (refSw -- df.mvs)
select-variant 'turnm' 0x26F select-variant 'turnm' 0x26F
link-reduced-variant 'turnm/reduced' 'turnm'
select-variant 'capitalTurnm' 0x19C (follow -- 'turnm') select-variant 'capitalTurnm' 0x19C (follow -- 'turnm')
select-variant 'turnmLeg' 0x270 select-variant 'turnmLeg' 0x270
link-reduced-variant 'turnmLeg/reduced' 'turnmLeg' select-variant 'turnmSideways' 0x1D1F (follow -- 'turnm')
select-variant 'turnmSideways' 0x1D1F (follow -- 'turnm/reduced')
select-variant 'cyrl/sha.italic' (shapeFrom -- 'turnm') select-variant 'cyrl/sha.italic' (shapeFrom -- 'turnm')
alias 'cyrl/sha.BGR' null 'cyrl/sha.italic' alias 'cyrl/sha.BGR' null 'cyrl/sha.italic'
select-variant 'cyrl/sha/reduced.italic' (shapeFrom -- 'turnm')
select-variant 'cyrl/shcha.italic' select-variant 'cyrl/shcha.italic'
alias 'cyrl/shcha.BGR' null 'cyrl/shcha.italic' alias 'cyrl/shcha.BGR' null 'cyrl/shcha.italic'
select-variant 'cyrl/shcha/reduced.italic' (shapeFrom -- 'cyrl/shcha.italic')
derive-composites 'cyrl/te.SRB' null 'cyrl/sha.italic' 'macronAbove' derive-composites 'cyrl/te.SRB' null 'cyrl/sha.italic' 'macronAbove'

View file

@ -3721,15 +3721,11 @@ selectorAffix.turnh = "toothed"
selectorAffix.turnhHookLeft = "toothed" selectorAffix.turnhHookLeft = "toothed"
selectorAffix.turnhHookLeftRTail = "toothed" selectorAffix.turnhHookLeftRTail = "toothed"
selectorAffix.turnm = "toothed" selectorAffix.turnm = "toothed"
selectorAffix."turnm/reduced" = "toothed"
selectorAffix.turnmLeg = "toothed" selectorAffix.turnmLeg = "toothed"
selectorAffix."turnmLeg/reduced" = "toothed"
selectorAffix."cyrl/i.italic" = "toothed" selectorAffix."cyrl/i.italic" = "toothed"
selectorAffix."cyrl/i.italic/descBase" = "toothed" selectorAffix."cyrl/i.italic/descBase" = "toothed"
selectorAffix."cyrl/sha.italic" = "toothed" selectorAffix."cyrl/sha.italic" = "toothed"
selectorAffix."cyrl/sha/reduced.italic" = "toothed"
selectorAffix."cyrl/shcha.italic" = "toothed" selectorAffix."cyrl/shcha.italic" = "toothed"
selectorAffix."cyrl/shcha/reduced.italic" = "toothed"
selectorAffix."cyrl/dzhe.italic" = "toothed" selectorAffix."cyrl/dzhe.italic" = "toothed"
selectorAffix."cyrl/tse.italic" = "toothed" selectorAffix."cyrl/tse.italic" = "toothed"
selectorAffix."ue/u" = "toothed" selectorAffix."ue/u" = "toothed"
@ -3746,15 +3742,11 @@ selectorAffix.turnh = "toothed"
selectorAffix.turnhHookLeft = "toothed" selectorAffix.turnhHookLeft = "toothed"
selectorAffix.turnhHookLeftRTail = "toothed" selectorAffix.turnhHookLeftRTail = "toothed"
selectorAffix.turnm = "tailed" selectorAffix.turnm = "tailed"
selectorAffix."turnm/reduced" = "tailed"
selectorAffix.turnmLeg = "toothed" selectorAffix.turnmLeg = "toothed"
selectorAffix."turnmLeg/reduced" = "toothed"
selectorAffix."cyrl/i.italic" = "tailed" selectorAffix."cyrl/i.italic" = "tailed"
selectorAffix."cyrl/i.italic/descBase" = "toothed" selectorAffix."cyrl/i.italic/descBase" = "toothed"
selectorAffix."cyrl/sha.italic" = "tailed" selectorAffix."cyrl/sha.italic" = "tailed"
selectorAffix."cyrl/sha/reduced.italic" = "tailed"
selectorAffix."cyrl/shcha.italic" = "toothed" selectorAffix."cyrl/shcha.italic" = "toothed"
selectorAffix."cyrl/shcha/reduced.italic" = "toothed"
selectorAffix."cyrl/dzhe.italic" = "tailed" selectorAffix."cyrl/dzhe.italic" = "tailed"
selectorAffix."cyrl/tse.italic" = "toothed" selectorAffix."cyrl/tse.italic" = "toothed"
selectorAffix."ue/u" = "toothed" selectorAffix."ue/u" = "toothed"
@ -3771,15 +3763,11 @@ selectorAffix.turnh = "toothed"
selectorAffix.turnhHookLeft = "toothed" selectorAffix.turnhHookLeft = "toothed"
selectorAffix.turnhHookLeftRTail = "toothed" selectorAffix.turnhHookLeftRTail = "toothed"
selectorAffix.turnm = "toothlessCorner" selectorAffix.turnm = "toothlessCorner"
selectorAffix."turnm/reduced" = "toothlessCorner"
selectorAffix.turnmLeg = "toothed" selectorAffix.turnmLeg = "toothed"
selectorAffix."turnmLeg/reduced" = "toothed"
selectorAffix."cyrl/i.italic" = "toothed" selectorAffix."cyrl/i.italic" = "toothed"
selectorAffix."cyrl/i.italic/descBase" = "toothed" selectorAffix."cyrl/i.italic/descBase" = "toothed"
selectorAffix."cyrl/sha.italic" = "toothed" selectorAffix."cyrl/sha.italic" = "toothed"
selectorAffix."cyrl/sha/reduced.italic" = "toothed"
selectorAffix."cyrl/shcha.italic" = "toothed" selectorAffix."cyrl/shcha.italic" = "toothed"
selectorAffix."cyrl/shcha/reduced.italic" = "toothed"
selectorAffix."cyrl/dzhe.italic" = "toothed" selectorAffix."cyrl/dzhe.italic" = "toothed"
selectorAffix."cyrl/tse.italic" = "toothed" selectorAffix."cyrl/tse.italic" = "toothed"
selectorAffix."ue/u" = "toothed" selectorAffix."ue/u" = "toothed"
@ -3796,15 +3784,11 @@ selectorAffix.turnh = "toothed"
selectorAffix.turnhHookLeft = "toothed" selectorAffix.turnhHookLeft = "toothed"
selectorAffix.turnhHookLeftRTail = "toothed" selectorAffix.turnhHookLeftRTail = "toothed"
selectorAffix.turnm = "toothlessRounded" selectorAffix.turnm = "toothlessRounded"
selectorAffix."turnm/reduced" = "toothlessRounded"
selectorAffix.turnmLeg = "toothed" selectorAffix.turnmLeg = "toothed"
selectorAffix."turnmLeg/reduced" = "toothed"
selectorAffix."cyrl/i.italic" = "toothed" selectorAffix."cyrl/i.italic" = "toothed"
selectorAffix."cyrl/i.italic/descBase" = "toothed" selectorAffix."cyrl/i.italic/descBase" = "toothed"
selectorAffix."cyrl/sha.italic" = "toothed" selectorAffix."cyrl/sha.italic" = "toothed"
selectorAffix."cyrl/sha/reduced.italic" = "toothed"
selectorAffix."cyrl/shcha.italic" = "toothed" selectorAffix."cyrl/shcha.italic" = "toothed"
selectorAffix."cyrl/shcha/reduced.italic" = "toothed"
selectorAffix."cyrl/dzhe.italic" = "toothed" selectorAffix."cyrl/dzhe.italic" = "toothed"
selectorAffix."cyrl/tse.italic" = "toothed" selectorAffix."cyrl/tse.italic" = "toothed"
selectorAffix."ue/u" = "toothed" selectorAffix."ue/u" = "toothed"
@ -3822,15 +3806,11 @@ selectorAffix.turnh = "serifless"
selectorAffix.turnhHookLeft = "serifless" selectorAffix.turnhHookLeft = "serifless"
selectorAffix.turnhHookLeftRTail = "serifless" selectorAffix.turnhHookLeftRTail = "serifless"
selectorAffix.turnm = "serifless" selectorAffix.turnm = "serifless"
selectorAffix."turnm/reduced" = "serifless"
selectorAffix.turnmLeg = "serifless" selectorAffix.turnmLeg = "serifless"
selectorAffix."turnmLeg/reduced" = "serifless"
selectorAffix."cyrl/i.italic" = "serifless" selectorAffix."cyrl/i.italic" = "serifless"
selectorAffix."cyrl/i.italic/descBase" = "serifless" selectorAffix."cyrl/i.italic/descBase" = "serifless"
selectorAffix."cyrl/sha.italic" = "serifless" selectorAffix."cyrl/sha.italic" = "serifless"
selectorAffix."cyrl/sha/reduced.italic" = "serifless"
selectorAffix."cyrl/shcha.italic" = "serifless" selectorAffix."cyrl/shcha.italic" = "serifless"
selectorAffix."cyrl/shcha/reduced.italic" = "serifless"
selectorAffix."cyrl/dzhe.italic" = "serifless" selectorAffix."cyrl/dzhe.italic" = "serifless"
selectorAffix."cyrl/tse.italic" = "serifless" selectorAffix."cyrl/tse.italic" = "serifless"
selectorAffix."ue/u" = "serifless" selectorAffix."ue/u" = "serifless"
@ -3847,15 +3827,11 @@ selectorAffix.turnh = "motionSerifed"
selectorAffix.turnhHookLeft = "motionSerifed" selectorAffix.turnhHookLeft = "motionSerifed"
selectorAffix.turnhHookLeftRTail = "serifless" selectorAffix.turnhHookLeftRTail = "serifless"
selectorAffix.turnm = {if = [{body = "toothed"}], then = "motionSerifed", else = "topLeftSerifed"} selectorAffix.turnm = {if = [{body = "toothed"}], then = "motionSerifed", else = "topLeftSerifed"}
selectorAffix."turnm/reduced" = {if = [{body = "toothed"}], then = "motionSerifed", else = "topLeftSerifed"}
selectorAffix.turnmLeg = "motionSerifed" selectorAffix.turnmLeg = "motionSerifed"
selectorAffix."turnmLeg/reduced" = "motionSerifed"
selectorAffix."cyrl/i.italic" = "motionSerifed" selectorAffix."cyrl/i.italic" = "motionSerifed"
selectorAffix."cyrl/i.italic/descBase" = "motionSerifed" selectorAffix."cyrl/i.italic/descBase" = "motionSerifed"
selectorAffix."cyrl/sha.italic" = "motionSerifed" selectorAffix."cyrl/sha.italic" = "motionSerifed"
selectorAffix."cyrl/sha/reduced.italic" = "motionSerifed"
selectorAffix."cyrl/shcha.italic" = "motionSerifed" selectorAffix."cyrl/shcha.italic" = "motionSerifed"
selectorAffix."cyrl/shcha/reduced.italic" = "motionSerifed"
selectorAffix."cyrl/dzhe.italic" = "motionSerifed" selectorAffix."cyrl/dzhe.italic" = "motionSerifed"
selectorAffix."cyrl/tse.italic" = "motionSerifed" selectorAffix."cyrl/tse.italic" = "motionSerifed"
selectorAffix."ue/u" = "serifed" selectorAffix."ue/u" = "serifed"
@ -3873,15 +3849,11 @@ selectorAffix.turnh = "serifless"
selectorAffix.turnhHookLeft = "serifless" selectorAffix.turnhHookLeft = "serifless"
selectorAffix.turnhHookLeftRTail = "serifless" selectorAffix.turnhHookLeftRTail = "serifless"
selectorAffix.turnm = "bottomRightSerifed" selectorAffix.turnm = "bottomRightSerifed"
selectorAffix."turnm/reduced" = "bottomRightSerifed"
selectorAffix.turnmLeg = "serifless" selectorAffix.turnmLeg = "serifless"
selectorAffix."turnmLeg/reduced" = "serifless"
selectorAffix."cyrl/i.italic" = "bottomRightSerifed" selectorAffix."cyrl/i.italic" = "bottomRightSerifed"
selectorAffix."cyrl/i.italic/descBase" = "serifless" selectorAffix."cyrl/i.italic/descBase" = "serifless"
selectorAffix."cyrl/sha.italic" = "bottomRightSerifed" selectorAffix."cyrl/sha.italic" = "bottomRightSerifed"
selectorAffix."cyrl/sha/reduced.italic" = "bottomRightSerifed"
selectorAffix."cyrl/shcha.italic" = "serifless" selectorAffix."cyrl/shcha.italic" = "serifless"
selectorAffix."cyrl/shcha/reduced.italic" = "serifless"
selectorAffix."cyrl/dzhe.italic" = "bottomRightSerifed" selectorAffix."cyrl/dzhe.italic" = "bottomRightSerifed"
selectorAffix."cyrl/tse.italic" = "serifless" selectorAffix."cyrl/tse.italic" = "serifless"
selectorAffix."ue/u" = "serifless" selectorAffix."ue/u" = "serifless"
@ -3898,15 +3870,11 @@ selectorAffix.turnh = "serifed"
selectorAffix.turnhHookLeft = "serifed" selectorAffix.turnhHookLeft = "serifed"
selectorAffix.turnhHookLeftRTail = "serifed" selectorAffix.turnhHookLeftRTail = "serifed"
selectorAffix.turnm = "serifed" selectorAffix.turnm = "serifed"
selectorAffix."turnm/reduced" = {if = [{body = "toothed"}], then = "motionSerifed", else = "topLeftSerifed"}
selectorAffix.turnmLeg = "serifed" selectorAffix.turnmLeg = "serifed"
selectorAffix."turnmLeg/reduced" = "motionSerifed"
selectorAffix."cyrl/i.italic" = "serifed" selectorAffix."cyrl/i.italic" = "serifed"
selectorAffix."cyrl/i.italic/descBase" = "serifed" selectorAffix."cyrl/i.italic/descBase" = "serifed"
selectorAffix."cyrl/sha.italic" = "serifed" selectorAffix."cyrl/sha.italic" = "serifed"
selectorAffix."cyrl/sha/reduced.italic" = "motionSerifed"
selectorAffix."cyrl/shcha.italic" = "serifed" selectorAffix."cyrl/shcha.italic" = "serifed"
selectorAffix."cyrl/shcha/reduced.italic" = "motionSerifed"
selectorAffix."cyrl/dzhe.italic" = "serifed" selectorAffix."cyrl/dzhe.italic" = "serifed"
selectorAffix."cyrl/tse.italic" = "serifed" selectorAffix."cyrl/tse.italic" = "serifed"
selectorAffix."ue/u" = "serifed" selectorAffix."ue/u" = "serifed"