diff --git a/tools/unicodetools/com/ibm/text/UCD/Main.java b/tools/unicodetools/com/ibm/text/UCD/Main.java index c176a2b468..879abf43b7 100644 --- a/tools/unicodetools/com/ibm/text/UCD/Main.java +++ b/tools/unicodetools/com/ibm/text/UCD/Main.java @@ -5,8 +5,8 @@ ******************************************************************************* * * $Source: /xsrl/Nsvn/icu/unicodetools/com/ibm/text/UCD/Main.java,v $ -* $Date: 2003/03/19 17:30:57 $ -* $Revision: 1.29 $ +* $Date: 2003/03/20 21:47:28 $ +* $Revision: 1.30 $ * ******************************************************************************* */ @@ -16,22 +16,11 @@ import com.ibm.text.utility.*; public final class Main implements UCD_Types { - static final String[] ALL_FILES = { + static final String[] CORE_FILES = { "CaseFolding", "CompositionExclusions", - "DerivedBidiClass", - "DerivedBinaryProperties", - "DerivedCombiningClass", "DerivedCoreProperties", - "DerivedDecompositionType", - "DerivedEastAsianWidth", - "DerivedGeneralCategory", - "DerivedJoiningGroup", - "DerivedJoiningType", - "DerivedLineBreak", "DerivedNormalizationProps", - "DerivedNumericType", - "DerivedNumericValues", "NormalizationTest", "PropertyAliases", "PropList", @@ -40,7 +29,7 @@ public final class Main implements UCD_Types { "HangulSyllableType", "DerivedAge", "StandardizedVariants", - "HangulSyllable", + "HangulSyllableType", //"OtherDerivedProperties", }; @@ -58,6 +47,10 @@ public final class Main implements UCD_Types { "DerivedNumericValues", }; + static final String[] ALL_FILES = { + "Core", "Extracted" + }; + public static void main (String[] args) throws Exception { for (int i = 0; i < args.length; ++i) { @@ -68,16 +61,23 @@ public final class Main implements UCD_Types { if (arg.charAt(0) == '#') return; // skip rest of line Utility.fixDot(); - System.out.println("Argument: " + args[i]); + System.out.println(); + System.out.println("** Argument: " + args[i] + " **"); // Expand string arguments - if (arg.equalsIgnoreCase("All")) { + if (arg.equalsIgnoreCase("ALL")) { args = Utility.append(ALL_FILES, Utility.subarray(args, i+1)); i = -1; continue; } + if (arg.equalsIgnoreCase("CORE")) { + args = Utility.append(CORE_FILES, Utility.subarray(args, i+1)); + i = -1; + continue; + } + if (arg.equalsIgnoreCase("EXTRACTED")) { args = Utility.append(EXTRACTED_FILES, Utility.subarray(args, i+1)); i = -1; diff --git a/tools/unicodetools/com/ibm/text/UCD/UCD.java b/tools/unicodetools/com/ibm/text/UCD/UCD.java index ebdf052c80..e480b2ab8f 100644 --- a/tools/unicodetools/com/ibm/text/UCD/UCD.java +++ b/tools/unicodetools/com/ibm/text/UCD/UCD.java @@ -5,8 +5,8 @@ ******************************************************************************* * * $Source: /xsrl/Nsvn/icu/unicodetools/com/ibm/text/UCD/UCD.java,v $ -* $Date: 2003/03/19 17:30:56 $ -* $Revision: 1.23 $ +* $Date: 2003/03/20 21:47:28 $ +* $Revision: 1.24 $ * ******************************************************************************* */ @@ -389,7 +389,7 @@ public final class UCD implements UCD_Types { System.out.println("BIDI_R_SET: " + BIDI_R_SET); System.out.println("BIDI_AL_SET: " + BIDI_AL_SET); - UnicodeSet BIDI_R_Delta = new UnicodeSet(0xFB1D, 0xFB4F).add(0x10800, 0x10FFF).add(0x07BF,0x8FF); + UnicodeSet BIDI_R_Delta = new UnicodeSet(0xFB1D, 0xFB4F).add(0x10800, 0x10FFF).add(0x07C0,0x8FF); BIDI_R_Delta.removeAll(BIDI_R_SET); System.out.println("R: Adding " + BIDI_R_Delta); BIDI_R_SET.addAll(BIDI_R_Delta); @@ -400,13 +400,21 @@ public final class UCD implements UCD_Types { BIDI_AL_SET.addAll(BIDI_AL_Delta); UnicodeSet noncharacters = UnifiedBinaryProperty.make(BINARY_PROPERTIES + Noncharacter_Code_Point).getSet(); + noncharacters.remove(Utility.BOM); - System.out.println("Removing Noncharacters! " + noncharacters); + System.out.println("Removing Noncharacters/BOM " + noncharacters); BIDI_R_SET.removeAll(noncharacters); BIDI_AL_SET.removeAll(noncharacters); + + System.out.println("BIDI_R_SET: " + BIDI_R_SET); System.out.println("BIDI_AL_SET: " + BIDI_AL_SET); + + if (BIDI_R_SET.containsSome(BIDI_AL_SET)) { + throw new ChainException("BIDI values for Cf characters overlap!!", null); + } + } if (BIDI_R_SET.contains(codePoint)) { diff --git a/tools/unicodetools/com/ibm/text/UCD/UCD_Types.java b/tools/unicodetools/com/ibm/text/UCD/UCD_Types.java index 600ad1d9c2..22182db08f 100644 --- a/tools/unicodetools/com/ibm/text/UCD/UCD_Types.java +++ b/tools/unicodetools/com/ibm/text/UCD/UCD_Types.java @@ -5,8 +5,8 @@ ******************************************************************************* * * $Source: /xsrl/Nsvn/icu/unicodetools/com/ibm/text/UCD/UCD_Types.java,v $ -* $Date: 2003/03/19 17:30:56 $ -* $Revision: 1.20 $ +* $Date: 2003/03/20 21:47:26 $ +* $Revision: 1.21 $ * ******************************************************************************* */ @@ -15,7 +15,7 @@ package com.ibm.text.UCD; public interface UCD_Types { - public static final int dVersion = 19; // change to fix the generated file D version. If less than zero, no "d" + public static final int dVersion = 20; // change to fix the generated file D version. If less than zero, no "d" public static final String BASE_DIR = "C:\\DATA\\"; public static final String UCD_DIR = BASE_DIR + "UCD\\";