Add Musical Symbol Fermata.
This commit is contained in:
parent
6fed8d9dfb
commit
b20e1cf632
5 changed files with 48 additions and 23 deletions
|
@ -11,3 +11,6 @@
|
|||
- LATIN SMALL LETTER VOLAPUK UE (`U+A79F`).
|
||||
- MODIFIER LETTER SMALL CAPITAL G WITH HOOK (`U+10794`).
|
||||
- MUSICAL SYMBOL DOUBLE SHARP (`U+1D12A`).
|
||||
* Add Characters:
|
||||
- MUSICAL SYMBOL FERMATA (`U+1D110`).
|
||||
- MUSICAL SYMBOL FERMATA BELOW (`U+1D111`).
|
||||
|
|
|
@ -357,47 +357,47 @@ glyph-block Mark-Above : begin
|
|||
set-width 0
|
||||
include : StdAnchors.wide
|
||||
include : TildeShape
|
||||
ttop -- aboveMarkTop
|
||||
tbot -- aboveMarkBot + markFine / 2
|
||||
ttop -- aboveMarkTop
|
||||
tbot -- aboveMarkBot + markFine / 2
|
||||
leftEnd -- (markMiddle - markExtend * 1.5)
|
||||
rightEnd -- (markMiddle + markExtend * 1.5)
|
||||
hs -- markHalfStroke
|
||||
hs -- markHalfStroke
|
||||
|
||||
create-glyph 'asciiTilde.high' : glyph-proc
|
||||
include : TildeShape
|
||||
ttop -- [mix aboveMarkMid aboveMarkTop asciiMarkZoomY]
|
||||
tbot -- [mix aboveMarkMid (aboveMarkBot + markFine / 2) asciiMarkZoomY]
|
||||
ttop -- [mix aboveMarkMid aboveMarkTop asciiMarkZoomY]
|
||||
tbot -- [mix aboveMarkMid (aboveMarkBot + markFine / 2) asciiMarkZoomY]
|
||||
leftEnd -- SB
|
||||
rightEnd -- RightSB
|
||||
hs -- (OperatorStroke / 2)
|
||||
hs -- (OperatorStroke / 2)
|
||||
|
||||
for-width-kinds WideWidth1
|
||||
define emDashWidth : if (para.isQuasiProportional && MosaicWidthScalar > 1) UPM MosaicWidth
|
||||
create-glyph [MangleName 'swungDash.high'] : glyph-proc
|
||||
set-width emDashWidth
|
||||
include : TildeShape
|
||||
ttop -- [mix aboveMarkMid aboveMarkTop asciiMarkZoomY]
|
||||
tbot -- [mix aboveMarkMid (aboveMarkBot + markFine / 2) asciiMarkZoomY]
|
||||
ttop -- [mix aboveMarkMid aboveMarkTop asciiMarkZoomY]
|
||||
tbot -- [mix aboveMarkMid (aboveMarkBot + markFine / 2) asciiMarkZoomY]
|
||||
leftEnd -- SB
|
||||
rightEnd -- (emDashWidth - SB)
|
||||
hs -- (OperatorStroke / 2)
|
||||
hs -- (OperatorStroke / 2)
|
||||
|
||||
define [OverlayTildeT sink] : begin
|
||||
local t : mix aboveMarkMid aboveMarkTop asciiMarkZoomY
|
||||
local b : mix aboveMarkMid (aboveMarkBot + markFine / 2) asciiMarkZoomY
|
||||
local offset : SymbolMid - [mix t b (1 / 2)]
|
||||
return : sink
|
||||
ttop -- (t + offset)
|
||||
tbot -- (b + offset)
|
||||
ttop -- (t + offset)
|
||||
tbot -- (b + offset)
|
||||
leftEnd -- [mix 0 SB (1/3)]
|
||||
rightEnd -- [mix Width RightSB (1/3)]
|
||||
hs -- ([AdviceStroke 4] / 2)
|
||||
hs -- ([AdviceStroke 4] / 2)
|
||||
|
||||
create-glyph 'overlayTildeOperator' : glyph-proc
|
||||
include : OverlayTildeT TildeShape
|
||||
|
||||
create-glyph 'overlayTildeOperatorAboveMask' : glyph-proc
|
||||
define FarRight : Width * 4
|
||||
define FarRight : (+Width) * 4
|
||||
define FarLeft : (-Width) * 3
|
||||
define FarAbove : CAP * 4
|
||||
|
||||
|
@ -424,11 +424,11 @@ glyph-block Mark-Above : begin
|
|||
local fine : [AdviceStroke 4.5] / 2
|
||||
|
||||
include : TildeShape
|
||||
ttop -- ttop
|
||||
tbot -- tbot
|
||||
ttop -- ttop
|
||||
tbot -- tbot
|
||||
leftEnd -- (markMiddle - markExtend * 1.5)
|
||||
rightEnd -- (markMiddle + markExtend * 1.5)
|
||||
hs -- fine
|
||||
hs -- fine
|
||||
|
||||
create-forked-glyph 'tildeSlashAbove' 0x34A : glyph-proc
|
||||
include : dispiro
|
||||
|
@ -453,11 +453,11 @@ glyph-block Mark-Above : begin
|
|||
local tbot : mix m (aboveMarkBot + markFine / 2) 0.7
|
||||
|
||||
define [addTilde] : TildeShape
|
||||
ttop -- ttop
|
||||
tbot -- tbot
|
||||
ttop -- ttop
|
||||
tbot -- tbot
|
||||
leftEnd -- (markMiddle - markExtend * 1.5)
|
||||
rightEnd -- (markMiddle + markExtend * 1.5)
|
||||
hs -- ([AdviceStroke 4.5] / 2)
|
||||
hs -- ([AdviceStroke 4.5] / 2)
|
||||
|
||||
local shift : (ttop - tbot) * 1.2
|
||||
include : addTilde
|
||||
|
@ -482,7 +482,7 @@ glyph-block Mark-Above : begin
|
|||
include : StdAnchors.impl 'above' 0 2
|
||||
include : dispiro
|
||||
flat (0 - Width) aboveMarkMid [widths.center : 2 * markHalfStroke]
|
||||
curl 0 aboveMarkMid
|
||||
curl 0 aboveMarkMid
|
||||
|
||||
create-glyph 'sbRsbOverlineAbove' : glyph-proc
|
||||
set-width 0
|
||||
|
@ -810,6 +810,22 @@ glyph-block Mark-Above : begin
|
|||
include : DrawAt markMiddle yDot (fine * kdr)
|
||||
include : ApparentTranslate 0 (fine * 0.5)
|
||||
include : StdAnchors.mediumWide
|
||||
create-glyph "largeFermataAbove.\(suffix)" : glyph-proc
|
||||
set-width 0
|
||||
local fine : AdviceStroke 6.5 asciiMarkZoomX
|
||||
local arcSw : Math.min markStroke (fine * 1.25)
|
||||
local radius : Math.max (asciiMarkZoomX * markExtend - DotRadius) (fine * 1.35)
|
||||
local yDot : mix [mix aboveMarkMid aboveMarkBot asciiMarkZoomY] [mix aboveMarkMid aboveMarkTop asciiMarkZoomY] 0.375
|
||||
include : dispiro
|
||||
widths.lhs arcSw
|
||||
g4.up.start (markMiddle - radius) yDot [heading Upward]
|
||||
arcvh
|
||||
g4.right.mid markMiddle (yDot + radius)
|
||||
archv
|
||||
g4.down.end (markMiddle + radius) yDot [heading Downward]
|
||||
include : DrawAt markMiddle yDot (fine * kdr)
|
||||
include : ApparentTranslate 0 (fine * (-0.5))
|
||||
include : StdAnchors.extraWide
|
||||
create-glyph "cyrlKavykaWithDotAbove.\(suffix)" : glyph-proc
|
||||
set-width 0
|
||||
local radius : markExtend * 1.5
|
||||
|
@ -829,6 +845,7 @@ glyph-block Mark-Above : begin
|
|||
|
||||
select-variant 'candrabinduAbove' 0x310 (follow -- 'diacriticDot')
|
||||
turned 'fermataAbove' 0x352 'candrabinduAbove' markMiddle aboveMarkMid
|
||||
select-variant 'largeFermataAbove' (follow -- 'diacriticDot')
|
||||
select-variant 'cyrlKavykaWithDotAbove' null (follow -- 'diacriticDot')
|
||||
|
||||
alias 'graveToneAbove' 0x340 'graveAbove'
|
||||
|
|
|
@ -217,6 +217,7 @@ glyph-block Mark-Below : begin
|
|||
TurnAboveMarkToBelow 'downArrowHeadBelow' null 'upArrowHeadAbove'
|
||||
TurnAboveMarkToBelow 'descenderBarBelow' null 'ascenderBarAbove'
|
||||
TurnAboveMarkToBelow 'sbRsbUnderlineBelow' null 'sbRsbOverlineAbove'
|
||||
TurnAboveMarkToBelow 'largeCandrabinduBelow' null 'largeFermataAbove'
|
||||
|
||||
create-glyph 'greaterAndUpArrowheadBelow' 0x0356 : glyph-proc
|
||||
set-width 0
|
||||
|
|
|
@ -280,6 +280,7 @@ glyph-block Symbol-Math-APL : begin
|
|||
LinkAplFormForNwidWwid 'barArrowDown'
|
||||
LinkAplFormForNwidWwid 'counterArrowLeft'
|
||||
LinkAplFormForNwidWwid 'counterArrowRight'
|
||||
LinkAplFormForNwidWwid 'countersink'
|
||||
LinkAplFormForNwidWwid 'cwOpenCircleArrow'
|
||||
LinkAplFormForNwidWwid 'dashArrowUp'
|
||||
LinkAplFormForNwidWwid 'dottedCircle'
|
||||
|
@ -292,7 +293,7 @@ glyph-block Symbol-Math-APL : begin
|
|||
LinkAplFormForNwidWwid 'vBarSquare'
|
||||
LinkAplFormForNwidWwid 'zigZagArrow'
|
||||
LinkAplFormForNwidWwid 'uni21CC'
|
||||
LinkAplFormForNwidWwid 'uni2335'
|
||||
LinkAplFormForNwidWwid 'uni231D'
|
||||
LinkAplFormForNwidWwid 'uni238B'
|
||||
LinkAplFormForNwidWwid 'uni25E0'
|
||||
LinkAplFormForNwidWwid 'uni25E1'
|
||||
|
|
|
@ -14,9 +14,9 @@ glyph-block Symbol-Punctuation-Ascii-Marks : begin
|
|||
|
||||
define [MarkZoom w] : glyph-proc
|
||||
include : Ungizmo
|
||||
include : Translate (-w / 2) (-XH - AccentStackOffset)
|
||||
include : Translate (w * (-0.5)) ((-XH) - AccentStackOffset)
|
||||
include : Scale ((RightSB - SB) / (markExtend * 3))
|
||||
include : Translate (w / 2) (XH + AccentStackOffset)
|
||||
include : Translate (w * (+0.5)) ((+XH) + AccentStackOffset)
|
||||
include : Regizmo
|
||||
|
||||
create-glyph 'asciiTilde.low' : composite-proc
|
||||
|
@ -67,3 +67,6 @@ glyph-block Symbol-Punctuation-Ascii-Marks : begin
|
|||
|
||||
derive-composites 'mdfShelf' 0x2FD 'markBaseSpace' 'shelfBelow'
|
||||
derive-composites 'mdfOpenShelf' 0x2FE 'markBaseSpace' 'openShelfBelow'
|
||||
|
||||
derive-composites 'fermata' 0x1D110 'markDemoBaseSpace' 'largeFermataAbove'
|
||||
derive-composites 'lowFermata' 0x1D111 'markDemoBaseSpace' 'largeCandrabinduBelow'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue