2 **********************************************************************
3 * Copyright (c) 2001-2010, International Business Machines
4 * Corporation and others. All Rights Reserved.
5 **********************************************************************
6 * Date Name Description
7 * 11/29/2001 aliu Creation.
8 **********************************************************************
10 package com.ibm.icu.dev.tool.translit;
11 import com.ibm.icu.text.Normalizer;
12 import com.ibm.icu.text.Transliterator;
13 import com.ibm.icu.text.UnicodeSet;
16 * Adjunct class to getIndexFilters.bat. Just generates source sets
19 * Usage: ID [ NFD|NFKD [lower] ]
21 * java -classpath classes com.ibm.icu.dev.tool.translit.genIndexFilters
22 * Latin-Greek NFD lower
24 * The 'NFD'|'NFKD' and 'lower' args are optional, but 'lower' can
25 * only be specified if 'NFD' or 'NFKD' is.
27 * DO NOT CHANGE OUTPUT FORMAT. This tool's output is read by a Perl
30 public class genIndexFilters {
32 public static void main(String[] args) {
33 Normalizer.Mode m = Normalizer.NONE;
34 boolean lowerFirst = false;
35 if (args.length >= 2) {
36 if (args[1].equalsIgnoreCase("NFD")) {
38 } else if (args[1].equalsIgnoreCase("NFKD")) {
44 if (args.length >= 3) {
45 if (args[2].equalsIgnoreCase("lower")) {
51 if (args.length > 3) {
54 showSourceSet(args[0], m, lowerFirst);
57 static void showSourceSet(String ID, Normalizer.Mode m, boolean lowerFirst) {
58 Transliterator t = Transliterator.getInstance(ID);
59 UnicodeSet sourceSet = t.getSourceSet();
60 if (m != Normalizer.NONE || lowerFirst) {
61 UnicodeSetClosure.close(sourceSet, m, lowerFirst);
63 System.out.println(sourceSet.toPattern(true));
67 System.err.println("Usage: ID [ NFD|NFKD [lower] ]");