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

Mon language is still not correct #22

Open
Anontamon opened this issue Dec 3, 2020 · 21 comments
Open

Mon language is still not correct #22

Anontamon opened this issue Dec 3, 2020 · 21 comments

Comments

@Anontamon
Copy link

Defect Report

Title

Position in Mon language is still not correct.

Font

NotoSansMyanmar-Regular.otf
NotoSansMyanmarUI-Regular.otf
NotoSerifMyanmar-Regular.otf
NotoSansMyanmar-Regular.ttf
NotoSansMyanmarUI-Regular.ttf
NotoSerifMyanmar-Regular.ttf

Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/otf/NotoSansMyanmar
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/otf/NotoSansMyanmarUI
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/otf/NotoSerifMyanmar
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/ttf/NotoSansMyanmar
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/ttf/NotoSansMyanmarUI
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/ttf/NotoSerifMyanmar

Where the font came from, and when

Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/otf/NotoSansMyanmar
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/otf/NotoSansMyanmarUI
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/otf/NotoSerifMyanmar
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/ttf/NotoSansMyanmar
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/ttf/NotoSansMyanmarUI
Site: https://github.com/googlefonts/noto-fonts/tree/master/unhinted/ttf/NotoSerifMyanmar
Date: 2020-12-03

Font Version

  • Mac OS Systemwide
  • Windows 10 Systemwide
  • Linux Systemwide

OS name and version

It is Systemwide

Issue

Position in Mon language is still not correct.

Character data

ၚ် = U+105A U+103A
ၚု = U+105A U+102F
ၚူ = U+105A U+1030
ၚို = U+105A U+102D U+102F
ၚီု = U+105A U+102E U+102F
ၚဵု = U+105A U+1035 U+102F
ၚိုဲ = U+105A U+102D U+102F U+1032
ဇ္ၛ = U+1007 U+1039 U+105B
ဉ္ၛ = U+1009 U+1039 U+105B
က္ဉ = U+1000 U+1039 U+1009
ဇ္ဉ = U+1007 U+1039 U+1009
ဒ္ဉ = U+1012 U+1039 U+1009
ည္ည = U+100A U+1039 U+100A
က္ဍ = U+1000 U+1039 U+100D
ခ္ဍ = U+1001 U+1039 U+100D
ဂ္ဍ = U+1002 U+1039 U+100D
စ္ဍ = U+1005 U+1039 U+100D
ဆ္ဍ = U+1006 U+1039 U+100D
ဇ္ဍ = U+1007 U+1039 U+100D
တ္ဍ = U+1010 U+1039 U+100D
ထ္ဍ = U+1011 U+1039 U+100D
ဒ္ဍ = U+1012 U+1039 U+100D
ပ္ဍ = U+1015 U+1039 U+100D
ဖ္ဍ = U+1016 U+1039 U+100D
ဗ္ဍ = U+1017 U+1039 U+100D
ဘ္ဍ = U+1018 U+1039 U+100D
မ္ဍ = U+1019 U+1039 U+100D
သ္ဍ = U+101E U+1039 U+100D
အ္ဍ = U+1021 U+1039 U+100D
ါဲ = U+102B U+1032
ါံ = U+102B U+1036

Screenshot

mnwf1
mnwf2 copy
mnwf3

Unicode Technical Note notofonts/latin-greek-cyrillic#238 https://www.unicode.org/notes/tn11/
Thank You.

@ohbendy
Copy link

ohbendy commented Dec 24, 2020

Thanks for posting this! I'll make sure these are all included in my forthcoming report about the Noto Myanmar fonts :-)

@ohbendy
Copy link

ohbendy commented Dec 24, 2020

Also, I believe ဍ္ဎ is incorrect in the Noto fonts for Mon language.

@ohbendy
Copy link

ohbendy commented Jan 2, 2021

The issue with anusvara above tall Aa is also referenced here: https://github.com/googlefonts/noto-fonts/issues/1278

@jdtig
Copy link

jdtig commented Apr 13, 2022

Any update on this?

It makes it extremely difficult for the Mon population to write the language online as long as Noto Sans is the system font on Android and does not render the language correctly.

At a minimum, correcting the rendering for the combination of U+105A U+103A would fix +90% of the problems, as it is an extremely common sequence.

(For comparison, that particular sequence is rendered correctly with Noto Serif Myanmar, although the other problems above are rendered incorrectly in both Noto Sans Myanmar and Noto Serif Myanmar.)

@ohbendy
Copy link

ohbendy commented Apr 13, 2022

Thank you, yes there are quite a lot of problems with both sets of Noto Myanmar fonts. I'm hoping to get the chance to update them later this year, it depends when budget becomes available for updates.

@Monradio
Copy link

Monradio commented May 4, 2022

as a native Mon speaker and program producer for the MonRadio shortwave and online radio programs, it would help me with my FaceBook and other social media posts to have this issue fixed. It takes much time and it is hard for me and my friends to go back and check posts to make sure spelling is correct when we publish content on online or use documents on our mobile devices. I appreciate the work you have already done and look forward to when the problems are fixed.

@ohbendy
Copy link

ohbendy commented May 4, 2022

Thank you for commenting! Let's keep the pressure on so this can be addressed asap :)

@ohbendy
Copy link

ohbendy commented May 6, 2022

@simoncozens @anthrotype is there any possibility to fix these most pressing issues for Mon language? The current build is not usable.

I believe the existing Noto Myanmar fonts were compiled in FontDame, so it might mean there's no way to apply a single fix (we'd have to start from scratch)?

@simoncozens
Copy link
Contributor

No, all Noto fonts have now been converted from FontDame to Adobe FEA (inside Glyphs sources). I didn't do the Myanmar ones and I'm finding it hard to get my head around the feature code from a standing start, but if you think it's a small enough task to do separate to the big rewrite, we should be able to work on these.

@ohbendy
Copy link

ohbendy commented May 6, 2022

Oh, that's encouraging. Let me run through these fixes:

  1. Mon letter Nga 105A followed by asat 103A loses the tail piece.
  2. Use post-base U and UU after Mon Nga (don't remove the tail piece). Make sure abovemarks don't change that behaviour.
  3. jha-mon.below, nya-myanmar.below and dda-myanmar.below are the wrong shape, glyphs need redrawing. I could do a quick job on those.
  4. Great Nnya looks like it needs drawing and a substitution rule instead of ည္ည for Mon language (this is the only language-specific lookup, all the others here can be enabled by default)
  5. aiMark-myanmar (1032) and anusvara-myanmar (1036) are stored after tallAa (102B) but the font needs to reorder them onto the preceding base consonant rather than sticking them on the tallAa.

@simoncozens
Copy link
Contributor

Cool, thanks for that summary - very helpful. I also have a really good source of examples for how to do these things. :-)

This is both Sans and Serif? The Sans will need quite a bit of work restructuring the feature code so that it's maintainable, as it's been automatically converted and it's all full of sub @class156 @class311' lookup SingleSubstitution35; and the like. The Serif has been massaged a bit and I can more or less follow it.

@simoncozens
Copy link
Contributor

Actually I can answer my own question: in Serif, ၚ် ok, ၚု/ၚူ wrong, no Mon greatNnya, ကါဲ ကါံ correct.

@ohbendy
Copy link

ohbendy commented May 6, 2022

Yes, the sans and the serif are behaving differently.

I just remembered Mon Nga tail should disappear when followed by a subscript consonant; currently the sans is trying to stack below the tail and the serif is stacking directly on top of the tail. See slides 38-39 in my bug report slide deck

@simoncozens
Copy link
Contributor

aiMark-myanmar (1032) and anusvara-myanmar (1036) are stored after tallAa (102B) but the font needs to reorder them onto the preceding base consonant rather than sticking them on the tallAa.

Aha, the font does actually swap these, but only if language is mnw. We should do it for everything?

@ohbendy
Copy link

ohbendy commented May 6, 2022

Yes. AFAIK there's no language in which things stick to tallAa.

(Aside from setting an html language tag, I don't know of any app that lets you set the language as Mon, so even if there are alternate behaviours, I think this is good for default behaviour.)

@simoncozens
Copy link
Contributor

OK, I have fixed the shaping issues (1, 2, 5 on your list above). When you are ready, grab the Glyphs file from https://github.com/googlefonts/noto-source/blob/sansmyanmar-2104/src/NotoSansMyanmar-MM.glyphs and add the drawing fixes.

@ohbendy
Copy link

ohbendy commented May 6, 2022

What a mess that source file is, nothing's aligned properly; anchors, point placement, curve tension and angle of terminals are all over the place, and letters like ည and သ have different widths. I've done my best to update the glyphs above but bear in mind what's really needed is a complete overhaul.

@simoncozens
Copy link
Contributor

I believe we're looking at commissioning a complete overhaul later on. But if we can just fix these Mon issues in the mean time it would be nice!

ohbendy referenced this issue in ohbendy/noto-source May 6, 2022
As per https://github.com/googlefonts/noto-fonts/issues/1926#issuecomment-1119618177

Redrew
nya.sub
dda.sub
jha_mon.sub

Added greatNnya-mon

Decomposed nna_dda as it was correct but the component it uses has changed.
simoncozens referenced this issue in notofonts/noto-source May 7, 2022
As per https://github.com/googlefonts/noto-fonts/issues/1926#issuecomment-1119618177

Redrew
nya.sub
dda.sub
jha_mon.sub

Added greatNnya-mon

Decomposed nna_dda as it was correct but the component it uses has changed.
@ohbendy
Copy link

ohbendy commented May 21, 2022

A couple of things went wrong in another place in 3.104 compared to 3.103.

Sequence is

ကြု ကြူ ကြို ကြီု ကြဵုကြုဲ ကြုံ
ခြု ခြူ ခြို ခြီု ခြဵု ခြုဲ ခြုံ
ကာံ ကာဲ ကောံ ကောဲ ကေုာံ

3.103 has things correctly:
image
3.104 is forgetting to kick the U and UU to post-base forms, and abovemarks are sitting on the consonant instead of the -ာ vowel sign. Those are typed က -ာ -ံ and က -ာ -ဲ

image

@Monradio
Copy link

Monradio commented May 21, 2022 via email

@Anontamon
Copy link
Author

Overlapping subjoined U+105B MYANMAR LETTER MON JHA #24

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

No branches or pull requests

6 participants