Added /Yhooktop, /gha, etc.
This commit is contained in:
parent
73866134f8
commit
0e85ee5079
|
@ -35,6 +35,7 @@ define customDecompositions (
|
|||
."\u0289" "u\u0336"
|
||||
."\u0244" "U\u0336"
|
||||
."\u01E5" "g\u0336"
|
||||
."\u01BB" "2\u0336"
|
||||
|
||||
."\u0290" "z\u0322"
|
||||
."\u0256" "d\u0322"
|
||||
|
|
|
@ -137,12 +137,7 @@ define [YShape top] : glyph-construction {
|
|||
local cross [top * 0.4]
|
||||
include : halfXStrand SB top MIDDLE cross 0.1 0.4 0.28
|
||||
include : halfXStrand RIGHTSB top MIDDLE cross 0.1 0.4 0.28
|
||||
include : create-stroke
|
||||
:.start-from MIDDLE 0
|
||||
:.set-width HALFSTROKE HALFSTROKE
|
||||
:.heads-to UPWARD
|
||||
:.line-to MIDDLE [cross + HALFSTROKE]
|
||||
:.heads-to UPWARD
|
||||
include : VBar MIDDLE 0 [cross + HALFSTROKE]
|
||||
}
|
||||
create-glyph 'Y' : glyph-construction {
|
||||
set-width WIDTH
|
||||
|
@ -151,24 +146,12 @@ create-glyph 'Y' : glyph-construction {
|
|||
include : YShape CAP
|
||||
}
|
||||
|
||||
create-glyph 'K' : glyph-construction {
|
||||
set-width WIDTH
|
||||
assign-unicode 'K'
|
||||
include capitalMarks
|
||||
|
||||
define [KShape] : glyph-construction {
|
||||
local TURN [CAP * 0.95]
|
||||
local rturn [XH * 0.1]
|
||||
local right [RIGHTSB - O]
|
||||
|
||||
local fine : adviceBlackness 3.5
|
||||
|
||||
include : create-stroke
|
||||
:.start-from SB 0
|
||||
:.set-width 0 STROKE
|
||||
:.heads-to UPWARD
|
||||
:.line-to SB CAP
|
||||
:.heads-to UPWARD
|
||||
|
||||
include : create-stroke
|
||||
:.start-from RIGHTSB CAP
|
||||
:.heads-to DOWNWARD
|
||||
|
@ -184,7 +167,13 @@ create-glyph 'K' : glyph-construction {
|
|||
:.set-width HALFSTROKE HALFSTROKE
|
||||
:.curve-to [right - HALFSTROKE] [rturn + 0.2 * [XH - rturn]] MIDDLE [CAPMIDDLE + HALFSTROKE]
|
||||
:.set-width [fine / 2] [fine / 2]
|
||||
|
||||
}
|
||||
create-glyph 'K' : glyph-construction {
|
||||
set-width WIDTH
|
||||
assign-unicode 'K'
|
||||
include capitalMarks
|
||||
include : VBarLeft SB 0 CAP
|
||||
include : KShape
|
||||
}
|
||||
|
||||
### B D P R
|
||||
|
@ -246,26 +235,27 @@ create-glyph 'D' : glyph-construction {
|
|||
curl [SB - O] 0 [heading LEFTWARD]
|
||||
}
|
||||
}
|
||||
define [PShape top] : glyph-construction {
|
||||
define [PShape top _mul bp] : glyph-construction {
|
||||
local mul : fallback _mul 1.25
|
||||
local bowlTop [top * 1]
|
||||
local bowlBottom [[top - STROKE] * 0.55 - HALFSTROKE]
|
||||
local bowlBottom [[top - STROKE] * [fallback bp 0.55] - HALFSTROKE]
|
||||
|
||||
local turn : mix bowlTop bowlBottom [SMOOTHB / [SMOOTHA + SMOOTHB]]
|
||||
local turnRadius : [bowlTop - bowlBottom] * 0.45
|
||||
include : spiro {
|
||||
widths.rhs
|
||||
flat [SB * 1.25 - O] bowlTop [heading RIGHTWARD]
|
||||
flat [SB * mul - O] bowlTop [heading RIGHTWARD]
|
||||
curl [RIGHTSB - turnRadius - CORRECTION_OMIDS] bowlTop
|
||||
archv
|
||||
g4 [RIGHTSB - O] turn
|
||||
arcvh
|
||||
flat [RIGHTSB - turnRadius + CORRECTION_OMIDS] bowlBottom
|
||||
curl [SB * 1.25 - O] bowlBottom [heading LEFTWARD]
|
||||
curl [SB * mul - O] bowlBottom [heading LEFTWARD]
|
||||
}
|
||||
include : VBarLeft [SB * 1.25] 0 top
|
||||
include : VBarLeft [SB * mul] 0 top
|
||||
}
|
||||
define [RShape top] : glyph-construction {
|
||||
include : PShape top
|
||||
include : PShape top 1
|
||||
local TURN [XH * 0.1]
|
||||
local right [RIGHTSB - O]
|
||||
include : create-stroke
|
||||
|
@ -337,7 +327,7 @@ create-glyph 'O' : glyph-construction {
|
|||
assign-unicode 'O'
|
||||
include capitalMarks
|
||||
|
||||
include : smallo CAP 0 [SB - O] [RIGHTSB + O] nothing SMOOTHA SMOOTHB
|
||||
include : smallo CAP 0 SB RIGHTSB nothing SMOOTHA SMOOTHB
|
||||
}
|
||||
|
||||
create-glyph 'Q' : glyph-construction {
|
||||
|
|
|
@ -93,9 +93,9 @@ create-glyph 'g' : glyph-construction {
|
|||
local groundy : [mix DESCENDER [XH * GBARPOS] 0.7] + HALFSTROKE
|
||||
include : spiro {
|
||||
g4 [mix SB RIGHTSB 0.3] [mix XH [XH * GBARPOS - O] 0.95] [widths 0 [STROKE * 0.7]]
|
||||
alsothru [-0.6] 0.5 [widths 0 [STROKE * 0.95]]
|
||||
flat [mix SB RIGHTSB 0.425] groundy [widths 0 STROKE]
|
||||
curl [mix RIGHTSB SB 0.425] groundy
|
||||
alsothru [-1.2] 0.5 [widths HALFSTROKE HALFSTROKE]
|
||||
flat [mix SB RIGHTSB 0.435] groundy [widths 0 STROKE]
|
||||
curl [mix RIGHTSB SB 0.435] groundy
|
||||
archv 4
|
||||
g4 grightx [mix [DESCENDER + O] groundy 0.53]
|
||||
arcvh
|
||||
|
@ -103,7 +103,7 @@ create-glyph 'g' : glyph-construction {
|
|||
archv
|
||||
g4 gleftx [mix [DESCENDER + O] groundy 0.53]
|
||||
arcvh
|
||||
g4 [mix SB RIGHTSB 0.425] groundy
|
||||
g4 [mix SB RIGHTSB 0.435] groundy
|
||||
}
|
||||
start-from [RIGHTSB + 0.25 * SB] XH
|
||||
line-to [RIGHTSB + 0.25 * SB] [XH - STROKE]
|
||||
|
@ -221,9 +221,9 @@ create-glyph 'a.upright' : glyph-construction {
|
|||
dont-export
|
||||
include eMarks
|
||||
set-anchor 'trailing' BASE [RIGHTSB - markHalfStroke] 0
|
||||
local bartop [XH * BARPOS + HALFSTROKE]
|
||||
local bartop [XH * BARPOS * 1.02 + HALFSTROKE]
|
||||
local lowmiddle : mix SB [RIGHTSB - STROKE] [linreg 80 0.55 120 0.65 STROKE]
|
||||
local barsmooth : mix SB RIGHTSB 0.6
|
||||
local barsmooth : mix SB RIGHTSB 0.65
|
||||
include : spiro {
|
||||
widths.lhs
|
||||
flat RIGHTSB 0 [heading UPWARD]
|
||||
|
@ -236,7 +236,7 @@ create-glyph 'a.upright' : glyph-construction {
|
|||
flat [RIGHTSB + O] bartop [heading LEFTWARD]
|
||||
curl barsmooth bartop
|
||||
archv
|
||||
g4 [SB + O] [bartop * 0.45]
|
||||
g4 [SB + O] [bartop * 0.475]
|
||||
arcvh 16
|
||||
g4 [lowmiddle + CORRECTION_OMIDS] O
|
||||
archv
|
||||
|
|
|
@ -91,10 +91,10 @@ define aeepart : glyph-construction {
|
|||
}
|
||||
define aeapart : glyph-construction {
|
||||
|
||||
local bartop [XH * BARPOS + HALFSTROKE]
|
||||
local bartop [XH * BARPOS * 1.02 + HALFSTROKE]
|
||||
local abarRight : MIDDLE + MVERTSTROKE / 2 * CORRECTION_HX
|
||||
local lowmiddle : [mix [SB + MVERTSTROKE] [abarRight - MVERTSTROKE] 0.5] + MVERTSTROKE * globalTransform.yx
|
||||
local barsmooth : mix SB abarRight 0.6
|
||||
local barsmooth : mix SB abarRight 0.7
|
||||
|
||||
local sma : SMALLSMOOTHA * 0.6
|
||||
local smb : SMALLSMOOTHB * 0.6
|
||||
|
@ -108,14 +108,13 @@ define aeapart : glyph-construction {
|
|||
arcvh
|
||||
g4 lowmiddle O
|
||||
archv
|
||||
g4 [SB + O * 2] [mix 0 bartop [smb / [sma + smb]]]
|
||||
g4 [SB + O * 2] [mix 0 bartop 0.5]
|
||||
arcvh
|
||||
flat barsmooth bartop
|
||||
curl [abarRight - 1] bartop [heading RIGHTWARD]
|
||||
}
|
||||
}
|
||||
define oeopart : glyph-construction {
|
||||
|
||||
local abarRight : MIDDLE + MVERTSTROKE / 2 * CORRECTION_HX
|
||||
include : smallo XH 0 [SB + O] [abarRight + O] MVERTSTROKE [SMALLSMOOTHA * 0.6] [SMALLSMOOTHB * 0.6]
|
||||
}
|
||||
|
@ -414,6 +413,57 @@ create-glyph 'hwair' : glyph-construction {
|
|||
}
|
||||
}
|
||||
|
||||
create-glyph 'Gha' : glyph-construction {
|
||||
assign-unicode 0x1A2
|
||||
include capitalMarks
|
||||
local abarRight : MIDDLE + MVERTSTROKE / 2 * CORRECTION_HX
|
||||
include : smallo CAP 0 [SB + O] abarRight MVERTSTROKE [SMALLSMOOTHA * 0.6] [SMALLSMOOTHB * 0.6]
|
||||
include : VBarRight [RIGHTSB - O * 2] DESCENDER CAP MVERTSTROKE
|
||||
include : spiro {
|
||||
widths.lhs MVERTSTROKE
|
||||
flat MIDDLE [CAP - SMALLSMOOTHB * 0.6] [heading RIGHTWARD]
|
||||
curl [MIDDLE + 1] [CAP - SMALLSMOOTHB * 0.6] [heading RIGHTWARD]
|
||||
alsothru 0.5 0.15
|
||||
g4 [RIGHTSB - MVERTSTROKE * CORRECTION_HX] CAP [widths 0 MVERTSTROKE]
|
||||
}
|
||||
}
|
||||
|
||||
create-glyph 'gha' : glyph-construction {
|
||||
assign-unicode 0x1A3
|
||||
include pMarks
|
||||
local abarRight : MIDDLE + MVERTSTROKE / 2 * CORRECTION_HX
|
||||
include : smallo XH 0 [SB + O] abarRight MVERTSTROKE [SMALLSMOOTHA * 0.6] [SMALLSMOOTHB * 0.6]
|
||||
include : VBarRight [RIGHTSB - O * 2] DESCENDER XH MVERTSTROKE
|
||||
include : spiro {
|
||||
widths.lhs MVERTSTROKE
|
||||
flat MIDDLE [XH - SMALLSMOOTHB * 0.6] [heading RIGHTWARD]
|
||||
curl [MIDDLE + 1] [XH - SMALLSMOOTHB * 0.6] [heading RIGHTWARD]
|
||||
alsothru 0.5 0.15
|
||||
g4 [RIGHTSB - MVERTSTROKE * CORRECTION_HX] XH [widths 0 MVERTSTROKE]
|
||||
}
|
||||
}
|
||||
|
||||
create-glyph 'looprevesh' : glyph-construction {
|
||||
assign-unicode 0x1AA
|
||||
include ifMarks
|
||||
local fine : adviceBlackness 5
|
||||
include : spiro {
|
||||
widths.center fine
|
||||
g4 MIDDLE [CAP - fine * 1.5] [heading DOWNWARD]
|
||||
arcvh
|
||||
g4 [MIDDLE - fine * 1] [CAP - fine * 2.5] [heading LEFTWARD]
|
||||
archv
|
||||
g4 [MIDDLE - fine * 2] [CAP - fine * 1.5] [heading UPWARD]
|
||||
arcvh
|
||||
g4 [MIDDLE - fine * 1] [CAP - fine * 0.5] [heading RIGHTWARD]
|
||||
archv
|
||||
flat MIDDLE [CAP - fine * 1.5] [widths.heading HALFSTROKE HALFSTROKE DOWNWARD]
|
||||
curl MIDDLE 0 [heading DOWNWARD]
|
||||
arcvh
|
||||
g4 [MIDDLE + HOOKX] [-HOOK] [heading RIGHTWARD]
|
||||
}
|
||||
}
|
||||
|
||||
create-glyph 'scripta' : glyph-construction {
|
||||
assign-unicode 0x0251
|
||||
include eMarks
|
||||
|
@ -637,6 +687,23 @@ create-glyph 'reve' : glyph-construction {
|
|||
include : RevSmallEShape XH STROKE
|
||||
}
|
||||
|
||||
create-glyph 'Yr' : glyph-construction {
|
||||
assign-unicode 0x1A6
|
||||
include ifMarks
|
||||
local top : CAP * 0.85
|
||||
local bp 0.45
|
||||
include : PShape top 1 bp
|
||||
include : VBarLeft SB [top - 1] CAP
|
||||
|
||||
local TURN [XH * 0.1]
|
||||
local right [RIGHTSB - O]
|
||||
include : create-stroke
|
||||
:.start-from [right - HALFSTROKE] DESCENDER
|
||||
:.heads-to UPWARD
|
||||
:.set-width HALFSTROKE HALFSTROKE
|
||||
:.curve-to [right - HALFSTROKE] [mix [DESCENDER + TURN] top 0.2] MIDDLE [[top - STROKE] * bp]
|
||||
}
|
||||
|
||||
# Glottalstop
|
||||
create-glyph 'glottalstop' : glyph-construction {
|
||||
assign-unicode 0x294
|
||||
|
|
|
@ -233,6 +233,20 @@ create-glyph 'phooktop' : glyph-construction {
|
|||
include : oLeft
|
||||
include : HooktopLeftBar nothing DESCENDER
|
||||
}
|
||||
create-glyph 'Khooktop' : glyph-construction {
|
||||
assign-unicode 0x198
|
||||
include capitalMarks
|
||||
include : KShape
|
||||
include : VBarLeft SB 0 [CAP - HOOK - HALFSTROKE]
|
||||
include : VerticalHook [SB + HALFSTROKE * CORRECTION_HX] [CAP - HOOK - HALFSTROKE] HOOKX [-HOOK]
|
||||
}
|
||||
create-glyph 'khooktop' : glyph-construction {
|
||||
assign-unicode 0x199
|
||||
include bMarks
|
||||
include : SmallKShape
|
||||
include : VBarLeft SB 0 [CAP - HOOK - HALFSTROKE]
|
||||
include : VerticalHook [SB + HALFSTROKE * CORRECTION_HX] [CAP - HOOK - HALFSTROKE] HOOKX [-HOOK]
|
||||
}
|
||||
create-glyph 'scriptghooktop' : glyph-construction {
|
||||
assign-unicode 0x260
|
||||
include glyphs.scriptg AS_BASE
|
||||
|
@ -367,6 +381,47 @@ create-glyph 'whooktop' : glyph-construction {
|
|||
line-to m2 bottomStroke
|
||||
include : VerticalHook [RIGHTSB - HALFSTROKE * CORRECTION_HX] [XH - HOOK] [HOOKX * 0.65] [-HOOK + HALFSTROKE]
|
||||
}
|
||||
create-glyph 'Yhooktop' : glyph-construction {
|
||||
assign-unicode 0x1B3
|
||||
include capitalMarks
|
||||
|
||||
local cross [CAP * 0.4]
|
||||
local TURN [mix cross CAP 0.9]
|
||||
include : halfXStrand SB CAP MIDDLE cross 0.1 0.4 0.28
|
||||
|
||||
local x1 : RIGHTSB - HOOKX / 3
|
||||
local x2 : mix MIDDLE RIGHTSB 0.52
|
||||
local y1 : TURN - HOOK
|
||||
local y2 : mix cross CAP 0.3
|
||||
include : create-stroke
|
||||
:.start-from [RIGHTSB + HOOKX / 4] [CAP - STROKE]
|
||||
:.set-width 0 STROKE
|
||||
:.curve-to [linreg y1 x1 y2 x2 [CAP - STROKE]] [CAP - STROKE] x1 y1
|
||||
:.curve-to x2 y2 [MIDDLE + STROKE / 2 * CORRECTION_HX] cross
|
||||
|
||||
include : VBar MIDDLE 0 [cross + HALFSTROKE]
|
||||
}
|
||||
create-glyph 'yhooktop' : glyph-construction {
|
||||
assign-unicode 0x1B4
|
||||
include pMarks
|
||||
|
||||
local xbottom : mix SB RIGHTSB 0.28
|
||||
local turnp : XH / [XH - DESCENDER]
|
||||
local xb : mix SB RIGHTSB 0.49
|
||||
local yb : mix 0 XH [0.05 * turnp]
|
||||
|
||||
# include : xStrand xbottom DESCENDER RIGHTSB XH 0.1 0.6 0.14
|
||||
include : spiro {
|
||||
widths.center
|
||||
flat [xbottom + HALFSTROKE * CORRECTION_HX] DESCENDER [heading UPWARD]
|
||||
curl [xbottom + HALFSTROKE * CORRECTION_HX] [DESCENDER + 1] [heading UPWARD]
|
||||
alsothruthem ((0 0.05) (0.1 0.19) (0.2125 0.33) (0.44 0.6) (0.93 0.98)) important
|
||||
g2 [RIGHTSB - HOOKX / 6] [mix DESCENDER [XH - HALFSTROKE] 0.98]
|
||||
flat [RIGHTSB + HOOKX / 4 - 1] [XH - HALFSTROKE]
|
||||
curl [RIGHTSB + HOOKX / 4] [XH - HALFSTROKE]
|
||||
}
|
||||
include : halfXStrand SB XH xb yb [0.1 * turnp] 0.4 [0.14 * turnp]
|
||||
}
|
||||
# Left-tail
|
||||
create-glyph 'fltail' : glyph-construction {
|
||||
assign-unicode 0x192
|
||||
|
|
2
makefile
2
makefile
|
@ -42,6 +42,8 @@ $(OBJDIR)/.pass0-iosevkacc-bolditalic.ttf : $(FILES) | $(OBJDIR)
|
|||
|
||||
$(ABFEAT) : $(OBJDIR)/.pass0-%.ab.fea : $(OBJDIR)/.pass0-%.ttf
|
||||
-@echo Autobuild feature $@ from $<
|
||||
$(MAPS) : $(OBJDIR)/%.charmap : $(OBJDIR)/.pass0-%.ttf
|
||||
-@echo Autobuild CM $@ from $<
|
||||
$(FEATURE) : $(OBJDIR)/.pass0-%.fea : $(OBJDIR)/.pass0-%.ab.fea features/common.fea
|
||||
cat $^ > $@
|
||||
|
||||
|
|
|
@ -224,7 +224,7 @@
|
|||
];
|
||||
|
||||
var sampleSentences = [
|
||||
{lang: 'English', sample: 'Shaw, those twelve beige hooks are joined if I patch a young, gooey mouth. Bl̓ood of m̧y ḃlȯod.'},
|
||||
{lang: 'English', sample: 'Quirky spud boys can jam after zapping five worthy Polysixes.'},
|
||||
{lang: 'IPA', sample: '*ɢʷəʔ nraʔ lˁoŋ t.qʰa ʑi̪ə'},
|
||||
{lang: 'Powerline', sample: '<span style="background:black;color:white"> NORMAL </span><span style="background:#ccc;color:black;font-style:normal">\uE0B0</span><span style="background:#ccc;color:black"> <span style="font-style:normal">\uE0A0</span> master <span style="font-style:normal">\uE0B1</span> glyphs/powerline.patel </span><span style="background:#eee;color:#ccc;font-style:normal">\uE0B0</span><span style="background:#eee;color:#555"> dos <span style="font-style:normal">\uE0B3</span> utf-8 <span style="font-style:normal">\uE0B3</span> PatEL </span><span style="background:#eee;color:#ccc;font-style:normal">\uE0B2</span><span style="background:#ccc"> 2% </span><span style="background:#ccc;color:black;font-style:normal">\uE0B2</span><span style="color:white;background:black"> \uE0A1 1:1 </span>'},
|
||||
{lang: 'Bulgarian', sample: 'Я, пазачът Вальо уж бди, а скришом хапва кюфтенца зад щайгите.'},
|
||||
|
|
Loading…
Reference in New Issue
Block a user