Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Hebrew and Arabic; rework Italic #511

Merged
merged 23 commits into from
Jun 18, 2021
Merged

Add Hebrew and Arabic; rework Italic #511

merged 23 commits into from
Jun 18, 2021

Conversation

aaronbell
Copy link
Collaborator

@aaronbell aaronbell commented Jun 17, 2021

Summary of the Pull Request

Major update!

This update includes the brand new Arabic and Hebrew language coverage, along with a variety of bug fixes to the upright and italic fonts. There has also been a major overhaul of the Cascadia Code Italic lowercase to make the forms align better with our vision for the font. Enjoy :).

Supersedes #491

PR Checklist

Cascadia Code

Cascadia Code Italic

Both

Detailed Description of the Pull Request / Additional comments

  • Arabic (and Urdu) support added (design by Mohamad Dakak). See the PDF for the exciting new Arabic ligature functionality used in Cascadia Code that gives the font greatly improved readability and feel more more akin to a text typeface. Don't want all that? Don't worry, Cascadia Mono will house a normal version of Arabic.

Screen Shot 2021-06-17 at 11 31 13 AM

  • Hebrew support added (design by Liron Lavi Turkenich)

Screen Shot 2021-06-17 at 11 31 45 AM

  • Fixing a bug in the ccmp feature file and added ccmp to the feature set in the build script.
  • Deleting the (unused) liga feature file
  • Vika has reviewed and improved some forms in Cascadia Code upright.
  • /f, /l, /s, /r (and related forms) have been updated to follow more 'generic' forms. Previous versions have been moved to ss01 / salt OT features.

New default forms
Screen Shot 2021-06-16 at 11 32 46 AM

Cursive forms (ss01 / salt)
Screen Shot 2021-06-16 at 11 33 34 AM

  • Changed design of ƒ in upright to align better with the standard f. In the italic, the ƒ has been changed to follow the cursive version. When ss01 is applied, the design of the f and ƒ are swapped, and if the locl EWE language setting is applied, the 'f' swaps for a straight descender version (with cursive ƒ). Complicated, but achieves supporting everything.

Screen Shot 2021-06-16 at 11 36 27 AM

  • Entry and exit strokes across the italic lowercase have been rounded to better achieve the fun / playful design language that we intended for the italic. Other skeletons have been modified as necessary. Cyrillic has also been updated for better consistency with the new design.

Screen Shot 2021-06-16 at 11 33 05 AM

Screen Shot 2021-06-17 at 11 39 50 AM

  • Greek lowercase has been updated per feedback from Gerry Leonidas to be more cohesive (No longer a mix between a Monday and Friday font. All Friday, all the time)

old
Screen Shot 2021-06-16 at 11 38 49 AM

new
Screen Shot 2021-06-16 at 11 38 32 AM

Validation Steps Performed

All updated reviewed, hinted, and reviewed again :)

aaronbell and others added 20 commits May 25, 2021 16:37
…ances

For whatever reason glyphslib sets the familyName of the font to include the "Italic" name. I had corrected the variable font instance, but not the static instances.
Double-checked to make sure that the hinting didn't break in fixing these.
I was there. I updated it.
Still need to hint, but moving along?
- resolving more interpolation fun
- updating hints
- Fixing a bug in the ccmp feature file
- Deleting the (unused) liga feature file
- Adding ccmp to the feature set in the build script.
- /f, /l, /s, /r have been updated to follow more 'generic' forms.
- previous versions have been moved to ss01 / salt OT features.
- all related glyphs have been similarly adjusted.
Useful for when the day is <10!
Showing off the alternate style.
@aaronbell
Copy link
Collaborator Author

Good luck @DHowett

@DHowett
Copy link
Member

DHowett commented Jun 17, 2021

Good luck @DHowett

That's the most ominous pull request invitation I've ever received.

@DHowett
Copy link
Member

DHowett commented Jun 17, 2021

Vika has reviewed and improved some forms in Cascadia Code upright.

Ooh, interested in what changed here!

Monday ... Friday

I love these terms very much.

Updating build number :)
@aaronbell
Copy link
Collaborator Author

The changes were primarily made to the Bulgarian forms, and otherwise are pretty minor.

