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

Ḵ, Ḻ, Ṉ, Ṯ, ḵ, ḻ, ṉ have a macron below not an underline #415

Closed
moyogo opened this issue Feb 14, 2021 · 2 comments · Fixed by #410
Closed

Ḵ, Ḻ, Ṉ, Ṯ, ḵ, ḻ, ṉ have a macron below not an underline #415

moyogo opened this issue Feb 14, 2021 · 2 comments · Fixed by #410

Comments

@moyogo
Copy link

moyogo commented Feb 14, 2021

Environment

Cascadia Code version number: 2102.03
Application (with version) used to display text: any
OS platform and version: any
Screen resolution (i.e. 220dpi):  any

Steps to reproduce

Use Ḵ, Ḻ, Ṉ, Ṯ, ḵ, ḻ, ṉ in any sequence like ḴḺṈṮḵḻṉ.

Expected behavior

The macron below should not be as wide as the advance width.
It should be like the macron above in ĀĒĪŌṒṐŪȲӢӮ āēīōṓṑūȳӣӯ.

Screenshot 2021-02-14 at 23 12 01

Actual behavior

The macron below is as wide as the advance width in each, causing it to connect when any of these is repeated or next to another of that set.

Screenshot 2021-02-14 at 23 09 36

The Glyphs.app glyph names of those glyphs come from the Unicode names of the characters for example Ḵ, 1E34, is
LATIN CAPITAL LETTER K WITH LINE BELOW. But their canonical decomposition uses 0331 COMBINING MACRON BELOW instead of 0332 COMBINING LOW LINE, for example 1E34 is canonically equivalent to ≡ 004B 0331. The Unicode charts for the Latin Extended Additional Block has the note “In this block the names "WITH LINE BELOW" refer to a macron below the letter.”

0332 COMBINING LOW LINE has the following note in the Unicode charts for the Combining Diachritics Block:

= underline, underscore
• connects on left and right

0332 COMBINING LOW LINE "connects on left and right" but 0331 COMBINING MACRON BELOW doesn't. Neither should the macron below in those glyphs.

In practice, the macron below or the macron above can have various widths depending on what letter they are on (narrower on the i, wider on the m), but this is less common and is even less necessary with monospace fonts.

@aaronbell
Copy link
Collaborator

Thanks for the feedback, as always.

I actually originally had used standard macron widths for these, but decided to change it for the sake of Líl̓wat.

Líl̓wat has a character t̲s̲ with an overlapping bottom line. In conducting my research on these various Salishan scripts, I often found that the codepoints used in digital texts are inconsistent—sometimes one sometimes another (particularly in the case of commaabovecomb and commarightabovecomb).

So while the sample I found seemed to indicate use of lowlinecomb, I was concerned that we could end up in a situation where a different glyph, such as macronbelow (which is common in other Salishan scripts) could be used by accident, causing poor rendering.

As such, it made sense to set both lowlinecomb and macronbelowcomb to be fullwidth, and overlapping. Having a slightly longer macronbelow is not that problematic, and it is unlikely that two characters with such an accent will ever be next to one another in text other than Líl̓wat, so it felt like an acceptable compromise to ensure quality rendering for Líl̓wat.

With your feedback, I thought I'd go back and take a second look. In examining the keyboard layouts provided for St̓át̓imcets / Líl̓wat, it appears that and are provided as stand alone keys including both the base letter and lowlinecomb mark. A combined form is also included in the pdf, but not the actual key map. This same keyboard layout is provided in multiple locations and linked to from the Líl̓wat Nation site. Based on this, I feel more confident that there is little risk of the wrong codepoint being used here. I'll look into adjusting the macron below to be a more standard width.

@moyogo
Copy link
Author

moyogo commented Feb 16, 2021

Technically, there's also 035F COMBINING DOUBLE MACRON BELOW that could be used to have t͟s with a double macron that doesn't connect left and right. But it doesn't seem to be used in St̓át̓imcets / Líl̓wat data.

DHowett pushed a commit that referenced this issue Feb 25, 2021
A small set of fixes that resolves a couple of new bugs introduced in the latest version, plus other fixes I have been working on. 

## PR Checklist
* [x] Closes #406 - updated anchor type to lock with the other equals-related ligatures
* [x] Closes #408 - corrected component used for glyph to align with Unicode
* [x] Closes #412 - updated locl features removing iacute_j ligature and Catalan substitution
* [x] Closes #414 - increased overlaps of middle glyph for arrow ligatures
* [x] Closes #415 - reduces width of macronbelow
* [x] Closes #416 - rolls back name ID 4 modification as JetBrains cannot process it correctly
* [x] Closes #428 - rolls back variation of the underline to prevent MVAR table generation

## Detailed Description of the Pull Request / Additional comments

Full changelist:
- Repositioned tilde in related ligatures. Previously it was higher than the standard one.
- Added missing vietnamese anchors on acute and grave (futureproofing). 
- Corrected / made consistent greater & less positioning in </> and <$> related ligatures.
- Otherwise reviewed hinting
DHowett added a commit to microsoft/terminal that referenced this issue Feb 25, 2021
This update fixes some issues in Cascadia Code's February update:

microsoft/cascadia-code#406 - updated anchor type to lock with the other equals-related ligatures
microsoft/cascadia-code#408 - corrected component used for glyph to align with Unicode
microsoft/cascadia-code#412 - updated locl features removing iacute_j ligature and Catalan substitution
microsoft/cascadia-code#414 - increased overlaps of middle glyph for arrow ligatures
microsoft/cascadia-code#415 - reduces width of macronbelow
microsoft/cascadia-code#416 - rolls back name ID 4 modification as JetBrains cannot process it correctly
microsoft/cascadia-code#428 - rolls back variation of the underline to prevent MVAR table generation

Full changelist:
* Repositioned tilde in related ligatures. Previously it was higher than the standard one.
* Added missing vietnamese anchors on acute and grave (futureproofing).
* Corrected / made consistent greater & less positioning in </> and <$> related ligatures.
* Otherwise reviewed hinting
DHowett added a commit to microsoft/terminal that referenced this issue Feb 25, 2021
This update fixes some issues in Cascadia Code's February update:

microsoft/cascadia-code#406 - updated anchor type to lock with the other equals-related ligatures
microsoft/cascadia-code#408 - corrected component used for glyph to align with Unicode
microsoft/cascadia-code#412 - updated locl features removing iacute_j ligature and Catalan substitution
microsoft/cascadia-code#414 - increased overlaps of middle glyph for arrow ligatures
microsoft/cascadia-code#415 - reduces width of macronbelow
microsoft/cascadia-code#416 - rolls back name ID 4 modification as JetBrains cannot process it correctly
microsoft/cascadia-code#428 - rolls back variation of the underline to prevent MVAR table generation

Full changelist:
* Repositioned tilde in related ligatures. Previously it was higher than the standard one.
* Added missing vietnamese anchors on acute and grave (futureproofing).
* Corrected / made consistent greater & less positioning in </> and <$> related ligatures.
* Otherwise reviewed hinting
DHowett added a commit to microsoft/terminal that referenced this issue Feb 25, 2021
This update fixes some issues in Cascadia Code's February update:

microsoft/cascadia-code#406 - updated anchor type to lock with the other equals-related ligatures
microsoft/cascadia-code#408 - corrected component used for glyph to align with Unicode
microsoft/cascadia-code#412 - updated locl features removing iacute_j ligature and Catalan substitution
microsoft/cascadia-code#414 - increased overlaps of middle glyph for arrow ligatures
microsoft/cascadia-code#415 - reduces width of macronbelow
microsoft/cascadia-code#416 - rolls back name ID 4 modification as JetBrains cannot process it correctly
microsoft/cascadia-code#428 - rolls back variation of the underline to prevent MVAR table generation

Full changelist:
* Repositioned tilde in related ligatures. Previously it was higher than the standard one.
* Added missing vietnamese anchors on acute and grave (futureproofing).
* Corrected / made consistent greater & less positioning in </> and <$> related ligatures.
* Otherwise reviewed hinting

(cherry picked from commit cb03b97)
DHowett added a commit to microsoft/terminal that referenced this issue Feb 25, 2021
This update fixes some issues in Cascadia Code's February update:

microsoft/cascadia-code#406 - updated anchor type to lock with the other equals-related ligatures
microsoft/cascadia-code#408 - corrected component used for glyph to align with Unicode
microsoft/cascadia-code#412 - updated locl features removing iacute_j ligature and Catalan substitution
microsoft/cascadia-code#414 - increased overlaps of middle glyph for arrow ligatures
microsoft/cascadia-code#415 - reduces width of macronbelow
microsoft/cascadia-code#416 - rolls back name ID 4 modification as JetBrains cannot process it correctly
microsoft/cascadia-code#428 - rolls back variation of the underline to prevent MVAR table generation

Full changelist:
* Repositioned tilde in related ligatures. Previously it was higher than the standard one.
* Added missing vietnamese anchors on acute and grave (futureproofing).
* Corrected / made consistent greater & less positioning in </> and <$> related ligatures.
* Otherwise reviewed hinting

(cherry picked from commit cb03b97)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants