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

Kannada JIHVAMULIYA and UPADHMANIYA insert dotted circles #528

Closed
roozbehp opened this issue Sep 1, 2017 · 17 comments
Closed

Kannada JIHVAMULIYA and UPADHMANIYA insert dotted circles #528

roozbehp opened this issue Sep 1, 2017 · 17 comments

Comments

@roozbehp
Copy link
Collaborator

roozbehp commented Sep 1, 2017

According to Unicode, these should display fine just appearing by themselves. But HarfBuzz inserts dotted circles after them. Here's the result of:

./test/shaping/hb-unicode-encode 0CF1 20 0CF2| ./util/hb-view --font-file=$HOME/src/noto-fonts/unhinted/NotoSansKannada-Regular.ttf --output-file=kannada.png
kannada

@jfkthame
Copy link
Collaborator

jfkthame commented Sep 1, 2017

The same will presumably apply to the equivalent Brahmi signs U+11003 and U+11004, as these also have Indic_Syllabic_Category=Consonant_With_Stacker, which is not being handled correctly by harfbuzz. (See hb-ot-shape-complex-indic-private.hh, which treats it as OT_Repha, with a suspicious-looking TODO comment!)

@jfkthame
Copy link
Collaborator

jfkthame commented Sep 1, 2017

BTW, does the Noto Kannada font have any support for these characters (besides just rendering simple glyphs)? From a quick look, I'm not seeing any sign of the expected ligatures for things like <U+0CF2, U+0CAB>.

@behdad
Copy link
Member

behdad commented Sep 1, 2017

From shaping point of view looks to me like just treating them as consonant is best. I'll commit that for now.

@behdad behdad closed this as completed in 06cb162 Sep 1, 2017
@roozbehp
Copy link
Collaborator Author

roozbehp commented Sep 1, 2017

@jfkthame There's a bug open for complex behavior of these in Noto Sans Kannada at https://github.com/googlei18n/noto-fonts/issues/459

@dscorbett
Copy link
Collaborator

This change breaks the latest development version of FreeSerif. FreeSerif uses 'psts' to substitute consonants with their subjoined forms following jihvamuliya and upadhmaniya, but now that Consonant_With_Stacker is treated as Consonant, 'psts' does not get applied.

@behdad
Copy link
Member

behdad commented Sep 1, 2017

This change breaks the latest development version of FreeSerif.

Humm....

FreeSerif uses 'psts' to substitute consonants with their subjoined forms

That should happen in 'pstf', not 'psts'.

following jihvamuliya and upadhmaniya, but now that Consonant_With_Stacker is treated as Consonant, 'psts' does not get applied.

@dscorbett
Copy link
Collaborator

'pstf' applies to “Halant + Consonant combinations”, but these characters subjoin following consonants without any halant. So is 'pstf' appropriate?

@behdad
Copy link
Member

behdad commented Sep 1, 2017

Why does 'psts' not apply?!

@behdad
Copy link
Member

behdad commented Sep 1, 2017

We apply 'psts' globally.

@dscorbett
Copy link
Collaborator

Is it global to the cluster or global to the whole input string?

@behdad
Copy link
Member

behdad commented Sep 1, 2017

Is it global to the cluster or global to the whole input string?

Global to the syllable. Though, backtrack/lookahead can span across syllable boundaries.

@behdad
Copy link
Member

behdad commented Sep 1, 2017

Ok so the problem I suppose is that now the stacked component ends up in a separate cluster...

@behdad
Copy link
Member

behdad commented Sep 1, 2017

So we do need a better solution for these, as they behave more like "consonant halant". I suppose we can hack the grammar. @jfkthame WDYT?

@behdad behdad reopened this Sep 1, 2017
@behdad
Copy link
Member

behdad commented Sep 1, 2017

@dscorbett do you have tests you can contribute to HarfBuzz perhaps?

@dscorbett
Copy link
Collaborator

I could make a pull request using record-test.sh, but FreeSerif is GPL-licensed and I don’t know any other font that tries to handle these characters. Would that be okay?

@behdad
Copy link
Member

behdad commented Sep 1, 2017

Yes, GPL is fine for the tests. I was thinking maybe you have a test suite that failed...

@JelleBosmaMT
Copy link

FYI Starting with the design proposal for Noto Sans Kannada update:

With a calt or abvs lookup I can get a subscript consonant after JIHVAMULIYA and UPADHMANIYA in Mac Safari and Chrome browsers, reproducing the samples given by Unicode. With blwf it doesn't work. In Windows it doesn't work at all. Which is not a problem for HarfBuzz.

behdad added a commit that referenced this issue Oct 3, 2017
@behdad behdad closed this as completed in f559c63 Oct 3, 2017
miodragdinic pushed a commit to MIPS/external-harfbuzz_ng that referenced this issue Mar 5, 2018
Fixes harfbuzz/harfbuzz#528
"Kannada JIHVAMULIYA and UPADHMANIYA insert dotted circles"

Bug: 65266006
Test: Manual
Change-Id: I5fcc82096323a35aaa37becdd209d5973333bb64
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

5 participants