GNOME Bugzilla – Bug 335811
Some conjugates of Malayalam are wrong.
Last modified: 2006-07-31 05:18:09 UTC
Please describe the problem: I found that some conjugates of Malayalam in Pango are wrong. They are: (1) (U+0d37) + (U+0d4d) + (U+0d1f) (2) (U+0d28) + (U+0d4d) + (U+0d26) (3) (U+0d1f) + (U+0d4d) + (U+0d1f) (4) (U+0d23) + (U+0d4d) + (U+0d23) (5) (U+0d26) + (U+0d4d) + (U+0d26) (6) (U+0d38) + (U+0d4d) + (U+0d25) (7) (U+0d24) + (U+0d4d) + (U+0d25) (8) (U+0d23) + (U+0d4d) + (U+0d1f) (9) (U+0d28) + (U+0d4d) + (U+0d25) (10) (U+0d2c) + (U+0d4d) + (U+0d26) (11) (U+0d15) + (U+0d4d) + (U+0d1f) The images of the right conjugates and the wrong conjugates are below. Font used for rendering is Thoolika Unicode http://www.supersoftweb.com/THOOLIUC.TTF Steps to reproduce: 1. 2. 3. Actual results: Expected results: Does this happen every time? Other information:
Created attachment 61897 [details] The right conjugates of Malayalam This is the image of the right conjugates of Malayalam.
Created attachment 61898 [details] the wrong conjugates of Malyalam This is the image of the wrong conjugates of Malayalam in Pango.
I found that the reason that creating the wrong conjugates in Pango. In the IndicOTCharClass mlymCharClasses, the tags that U+0d1f, U+0d23, U+0d25 and U+0d26 are all _bb, and I think they need be not _bb and need be _ct. So I modified them, and build again. Then most of the conjugates are right, except the first conjugate. I will debug and test them. The result of rendering these conjugates is below.
Created attachment 61899 [details] conjugates after modifying This is the image of rendering the conjugates of Malayalam after modifying.
Hi, Gora from indlinux referred me to this and other Malayalam bugs in pango, and I can help you out here. Your fixes in http://bugzilla.gnome.org/attachment.cgi?id=61899&action=view look right, except for the first one (first line), which should be as it is in http://bugzilla.gnome.org/attachment.cgi?id=61897&action=view Please note that in http://bugzilla.gnome.org/attachment.cgi?id=61898&action=view and http://bugzilla.gnome.org/attachment.cgi?id=61899&action=view is relatively easy to find that the first line is being rendered with the wrong character (the character is the same as the one on line two) so maybe that is an input error, involving switched numbers or similar. To be more specific, look at the characters on the right hand side of the equality sign. In the top two lines, the "Na" character, which looks like a "3" facing downward is used instead of the "Sha" character. This might be an input error and not a bug, maybe.
I found that the unicodes of the first line need be (U+0d37) + (U+0d4d) + (U+0d1f), but the unicods that I input are (U+0d28) + (U+0d4d) + (U+0d1f). So it is wrong. :)
I wrote a patch for fixing this bug and bug121672. The patch is: http://bugzilla.gnome.org/attachment.cgi?id=62443&action=view
I think that the mlymCharClasses can not be modified. So I added some codes to handle the malayalam special conjugates.
The patch is modified for fixing the bug about (U+0d32) + (U+0d4d) + (U+0d32). The patch is: http://bugzilla.gnome.org/attachment.cgi?id=63283&action=view
Created attachment 68515 [details] [review] my patch I found that Qt can render these conjuctions' glyphs rightly, so I read the codes about indic of Qt. Then I found some consonants' tags in the indicOTCharClass of pango are different with the same tags in Qt. I modified these tags through refering to the tags of Qt, and tested them. These conjuctions' glyphs render rightly. :)
Created attachment 68516 [details] the image the image of rendering these conjuctions
2006-07-31 Behdad Esfahbod <behdad@gnome.org> Bug 335811 – Some conjugates of Malayalam are wrong. Patch from LingNing Zhang * modules/indic/indic-ot-class-tables.c: Update consonant tags to fix conjugates.