Skip to content

Commit

Permalink
Spooky October Bugfix (#587)
Browse files Browse the repository at this point in the history
This is a fairly comprehensive (and spooky!) 🐛💀 update resolving many
open issues.

### Arabic bugfixes
- [x] Closes #532 👻 - Additional positional variants added
- [x] Closes #535 🍂 - Corrected hamza form
- [x] Closes #540 🎃 - Dot arrangement corrected
- [x] Closes #541 🧹 - Was due to the use of anchors on those glyphs.
  These have been removed so the glyph can render as spacing.
- [x] Closes #542 🌕 - This was partly due to a [bug in Harfbuzz]. It
  has been resolved both on the font side (through a different
  implementation) and in Harfbuzz. 
- [x] Closes #549 🦸‍♀️ - Design corrected
- [x] Closes #555 💀 - All letter glyphs removed from Arabic
  Presentation form unicode slots to avoid situations where the glyphs
  are not behaving as expected.
- [x] Related to #543 - uni0615 removed as Cascadia Arabic not intended
  to support Quranic

### Other bug fixes
- [x] Closes #488 🔪 - Finally made the www ligature have the proper
  number of `w`s. 
- [x] Closes #436 🧟‍♀️ - Extended length of Powerline 'caps' to
  avoid situations where rounding can prevent overlap. This may cause
  problems if the caps are used next to one another, but that seems an
  unlikely scenario given what I've reviewed of Powerline styles. 
- [x] Closes #521 🤖 - enlarged the size of the grave character to make
  it more recognizable / legible in code. 
- [x] Closes #524 ☠️ - Added some more differentiation in stroke, and
  also created more space using hinting. 
- [x] Closes #525 🧙‍♂️ - tweaked the braces to be more twisty and
  create better differentiation from the parens. 
- [x] Closes #529 🧛‍♀️ - Changed year :P
- [x] Closes #546 👹 - ij no longer masquerading as a mark. 
- [x] Closes #563 🧟‍♂️ - corrected `locl` feature for proper
  Serbian rendering
- [x] Closes #571 🦹‍♀️ - corrected overshoot
- [x] Closes #572 🕷 - ratio symbol added
- [x] Closes #577 🍁 - shifted heights of box drawing lines to better
  align with block glyphs. Will reduce risk of non-joining forms under
  certain conditions. 

[bug in harfbuzz]: harfbuzz/harfbuzz#3069 (comment)
  • Loading branch information
aaronbell committed Oct 29, 2021
1 parent 2d82594 commit 8881170
Show file tree
Hide file tree
Showing 1,512 changed files with 14,742 additions and 8,554 deletions.
6 changes: 3 additions & 3 deletions build.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@
import vttLib.transfer
from vttmisc import tsi1, tsic

VERSION_YEAR_MONTH = 2108
VERSION_DAY = 26
VERSION_YEAR_MONTH = 2110
VERSION_DAY = 15
OUTPUT_DIR = Path("build")
OUTPUT_OTF_DIR = OUTPUT_DIR / "otf"
OUTPUT_TTF_DIR = OUTPUT_DIR / "ttf"
Expand Down Expand Up @@ -241,6 +241,7 @@ def compile_variable_and_save(
font_vtt = fontTools.ttLib.TTFont(ITALIC_VTT_DATA_FILE)
else:
font_vtt = fontTools.ttLib.TTFont(VTT_DATA_FILE)


for table in ["TSI0", "TSI1", "TSI2", "TSI3", "TSI5", "TSIC", "maxp"]:
varFont[table] = fontTools.ttLib.newTable(table)
Expand All @@ -260,7 +261,6 @@ def compile_variable_and_save(
# last minute manual corrections to set things correctly
# set two flags to enable proper rendering (one for overlaps in Mac, the other for windows hinting)
# Helping mac office generage the postscript name correctly for variable fonts when an italic is present

set_overlap_flag(varFont)
varFont["head"].flags = 0x000b

Expand Down
8 changes: 4 additions & 4 deletions sources/CascadiaCode-Bold.ufo/fontinfo.plist
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<key>capHeight</key>
<integer>1420</integer>
<key>copyright</key>
<string>© 2020 Microsoft Corporation. All Rights Reserved.</string>
<string>© 2021 Microsoft Corporation. All Rights Reserved.</string>
<key>descender</key>
<integer>-480</integer>
<key>familyName</key>
Expand All @@ -32,7 +32,7 @@
<key>x</key>
<integer>886</integer>
<key>y</key>
<integer>-20</integer>
<integer>-1040</integer>
</dict>
<dict>
<key>angle</key>
Expand Down Expand Up @@ -158,7 +158,7 @@
<key>angle</key>
<integer>0</integer>
<key>x</key>
<integer>958</integer>
<integer>-327</integer>
<key>y</key>
<integer>2226</integer>
</dict>
Expand All @@ -184,7 +184,7 @@
</dict>
<dict>
<key>angle</key>
<integer>0</integer>
<integer>180</integer>
<key>name</key>
<string> [locked]</string>
<key>x</key>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="allah-ar" format="2">
<anchor x="1789" y="-141" name="bottom_1"/>
<anchor x="1290" y="-141" name="bottom_2"/>
<anchor x="449" y="-141" name="bottom_3"/>
<anchor x="1779" y="1310" name="top_1"/>
<anchor x="1280" y="1310" name="top_2"/>
<anchor x="582" y="1270" name="top_3"/>
<outline>
<contour>
<point x="979" y="-9" type="curve" smooth="yes"/>
<point x="1115" y="-9"/>
<point x="1209" y="41"/>
<point x="1235" y="162" type="curve"/>
<point x="1316" y="162" type="line"/>
<point x="1334" y="324" type="line"/>
<point x="1237" y="248" type="line"/>
<point x="1265" y="52"/>
<point x="1362" y="-10"/>
<point x="1552" y="-10" type="curve" smooth="yes"/>
<point x="1805" y="-10"/>
<point x="1941" y="105"/>
<point x="1931" y="437" type="curve" smooth="yes"/>
<point x="1908" y="1196" type="line"/>
<point x="1634" y="1196" type="line"/>
<point x="1661" y="470" type="line" smooth="yes"/>
<point x="1666" y="329"/>
<point x="1651" y="285"/>
<point x="1544" y="285" type="curve" smooth="yes"/>
<point x="1456" y="285"/>
<point x="1424" y="314"/>
<point x="1421" y="439" type="curve" smooth="yes"/>
<point x="1404" y="1197" type="line"/>
<point x="1130" y="1197" type="line"/>
<point x="1153" y="430" type="line" smooth="yes"/>
<point x="1157" y="309"/>
<point x="1108" y="285"/>
<point x="1022" y="285" type="curve" smooth="yes"/>
<point x="943" y="285"/>
<point x="912" y="307"/>
<point x="911" y="399" type="curve" smooth="yes"/>
<point x="907" y="997" type="line"/>
<point x="661" y="997" type="line"/>
<point x="671" y="286" type="line" smooth="yes"/>
<point x="674" y="39"/>
<point x="812" y="-9"/>
</contour>
<contour>
<point x="449" y="137" type="curve" smooth="yes"/>
<point x="564" y="137"/>
<point x="617" y="157"/>
<point x="647" y="222" type="curve"/>
<point x="719" y="222" type="line"/>
<point x="709" y="435" type="line"/>
<point x="640" y="427"/>
<point x="516" y="419"/>
<point x="448" y="419" type="curve" smooth="yes"/>
<point x="320" y="419"/>
<point x="279" y="431"/>
<point x="279" y="485" type="curve" smooth="yes"/>
<point x="279" y="550"/>
<point x="351" y="583"/>
<point x="735" y="644" type="curve"/>
<point x="718" y="901" type="line"/>
<point x="262" y="803"/>
<point x="50" y="695"/>
<point x="50" y="456" type="curve" smooth="yes"/>
<point x="50" y="232"/>
<point x="171" y="137"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="braceleft_bar.liga" format="2">
<outline>
<contour>
<point x="890" y="-214" type="curve" smooth="yes"/>
<point x="1022" y="-214"/>
<point x="1104" y="-206"/>
<point x="1178" y="-194" type="curve"/>
<point x="1154" y="47" type="line"/>
<point x="1079" y="41"/>
<point x="1007" y="37"/>
<point x="950" y="37" type="curve" smooth="yes"/>
<point x="844" y="37"/>
<point x="765" y="106"/>
<point x="775" y="237" type="curve" smooth="yes"/>
<point x="781" y="315"/>
<point x="821" y="397"/>
<point x="821" y="488" type="curve" smooth="yes"/>
<point x="821" y="608"/>
<point x="709" y="682"/>
<point x="519" y="685" type="curve"/>
<point x="519" y="727" type="line"/>
<point x="709" y="730"/>
<point x="821" y="807"/>
<point x="821" y="942" type="curve" smooth="yes"/>
<point x="821" y="1030"/>
<point x="785" y="1114"/>
<point x="775" y="1193" type="curve" smooth="yes"/>
<point x="760" y="1313"/>
<point x="845" y="1375"/>
<point x="950" y="1375" type="curve" smooth="yes"/>
<point x="1007" y="1375"/>
<point x="1079" y="1371"/>
<point x="1154" y="1365" type="curve"/>
<point x="1178" y="1606" type="line"/>
<point x="1104" y="1618"/>
<point x="1022" y="1626"/>
<point x="890" y="1626" type="curve" smooth="yes"/>
<point x="646" y="1626"/>
<point x="457" y="1495"/>
<point x="498" y="1264" type="curve" smooth="yes"/>
<point x="514" y="1173"/>
<point x="550" y="1086"/>
<point x="550" y="985" type="curve" smooth="yes"/>
<point x="550" y="883"/>
<point x="425" y="832"/>
<point x="223" y="832" type="curve"/>
<point x="223" y="580" type="line"/>
<point x="426" y="580"/>
<point x="550" y="538"/>
<point x="550" y="445" type="curve" smooth="yes"/>
<point x="550" y="347"/>
<point x="513" y="257"/>
<point x="498" y="166" type="curve" smooth="yes"/>
<point x="457" y="-74"/>
<point x="646" y="-214"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="braceright" format="2">
<outline>
<contour>
<point x="386" y="-214" type="curve" smooth="yes"/>
<point x="603" y="-214"/>
<point x="768" y="-78"/>
<point x="728" y="156" type="curve" smooth="yes"/>
<point x="712" y="251"/>
<point x="646" y="344"/>
<point x="646" y="445" type="curve" smooth="yes"/>
<point x="646" y="538"/>
<point x="770" y="580"/>
<point x="973" y="580" type="curve"/>
<point x="973" y="832" type="line"/>
<point x="771" y="832"/>
<point x="646" y="883"/>
<point x="646" y="985" type="curve" smooth="yes"/>
<point x="646" y="1090"/>
<point x="711" y="1179"/>
<point x="728" y="1274" type="curve" smooth="yes"/>
<point x="768" y="1499"/>
<point x="603" y="1626"/>
<point x="386" y="1626" type="curve" smooth="yes"/>
<point x="300" y="1626"/>
<point x="247" y="1618"/>
<point x="199" y="1606" type="curve"/>
<point x="223" y="1365" type="line"/>
<point x="261" y="1371"/>
<point x="297" y="1375"/>
<point x="326" y="1375" type="curve" smooth="yes"/>
<point x="407" y="1375"/>
<point x="479" y="1315"/>
<point x="451" y="1203" type="curve" smooth="yes"/>
<point x="430" y="1119"/>
<point x="375" y="1033"/>
<point x="375" y="942" type="curve" smooth="yes"/>
<point x="375" y="807"/>
<point x="487" y="730"/>
<point x="677" y="727" type="curve"/>
<point x="677" y="685" type="line"/>
<point x="487" y="682"/>
<point x="375" y="608"/>
<point x="375" y="488" type="curve" smooth="yes"/>
<point x="375" y="393"/>
<point x="434" y="310"/>
<point x="451" y="227" type="curve" smooth="yes"/>
<point x="476" y="103"/>
<point x="407" y="37"/>
<point x="326" y="37" type="curve" smooth="yes"/>
<point x="297" y="37"/>
<point x="261" y="41"/>
<point x="223" y="47" type="curve"/>
<point x="199" y="-194" type="line"/>
<point x="247" y="-206"/>
<point x="300" y="-214"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="braceright_numbersign.liga" format="2">
<outline>
<contour>
<point x="413" y="-214" type="curve" smooth="yes"/>
<point x="630" y="-214"/>
<point x="795" y="-78"/>
<point x="755" y="156" type="curve" smooth="yes"/>
<point x="739" y="251"/>
<point x="673" y="344"/>
<point x="673" y="445" type="curve" smooth="yes"/>
<point x="673" y="579"/>
<point x="797" y="640"/>
<point x="1000" y="640" type="curve"/>
<point x="1000" y="772" type="line"/>
<point x="798" y="772"/>
<point x="673" y="843"/>
<point x="673" y="985" type="curve" smooth="yes"/>
<point x="673" y="1090"/>
<point x="738" y="1179"/>
<point x="755" y="1274" type="curve" smooth="yes"/>
<point x="795" y="1499"/>
<point x="630" y="1626"/>
<point x="413" y="1626" type="curve" smooth="yes"/>
<point x="327" y="1626"/>
<point x="274" y="1618"/>
<point x="226" y="1606" type="curve"/>
<point x="250" y="1365" type="line"/>
<point x="288" y="1371"/>
<point x="324" y="1375"/>
<point x="353" y="1375" type="curve" smooth="yes"/>
<point x="434" y="1375"/>
<point x="506" y="1315"/>
<point x="478" y="1203" type="curve" smooth="yes"/>
<point x="457" y="1119"/>
<point x="402" y="1033"/>
<point x="402" y="942" type="curve" smooth="yes"/>
<point x="402" y="807"/>
<point x="514" y="730"/>
<point x="704" y="727" type="curve"/>
<point x="704" y="685" type="line"/>
<point x="514" y="682"/>
<point x="402" y="608"/>
<point x="402" y="488" type="curve" smooth="yes"/>
<point x="402" y="393"/>
<point x="461" y="310"/>
<point x="478" y="227" type="curve" smooth="yes"/>
<point x="503" y="103"/>
<point x="434" y="37"/>
<point x="353" y="37" type="curve" smooth="yes"/>
<point x="324" y="37"/>
<point x="288" y="41"/>
<point x="250" y="47" type="curve"/>
<point x="226" y="-194" type="line"/>
<point x="274" y="-206"/>
<point x="327" y="-214"/>
</contour>
</outline>
</glyph>
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>allah-ar</key>
<string>allah-ar.glif</string>
<key>braceleft_bar.liga</key>
<string>braceleft_bar.liga.glif</string>
<key>braceright</key>
<string>braceright.glif</string>
<key>braceright_numbersign.liga</key>
<string>braceright_numbersign.liga.glif</string>
<key>numbersign_braceleft.liga</key>
<string>numbersign_braceleft.liga.glif</string>
</dict>
</plist>
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<?xml version='1.0' encoding='UTF-8'?>
<glyph name="numbersign_braceleft.liga" format="2">
<outline>
<contour>
<point x="2032" y="-214" type="curve" smooth="yes"/>
<point x="2118" y="-214"/>
<point x="2171" y="-206"/>
<point x="2219" y="-194" type="curve"/>
<point x="2195" y="47" type="line"/>
<point x="2157" y="41"/>
<point x="2121" y="37"/>
<point x="2092" y="37" type="curve" smooth="yes"/>
<point x="2011" y="37"/>
<point x="1942" y="103"/>
<point x="1967" y="227" type="curve" smooth="yes"/>
<point x="1984" y="310"/>
<point x="2043" y="393"/>
<point x="2043" y="488" type="curve" smooth="yes"/>
<point x="2043" y="608"/>
<point x="1931" y="682"/>
<point x="1741" y="685" type="curve"/>
<point x="1741" y="727" type="line"/>
<point x="1931" y="730"/>
<point x="2043" y="807"/>
<point x="2043" y="942" type="curve" smooth="yes"/>
<point x="2043" y="1033"/>
<point x="1988" y="1119"/>
<point x="1967" y="1203" type="curve" smooth="yes"/>
<point x="1939" y="1315"/>
<point x="2011" y="1375"/>
<point x="2092" y="1375" type="curve" smooth="yes"/>
<point x="2121" y="1375"/>
<point x="2157" y="1371"/>
<point x="2195" y="1365" type="curve"/>
<point x="2219" y="1606" type="line"/>
<point x="2171" y="1618"/>
<point x="2118" y="1626"/>
<point x="2032" y="1626" type="curve" smooth="yes"/>
<point x="1815" y="1626"/>
<point x="1650" y="1499"/>
<point x="1690" y="1274" type="curve" smooth="yes"/>
<point x="1707" y="1179"/>
<point x="1772" y="1090"/>
<point x="1772" y="985" type="curve" smooth="yes"/>
<point x="1772" y="843"/>
<point x="1647" y="772"/>
<point x="1445" y="772" type="curve"/>
<point x="1445" y="640" type="line"/>
<point x="1648" y="640"/>
<point x="1772" y="579"/>
<point x="1772" y="445" type="curve" smooth="yes"/>
<point x="1772" y="344"/>
<point x="1706" y="251"/>
<point x="1690" y="156" type="curve" smooth="yes"/>
<point x="1650" y="-78"/>
<point x="1815" y="-214"/>
</contour>
</outline>
</glyph>
Loading

1 comment on commit 8881170

@Matojeje
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cute! I love the spooky theming of this commit

Please sign in to comment.