For example:
Screen_Shot_2021-06-17_at_11_48_25_AM

Screen_Shot_2021-06-17_at_11_50_34_AM

Just some slight improvements to Cyrillic rendering.

@mdtauk
Copy link

mdtauk commented Jun 17, 2021

@aaronbell Thank you soo much for taking everyone's views on board, but still keeping the fun and playful feel of the italics that give Cascadia Code soooo much character!

italics image
These look so readable and yet still with flourish

Your efforts are appreciated from this guy here...

@DHowett
Copy link
Member

DHowett commented Jun 17, 2021

One person I asked about the new italic (non-cursive) expressed a concern about the /l looking a bit un-l-like (in isolation). I wonder if it's related to it having a longer leftward stroke than h and b and letters with ascenders... or having one at all? But at the same time, I know that on an l it's not an ascender and should not be given the same treatment.

I find that I'm always thrown off when I see the l in Source Code Pro:

image

Something about that doesn't feel right to me, and I'm a bit reminded of it with our new one. I dunno. All in my head?

@aaronbell
Copy link
Collaborator Author

Hmmm. Possibly? That particular glyph gave me some struggles since it needs to be a bit wider than the entry strokes on the /b and /h (to fill space), but yeah, being too long looks weird (particularly in the lightest). Pulling it back a little would look a little like this:

Screen Shot 2021-06-17 at 3 26 16 PM

@DHowett
Copy link
Member

DHowett commented Jun 17, 2021

