This commit is contained in:
parent
8ede97ac2e
commit
d957e1e9a1
3 changed files with 57 additions and 18 deletions
1
changes/32.5.0.md
Normal file
1
changes/32.5.0.md
Normal file
|
@ -0,0 +1 @@
|
||||||
|
* Add variant selector for decorative angle brackets (U+276C...U+2771) (#2603, #2623).
|
|
@ -68,26 +68,41 @@ glyph-block Symbol-Pictograph-Checking-Marks : begin
|
||||||
alsoThru 0.47 0.5
|
alsoThru 0.47 0.5
|
||||||
g4 ptRSB [mix ptBot ptTop 0.42]
|
g4 ptRSB [mix ptBot ptTop 0.42]
|
||||||
|
|
||||||
do "Ext angle brackets"
|
do "Decorative angular brackets"
|
||||||
define Geom : GeometricDim Width Width
|
define Geom : GeometricDim Width Width
|
||||||
define mediumSw : UnicodeWeightGrade 5 Geom.Scalar
|
define mediumSw : UnicodeWeightGrade 5 Geom.Scalar
|
||||||
define heavySw : UnicodeWeightGrade 9 Geom.Scalar
|
define heavySw : UnicodeWeightGrade 9 Geom.Scalar
|
||||||
define xHeavySw : UnicodeWeightGrade 11 Geom.Scalar
|
define xHeavySw : UnicodeWeightGrade 11 Geom.Scalar
|
||||||
|
|
||||||
define ExtBracketConfig : list
|
define HeightConfig : object
|
||||||
list 0x276C mediumSw 1 SB PictTop
|
# suffix width scale height scale
|
||||||
list 0x276D mediumSw 0 SB PictTop
|
tall { 1.00 1.00 }
|
||||||
list 0x276E heavySw 1 [mix SB Middle 0.45] [mix SymbolMid ParenTop 0.5]
|
middle { 0.80 0.75 }
|
||||||
list 0x276F heavySw 0 [mix SB Middle 0.45] [mix SymbolMid ParenTop 0.5]
|
short { 0.55 0.50 }
|
||||||
list 0x2770 xHeavySw 1 SB PictTop
|
|
||||||
list 0x2771 xHeavySw 0 SB PictTop
|
define CharConfig : list
|
||||||
foreach {unicode sw op left top} [items-of ExtBracketConfig] : begin
|
# unicode sw side
|
||||||
create-glyph [NameUni unicode] unicode : glyph-proc
|
list 0x276C mediumSw 1
|
||||||
local bot : 2 * SymbolMid - top
|
list 0x276D mediumSw 0
|
||||||
local right : 2 * Middle - left
|
list 0x276E heavySw 1
|
||||||
|
list 0x276F heavySw 0
|
||||||
|
list 0x2770 xHeavySw 1
|
||||||
|
list 0x2771 xHeavySw 0
|
||||||
|
|
||||||
|
foreach { unicode sw side } [items-of CharConfig] : begin
|
||||||
|
foreach { suffix { widthScale heightScale } } [pairs-of HeightConfig] : begin
|
||||||
|
create-glyph "\[NameUni unicode].\(suffix)" : glyph-proc
|
||||||
|
local top : mix SymbolMid ParenTop heightScale
|
||||||
|
local bot : mix SymbolMid ParenBot heightScale
|
||||||
|
local left : mix Middle SB widthScale
|
||||||
|
local right : mix Middle RightSB widthScale
|
||||||
local cor : DiagCor (top - bot) (2 * (right - left))
|
local cor : DiagCor (top - bot) (2 * (right - left))
|
||||||
|
local swC : sw * cor
|
||||||
|
local shift : 0.5 * swC + OX
|
||||||
include : dispiro
|
include : dispiro
|
||||||
widths.center (sw * cor)
|
widths.center swC
|
||||||
corner [mix (left + sw / 2) (right - sw / 2) op] top [heading Downward]
|
corner [mix (left + shift) (right - shift) side] top [heading Downward]
|
||||||
corner [mix (left + sw / 2) (right - sw / 2) (1 - op)] SymbolMid [heading Downward]
|
corner [mix (left + shift) (right - shift) (1 - side)] SymbolMid [heading Downward]
|
||||||
corner [mix (left + sw / 2) (right - sw / 2) op] bot [heading Downward]
|
corner [mix (left + shift) (right - shift) side] bot [heading Downward]
|
||||||
|
|
||||||
|
select-variant [NameUni unicode] unicode (follow -- 'decorativeAngleBracket')
|
||||||
|
|
|
@ -8556,6 +8556,28 @@ selectorAffix."micro" = "serifed"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[prime.decorative-angle-brackets]
|
||||||
|
sampler = "❮ ❯"
|
||||||
|
samplerExplain = "Decorative angle brackets (U+276C...U+2771)"
|
||||||
|
tagKind = "symbol"
|
||||||
|
|
||||||
|
[prime.decorative-angle-brackets.variants.tall]
|
||||||
|
rank = 1
|
||||||
|
description = "Tall decorative angle brackets, sharing same height as conventional brackets"
|
||||||
|
selector."decorativeAngleBracket" = "tall"
|
||||||
|
|
||||||
|
[prime.decorative-angle-brackets.variants.middle]
|
||||||
|
rank = 2
|
||||||
|
description = "Middle-height decorative angle brackets"
|
||||||
|
selector."decorativeAngleBracket" = "middle"
|
||||||
|
|
||||||
|
[prime.decorative-angle-brackets.variants.short]
|
||||||
|
rank = 3
|
||||||
|
description = "Short decorative angle brackets, sharing same height as guillemts"
|
||||||
|
selector."decorativeAngleBracket" = "short"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[prime.lig-ltgteq]
|
[prime.lig-ltgteq]
|
||||||
sampler = "<= >="
|
sampler = "<= >="
|
||||||
samplerExplain = "Less-equal and Greater-equal ligations"
|
samplerExplain = "Less-equal and Greater-equal ligations"
|
||||||
|
@ -8882,6 +8904,7 @@ question = "smooth"
|
||||||
pilcrow = "high"
|
pilcrow = "high"
|
||||||
partial-derivative = "curly-bar"
|
partial-derivative = "curly-bar"
|
||||||
micro-sign = "toothed-serifless"
|
micro-sign = "toothed-serifless"
|
||||||
|
decorative-angle-brackets = "middle"
|
||||||
lig-ltgteq = "flat"
|
lig-ltgteq = "flat"
|
||||||
lig-neq = "slightly-slanted"
|
lig-neq = "slightly-slanted"
|
||||||
lig-equal-chain = "with-notch"
|
lig-equal-chain = "with-notch"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue