Skip to content

Commit

Permalink
Add Bashkir Ka (U+04A0, U+04A1) (#441).
Browse files Browse the repository at this point in the history
  • Loading branch information
be5invis committed Apr 1, 2020
1 parent c2653ee commit 69df882
Show file tree
Hide file tree
Showing 9 changed files with 65 additions and 23 deletions.
1 change: 1 addition & 0 deletions changes/3.0.0-rc.6.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
* Add IEC power symbol.
* Add straight lambda (`λ`) shape, and corresponded variant selector `cv94`. Old shape is placed under `cv95` (#467).
* Add U+2423 `OPEN BOX` (``) (#469).
* Add Bashkir Ka (U+04A0, U+04A1) (#441).
87 changes: 64 additions & 23 deletions glyphs/letters-unified-basic.ptl
Original file line number Diff line number Diff line change
Expand Up @@ -1567,55 +1567,56 @@ glyph-block LetterUnified-Basic : begin
local [KBalance straightBar] : if SLAB (WIDTH / 16) : if straightBar (WIDTH / 32) 0
local [KBalanceRight straightBar] : if SLAB (-WIDTH / 32) : if straightBar (WIDTH / 32) 0
local [KBalanceRightCursive straightBar] : if SLAB (WIDTH / 16) : if straightBar (WIDTH / 32) 0
define [KLegShape top straightBar] : glyph-construction
define [KLegShape left right top straightBar _stroke] : glyph-construction
local stroke : fallback _stroke STROKE
local turn (top * 0.99)
local fine : adviceBlackness 3.5
local Ok 0
local OkSerif 0
local kshLeft : SB + [KBalance straightBar]
local kshRight : RIGHTSB + [KBalanceRight straightBar]
local kshLeft : left + [KBalance straightBar]
local kshRight : right + [KBalanceRight straightBar]

if straightBar : do
local attach (top * 0.42 - STROKE)
local attach2 (top * 0.72 + STROKE)
set Ok : ([if SLAB (0) (-4)] * OX - STROKE / 3) * (XH / top)
local attach (top * 0.42 - stroke)
local attach2 (top * 0.72 + stroke)
set Ok : ([if SLAB (0) (-4)] * OX - stroke / 3) * (XH / top)
set OkSerif : if SLAB 0 Ok
include : intersection
Rect top 0 0 UPM
dispiro
widths.rhs
widths.rhs stroke
flat (kshRight - Ok) top
curl (kshLeft + STROKE) attach [widths 0 fine]
curl (kshLeft + stroke) attach [widths 0 fine]

include : intersection
spiro-outline
corner (kshLeft + STROKE) 0
corner (kshLeft + STROKE) (attach + 1)
corner (kshLeft + stroke) 0
corner (kshLeft + stroke) (attach + 1)
corner (kshRight - Ok - 1) top
corner (kshRight - Ok) top
corner (kshRight - Ok) 0
dispiro
widths.lhs
widths.lhs stroke
flat (kshRight - Ok) 0
curl (kshLeft + STROKE) attach2
curl (kshLeft + stroke) attach2
: else : do
local attach (top * [if SLAB 0.325 0.375])
local attach2 [if SLAB [mix kshLeft kshRight 0.48] MIDDLE]
include : dispiro
g4.down.start (kshRight) top [widths.heading 0 (STROKE * [if SLAB 1.15 1.05] * (WIDTH * 2 / UPM)) DOWNWARD]
g4.down.start (kshRight) top [widths.heading 0 (stroke * [if SLAB 1.15 1.05] * (WIDTH * 2 / UPM)) DOWNWARD]
bezcontrols 0 0.2 0.5 0.65 8
g4 (kshLeft + STROKE) attach [widths 0 fine]
g4 (kshLeft + stroke) attach [widths 0 fine]
include : dispiro
widths.center
g4.up.start (kshRight - O - HALFSTROKE * HVCONTRAST) 0 [heading UPWARD]
g4.up.start (kshRight - O - stroke / 2 * HVCONTRAST) 0 [heading UPWARD]
quadcontrols 0 0.25 8
g4 attach2 (top * 0.61) [widths.center fine]

if SLAB : do
local topSerifX : kshRight - OkSerif - (STROKE * [if SLAB 1.15 1.05] * (WIDTH * 2 / UPM) / 2 - HALFSTROKE) * HVCONTRAST * [if para.isItalic 1 0] - HALFSTROKE * 0.5 * HVCONTRAST
local topSerifX : kshRight - OkSerif - (stroke * [if SLAB 1.15 1.05] * (WIDTH * 2 / UPM) / 2 - stroke / 2) * HVCONTRAST * [if para.isItalic 1 0] - stroke / 2 * 0.5 * HVCONTRAST
local bottomSerifX : kshRight - OkSerif - O * [if para.isItalic 1 0]

include : RightwardTopSerif topSerifX top (SIDEJUT + HALFSTROKE * 0.5 * HVCONTRAST)
include : RightwardTopSerif topSerifX top (SIDEJUT + stroke / 2 * 0.5 * HVCONTRAST)
include : RightwardBottomSerif bottomSerifX 0 SIDEJUT

define [KCurlyLoopAndLegShape top straightBar] : glyph-construction
Expand Down Expand Up @@ -1666,7 +1667,7 @@ glyph-block LetterUnified-Basic : begin

define [KShape straightBar] : glyph-construction
include : VBarLeft (SB + [KBalance straightBar]) 0 CAP
include : KLegShape CAP straightBar
include : KLegShape SB RIGHTSB CAP straightBar
if SLAB : begin
include : CenterTopSerif (SB + [KBalance straightBar] + HALFSTROKE * HVCONTRAST) CAP JUT
include : CenterBottomSerif (SB + [KBalance straightBar] + HALFSTROKE * HVCONTRAST) 0 JUT
Expand Down Expand Up @@ -1702,7 +1703,7 @@ glyph-block LetterUnified-Basic : begin

define [LowerKShape straightBar] : glyph-construction
include : VBarLeft (SB + [KBalance straightBar]) 0 CAP
include : KLegShape XH straightBar
include : KLegShape SB RIGHTSB XH straightBar
if SLAB : begin
include : LeftwardTopSerif (SB + [KBalance straightBar]) CAP SIDEJUT
if (!para.isItalic) : begin
Expand Down Expand Up @@ -1737,7 +1738,7 @@ glyph-block LetterUnified-Basic : begin

define [LowerKappaShape straightBar] : glyph-construction
include : VBarLeft (SB + [KBalance straightBar]) 0 XH
include : KLegShape XH straightBar
include : KLegShape SB RIGHTSB XH straightBar
if SLAB : begin
include : LeftwardTopSerif (SB + [KBalance straightBar]) XH SIDEJUT

Expand All @@ -1757,7 +1758,7 @@ glyph-block LetterUnified-Basic : begin

define [LowerCyrKaShape straightBar] : glyph-construction
include : VBarLeft (SB + [KBalance straightBar]) 0 XH
include : KLegShape XH straightBar
include : KLegShape SB RIGHTSB XH straightBar
if SLAB : begin
include : CenterBottomSerif (SB + [KBalance straightBar] + HALFSTROKE * HVCONTRAST) 0 JUT
include : CenterTopSerif (SB + [KBalance straightBar] + HALFSTROKE * HVCONTRAST) XH JUT
Expand Down Expand Up @@ -1789,9 +1790,12 @@ glyph-block LetterUnified-Basic : begin
select-variant 'cyrkaDescender' 0x49B (follow -- 'K')

define [KHookTopShape straightBar] : glyph-construction
include : KLegShape CAP straightBar
include : KLegShape SB RIGHTSB CAP straightBar
include : VBarLeft (SB + [KBalance straightBar]) 0 (CAP - HOOK - HALFSTROKE)
include : VerticalHook (SB + [KBalance straightBar] + HALFSTROKE * HVCONTRAST) (CAP - HOOK - HALFSTROKE) HOOKX (-HOOK)
if SLAB : begin
include : CenterBottomSerif (SB + [KBalance straightBar] + HALFSTROKE * HVCONTRAST) 0 JUT

sketch # Khooktop
include MarkSet.capital
include : KHookTopShape true
Expand All @@ -1803,9 +1807,13 @@ glyph-block LetterUnified-Basic : begin
select-variant 'Khooktop' 0x198 (follow -- 'K')

define [LowerKHookTopShape straightBar] : glyph-construction
include : KLegShape XH straightBar
include : KLegShape SB RIGHTSB XH straightBar
include : VBarLeft (SB + [KBalance straightBar]) 0 (CAP - HOOK - HALFSTROKE)
include : VerticalHook (SB + [KBalance straightBar] + HALFSTROKE * HVCONTRAST) (CAP - HOOK - HALFSTROKE) HOOKX (-HOOK)
if (SLAB && !para.isItalic) : begin
include : CenterBottomSerif (SB + [KBalance straightBar] + HALFSTROKE * HVCONTRAST) 0 JUT
tag-contour 'serifLB'

sketch # khooktop.straight
include MarkSet.b
include : LowerKHookTopShape true
Expand All @@ -1825,6 +1833,39 @@ glyph-block LetterUnified-Basic : begin
turned 'turnk.cursive' nothing 'k.cursive' MIDDLE (XH / 2) MarkSet.p
select-variant 'turnk' 0x29E (follow -- 'k')

define [BashkirKaShape top straightBar] : glyph-construction
local left : if SLAB ([mix SB RIGHTSB 0.35] - MVERTSTROKE / 2 * HVCONTRAST) [mix SB RIGHTSB 0.2]
local leftNB : left - [KBalance straightBar]
local barleft : mix 0 SB [if SLAB 0.25 0.375]
local sw : adviceBlackness 3

include : HBarTop barleft (STROKE * 0.1 + left) top
include : VBarLeft left 0 top sw
include : KLegShape leftNB RIGHTSB top straightBar sw
if SLAB : begin
include : CenterBottomSerif (left + HALFSTROKE * HVCONTRAST) 0 JUT
include : DownwardLeftSerif barleft top VJUT (MVERTSTROKE / HVCONTRAST)
sketch # cyrBashkirUpperKa.straight
include MarkSet.capital
include : BashkirKaShape CAP true
save 'cyrBashkirUpperKa.straight'
sketch # cyrBashkirUpperKa.curly
include MarkSet.capital
include : BashkirKaShape CAP false
save 'cyrBashkirUpperKa.curly'
sketch # cyrBashkirKa.straight
include MarkSet.e
include : BashkirKaShape XH true
save 'cyrBashkirKa.straight'
sketch # cyrBashkirKa.curly
include MarkSet.e
include : BashkirKaShape XH false
save 'cyrBashkirKa.curly'

select-variant 'cyrBashkirUpperKa' 0x4A0 (follow -- 'K')
select-variant 'cyrBashkirKa' 0x4A1 (follow -- 'K')


### B
do "B and related ============================================================================="
define [BShape top] : glyph-construction
Expand Down
Binary file modified images/charvars.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified images/languages.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified images/ligations.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified images/matrix.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified images/preview-all.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified images/stylesets.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified images/weights.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 69df882

Please sign in to comment.