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
|
@ -1347,12 +1347,26 @@ public static boolean isKnownHashKey(String hashKey) {
|
|||
* @see DuffCode
|
||||
*/
|
||||
public static DuffCode getGlyph(String hashKey) {
|
||||
DuffCode[] dc = (DuffCode[])tibHash.get(hashKey);
|
||||
DuffCode dc = maybeGetGlyph(hashKey);
|
||||
if (null == dc)
|
||||
throw new Error("Hash key " + hashKey + " not found; it is likely that you misconfigured tibwn.ini such that, say, M is expected (i.e., it is listed as, e.g. punctuation), but no 'M~...' line appears.");
|
||||
return dc;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a glyph for this hash key if possible; returns null
|
||||
* otherwise.
|
||||
* @see #getGlyph(String)
|
||||
*/
|
||||
public static DuffCode maybeGetGlyph(String hashKey) {
|
||||
DuffCode[] dc = (DuffCode[])tibHash.get(hashKey);
|
||||
if (null == dc)
|
||||
return null;
|
||||
return dc[TMW];
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Gets the half height character for this hash key.
|
||||
* @param hashKey the key you want a half height glyph for; see {@link
|
||||
|
@ -1783,6 +1797,8 @@ private static final String Unicode_tab = "\t";
|
|||
= new DuffCode[] { new DuffCode(1, (char)58) };
|
||||
private static final DuffCode[] tmwFor0F73
|
||||
= new DuffCode[] { new DuffCode(4, (char)106), new DuffCode(1, (char)109) };
|
||||
private static final DuffCode[] tmwFor0F75
|
||||
= new DuffCode[] { new DuffCode(10, (char)126) };
|
||||
private static final DuffCode[] tmwFor0F76
|
||||
= new DuffCode[] { new DuffCode(8, (char)71), new DuffCode(8, (char)87) };
|
||||
private static final DuffCode[] tmwFor0F77
|
||||
|
@ -1840,6 +1856,8 @@ private static final String Unicode_tab = "\t";
|
|||
return tmwFor0F6A;
|
||||
} else if ('\u0F73' == ch) {
|
||||
return tmwFor0F73;
|
||||
} else if ('\u0F75' == ch) {
|
||||
return tmwFor0F75;
|
||||
} else if ('\u0F76' == ch) {
|
||||
return tmwFor0F76;
|
||||
} else if ('\u0F77' == ch) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue