Numerous EWTS->Unicode and especially EWTS->TMW improvements.
Fixed ordering of Unicode wowels. [ku+A] gives the correct Unicode now, e.g. EWTS->TMW looks better for some wacky wowels like, I'm guessing here, [ku+A]. EWTS->TMW should now give errors any time the full input isn't used. Previously, wacky wowels like [kai+-i] would lead to some droppage. EWTS->TMW->Unicode testing is now in effect. This found a ton of EWTS->TMW bugs, most or all of which are fixed now. TMW->Unicode is improved/fixed for { \u5350,\u534D,\u0F88+k,\u0F88+kh,U }. (Why U? "\u0f75" is discouraged in favor of "\u0f71\u0f74".) NOTE: TMW_RTF_TO_THDL_WYLIETest is still disabled for the nightly builds' sake, but I ran it in my sandbox and it passed.
This commit is contained in:
parent
36122778b4
commit
6d419fe641
19 changed files with 1014 additions and 547 deletions
|
@ -546,10 +546,12 @@ public final class ACIPTraits implements TTraits {
|
|||
|
||||
/** Gets the duffcodes for wowel, such that they look good with
|
||||
* the preceding glyph, and appends them to duff. */
|
||||
public void getDuffForWowel(ArrayList duff, DuffCode preceding, String wowel) {
|
||||
public void getDuffForWowel(ArrayList duff, DuffCode preceding, String wowel)
|
||||
throws ConversionException
|
||||
{
|
||||
if (null == wowel) return;
|
||||
if (null == getEwtsForWowel(wowel)) // FIXME: expensive assertion! Use assert.
|
||||
throw new IllegalArgumentException("Wowel " + wowel + " isn't in the small set of wowels we handle correctly.");
|
||||
throw new ConversionException("Wowel " + wowel + " isn't in the small set of wowels we handle correctly.");
|
||||
|
||||
// Order matters here.
|
||||
boolean context_added[] = new boolean[] { false };
|
||||
|
@ -619,8 +621,10 @@ public final class ACIPTraits implements TTraits {
|
|||
try {
|
||||
return TPairListFactory.breakACIPIntoChunks(tt, sh);
|
||||
} catch (StackOverflowError e) {
|
||||
// TODO(dchandler): use ConversionException? Stop catching these?
|
||||
throw new IllegalArgumentException("Input too large[1]: " + tt);
|
||||
} catch (OutOfMemoryError e) {
|
||||
// TODO(dchandler): use ConversionException? Stop catching these?
|
||||
throw new IllegalArgumentException("Input too large[2]: " + tt);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue