<div dir="ltr">Why Thank You, Johnathan!<div><br></div><div>Yes, indeed, I think a fix in HarfBuzz would be much more pleasant than me spinning my wheels but getting nowhere trying to fix errors introduced by the Unicode Standards body.  Needless to say, the fix that I attempted did not work probably for exactly the reasons that Johnathan has stated.</div>
<div><br></div><div>And of course not just my "Hariphunchai" font is affected by this --- I have tested Theppitak Karoonboonyanan's font, "Khottabun" and it is likewise affected. </div><div><br></div>
<div>And presumably anyone else attempting to make an OpenType-based Tai Tham font will run into the same wall every time ...</div><div><br></div><div>Best Holiday Wishes to Everyone!  -- Ed<br><div class="gmail_extra"><br>
======================</div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Dec 27, 2013 at 12:09 PM, Jonathan Kew <span dir="ltr"><<a href="mailto:jfkthame@googlemail.com" target="_blank">jfkthame@googlemail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><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>
</blockquote></div><br></div></div></div>