I do think I like that more :) (I'll also ask the opinion of the other person who had a comment :))

Yeah -- it seems a hard one to get right!

@DHowett
Copy link
Member

DHowett commented Jun 18, 2021

@aaronbell I'm ready to merge this if you are!

@aaronbell
Copy link
Collaborator Author

🚀🚀🚀🚀🚀

@DHowett DHowett changed the title Adding Hebrew, Arabic. Updates to Italic Add Hebrew and Arabic; rework Italic Jun 18, 2021
@DHowett DHowett merged commit fb0bce6 into microsoft:main Jun 18, 2021
@DHowett
Copy link
Member

DHowett commented Jun 18, 2021

you rock!

aaronbell added a commit to aaronbell/cascadia-code that referenced this pull request Jun 21, 2021
commit e9aa335
Author: Sayed Arif Uddin Pallab <47639147+sayedarifuddin@users.noreply.github.com>
Date:   Sat Jun 19 00:42:28 2021 +0600

    Replaced Hypen (-) with Dash (–) to maintain symmetric view (microsoft#385)

    Co-authored-by: Aaron <aaronbell@users.noreply.github.com>

commit fb0bce6
Author: Aaron <aaronbell@users.noreply.github.com>
Date:   Fri Jun 18 10:37:03 2021 -0700

    Add Hebrew and Arabic; rework Italic (microsoft#511)

    Major update!

    This update includes the brand new Arabic and Hebrew language coverage,
    along with a variety of bug fixes to the upright and italic fonts. There
    has also been a major overhaul of the Cascadia Code Italic lowercase to
    make the forms align better with our vision for the font. Enjoy :).

    Supersedes microsoft#491

    Cascadia Code
    * [x] Closes microsoft#84 - Arabic language support added!
    * [x] Closes microsoft#465 - Hebrew language support added!
    * [x] Closes microsoft#499 - Adjusted base mark positions / set others to be
      ignored in propagateAnchors

    Cascadia Code Italic
    * [x] Closes microsoft#470 - Adjusted slant on cursive forms to feel a bit better
    * [x] Closes microsoft#468 - Moved cursive forms to `ss01` / `salt` feature
    * [x] Closes microsoft#507 - Changed bar / broken bar to be upright for better
      clarity. All ligature forms adjusted.

    Both
    * [x] Closes microsoft#494 - Adjusted `ƒ` in both upright and italic

    - Arabic (and Urdu) support added (design by Mohamad Dakak). See [the
      Arabic features PDF] for the exciting new Arabic ligature
      functionality used in Cascadia Code that gives the font greatly
      improved readability and feel more more akin to a text typeface. Don't
      want all that? Don't worry, Cascadia Mono will house a normal version
      of Arabic.

    - Hebrew support added (design by Liron Lavi Turkenich)
    - Fixing a bug in the ccmp feature file and added ccmp to the feature
      set in the build script.
    - Deleting the (unused) liga feature file
    - Vika has reviewed and improved some forms in Cascadia Code upright.
    - /f, /l, /s, /r (and related forms) have been updated to follow more
      'generic' forms. Previous versions have been moved to ss01 / salt OT
      features.

    - Changed design of `ƒ` in upright to align better with the standard
      `f`. In the italic, the `ƒ` has been changed to follow the cursive
      version. When `ss01` is applied, the design of the `f` and `ƒ` are
      swapped, and if the `locl` EWE language setting is applied, the 'f'
      swaps for a straight descender version (with cursive `ƒ`).
      Complicated, but achieves supporting everything.

    - Entry and exit strokes across the italic lowercase have been rounded
      to better achieve the fun / playful design language that we intended
      for the italic. Other skeletons have been modified as necessary.
      Cyrillic has also been updated for better consistency with the new
      design.

    - Greek lowercase has been updated per feedback from Gerry Leonidas to
      be more cohesive (No longer a mix between a Monday and Friday font.
      All Friday, all the time)

    ## Validation Steps Performed
    All updated reviewed, hinted, and reviewed again :)

    [the Arabic features PDF]: https://github.com/microsoft/cascadia-code/blob/main/doc/Arabic_KeyFeatures.pdf
aaronbell added a commit to aaronbell/cascadia-code that referenced this pull request Jun 23, 2021
commit e9aa335
Author: Sayed Arif Uddin Pallab <47639147+sayedarifuddin@users.noreply.github.com>
Date:   Sat Jun 19 00:42:28 2021 +0600

    Replaced Hypen (-) with Dash (–) to maintain symmetric view (microsoft#385)

    Co-authored-by: Aaron <aaronbell@users.noreply.github.com>

commit fb0bce6
Author: Aaron <aaronbell@users.noreply.github.com>
Date:   Fri Jun 18 10:37:03 2021 -0700

    Add Hebrew and Arabic; rework Italic (microsoft#511)

    Major update!

    This update includes the brand new Arabic and Hebrew language coverage,
    along with a variety of bug fixes to the upright and italic fonts. There
    has also been a major overhaul of the Cascadia Code Italic lowercase to
    make the forms align better with our vision for the font. Enjoy :).

    Supersedes microsoft#491

    Cascadia Code
    * [x] Closes microsoft#84 - Arabic language support added!
    * [x] Closes microsoft#465 - Hebrew language support added!
    * [x] Closes microsoft#499 - Adjusted base mark positions / set others to be
      ignored in propagateAnchors

    Cascadia Code Italic
    * [x] Closes microsoft#470 - Adjusted slant on cursive forms to feel a bit better
    * [x] Closes microsoft#468 - Moved cursive forms to `ss01` / `salt` feature
    * [x] Closes microsoft#507 - Changed bar / broken bar to be upright for better
      clarity. All ligature forms adjusted.

    Both
    * [x] Closes microsoft#494 - Adjusted `ƒ` in both upright and italic

    - Arabic (and Urdu) support added (design by Mohamad Dakak). See [the
      Arabic features PDF] for the exciting new Arabic ligature
      functionality used in Cascadia Code that gives the font greatly
      improved readability and feel more more akin to a text typeface. Don't
      want all that? Don't worry, Cascadia Mono will house a normal version
      of Arabic.

    - Hebrew support added (design by Liron Lavi Turkenich)
    - Fixing a bug in the ccmp feature file and added ccmp to the feature
      set in the build script.
    - Deleting the (unused) liga feature file
    - Vika has reviewed and improved some forms in Cascadia Code upright.
    - /f, /l, /s, /r (and related forms) have been updated to follow more
      'generic' forms. Previous versions have been moved to ss01 / salt OT
      features.

    - Changed design of `ƒ` in upright to align better with the standard
      `f`. In the italic, the `ƒ` has been changed to follow the cursive
      version. When `ss01` is applied, the design of the `f` and `ƒ` are
      swapped, and if the `locl` EWE language setting is applied, the 'f'
      swaps for a straight descender version (with cursive `ƒ`).
      Complicated, but achieves supporting everything.

    - Entry and exit strokes across the italic lowercase have been rounded
      to better achieve the fun / playful design language that we intended
      for the italic. Other skeletons have been modified as necessary.
      Cyrillic has also been updated for better consistency with the new
      design.

    - Greek lowercase has been updated per feedback from Gerry Leonidas to
      be more cohesive (No longer a mix between a Monday and Friday font.
      All Friday, all the time)

    ## Validation Steps Performed
    All updated reviewed, hinted, and reviewed again :)

    [the Arabic features PDF]: https://github.com/microsoft/cascadia-code/blob/main/doc/Arabic_KeyFeatures.pdf
aaronbell added a commit to aaronbell/cascadia-code that referenced this pull request Jun 23, 2021
Major update!

This update includes the brand new Arabic and Hebrew language coverage,
along with a variety of bug fixes to the upright and italic fonts. There
has also been a major overhaul of the Cascadia Code Italic lowercase to
make the forms align better with our vision for the font. Enjoy :).

