<div dir="ltr">Happy New Year, Behdad!<div><br></div><div>Hey just wondering what do you think about Jonathan's patch (attached below)?</div><div><br></div><div>Best - Ed</div><div><br><br><div class="gmail_quote">---------- Forwarded message ----------<br>
From: <b class="gmail_sendername">Jonathan Kew</b> <span dir="ltr"><<a href="mailto:jfkthame@googlemail.com">jfkthame@googlemail.com</a>></span><br>Date: Fri, Dec 27, 2013 at 12:09 PM<br>Subject: Re: [HarfBuzz] Change in HarfBuzz after version 0.90 ?<br>
To: Ed Trager <<a href="mailto:ed.trager@gmail.com">ed.trager@gmail.com</a>>, Danh Hong <<a href="mailto:danhhong@gmail.com">danhhong@gmail.com</a>>, Behdad Esfahbod <<a href="mailto:behdad@behdad.org">behdad@behdad.org</a>><br>
Cc: Martin Hosken <<a href="mailto:mhosken@gmail.com">mhosken@gmail.com</a>>, Richard Wordingham <<a href="mailto:richard.wordingham@ntlworld.com">richard.wordingham@ntlworld.com</a>>, Theppitak Karoonboonyanan <<a href="mailto:theppitak@gmail.com">theppitak@gmail.com</a>>, Harfbuzz <<a href="mailto:harfbuzz@lists.freedesktop.org">harfbuzz@lists.freedesktop.org</a>><br>
<br><br><div class="im">On 27/12/13 16:21, Ed Trager wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Hi, Martin, Richard, and Danh Hong,<br>
<br>
With regard to forcing the re-ordering of the<br>
UCD-enforced-but-totally-<u></u>broken normalisation of TAI THAM TONE MARK plus<br>
U+1A60, does the following approach in the OpenType feature file make<br>
sense as the quickest and cleanest way to do it or not?:<br>
<br>
Basically the idea is to compose the out-of-order pair of characters<br>
into a ligature; and then take that ligature and decompose it back to a<br>
pair of characters that are in the correct order:<br>
<br>
If there is a better way to do this in OpenType, please enlighten me!<br>
:-)  I was trying to get this to work last night, so far without success:<br>
<br>
</blockquote>
<br></div>
The trouble with this idea (or at least one trouble with it!) is that by the time your lookups have a chance to do anything, harfbuzz has already inserted dotted-circle glyphs because it treated the (normalized) sequence as being a "broken" cluster. The pattern for a "consonant syllable" in the SEAsian shaper allows for a <sakot, consonant> pair (i.e. a subjoined consonant) among the various possible syllable-tail items, but it does not allow for the <sakot> and <cons> to be separated by other marks, which is what the normalization does.<br>

<br>
You -might- be able to work around this by explicitly including the dotted circles in your ligature-composition rules, though that will make them all more cumbersome. The better way forward is for us to fix harfbuzz, as previously suggested.<br>

<br>
Possible patch attached; Behdad, wdyt?<br>
<br>
<br>
</div><br></div></div>