Supersedes microsoft#491

Cascadia Code
* [x] Closes microsoft#84 - Arabic language support added!
* [x] Closes microsoft#465 - Hebrew language support added!
* [x] Closes microsoft#499 - Adjusted base mark positions / set others to be
  ignored in propagateAnchors

Cascadia Code Italic
* [x] Closes microsoft#470 - Adjusted slant on cursive forms to feel a bit better
* [x] Closes microsoft#468 - Moved cursive forms to `ss01` / `salt` feature
* [x] Closes microsoft#507 - Changed bar / broken bar to be upright for better
  clarity. All ligature forms adjusted.

Both
* [x] Closes microsoft#494 - Adjusted `ƒ` in both upright and italic

- Arabic (and Urdu) support added (design by Mohamad Dakak). See [the
  Arabic features PDF] for the exciting new Arabic ligature
  functionality used in Cascadia Code that gives the font greatly
  improved readability and feel more more akin to a text typeface. Don't
  want all that? Don't worry, Cascadia Mono will house a normal version
  of Arabic.

- Hebrew support added (design by Liron Lavi Turkenich)
- Fixing a bug in the ccmp feature file and added ccmp to the feature
  set in the build script.
- Deleting the (unused) liga feature file
- Vika has reviewed and improved some forms in Cascadia Code upright.
- /f, /l, /s, /r (and related forms) have been updated to follow more
  'generic' forms. Previous versions have been moved to ss01 / salt OT
  features.

- Changed design of `ƒ` in upright to align better with the standard
  `f`. In the italic, the `ƒ` has been changed to follow the cursive
  version. When `ss01` is applied, the design of the `f` and `ƒ` are
  swapped, and if the `locl` EWE language setting is applied, the 'f'
  swaps for a straight descender version (with cursive `ƒ`).
  Complicated, but achieves supporting everything.

- Entry and exit strokes across the italic lowercase have been rounded
  to better achieve the fun / playful design language that we intended
  for the italic. Other skeletons have been modified as necessary.
  Cyrillic has also been updated for better consistency with the new
  design.

- Greek lowercase has been updated per feedback from Gerry Leonidas to
  be more cohesive (No longer a mix between a Monday and Friday font.
  All Friday, all the time)

All updated reviewed, hinted, and reviewed again :)

[the Arabic features PDF]: https://github.com/microsoft/cascadia-code/blob/main/doc/Arabic_KeyFeatures.pdf
@aaronbell
Copy link
Collaborator Author

@DHowett Was wondering what the plan is to release this update :). I'm looking forward to folks being able to use the Arabic / Hebrew!

@DHowett
Copy link
Member

DHowett commented Jun 24, 2021

Now that we're no longer holding back communication (and release notes and stuff) for the recent announcements, I'm hoping to have an update out shortly.
It's only harmed by the fact that Terminal may have to update as well. Ghhhhh

@aaronbell
Copy link
Collaborator Author

aaronbell commented Jun 24, 2021

'may' :)

Look forward to it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment