Print this page
rev 5615 : 6336885: RFE: Locale Data Deployment Enhancements
4609153: Provide locale data for Indic locales
5104387: Support for gl_ES locale (galician language)
6337471: desktop/system locale preferences support
7056139: (cal) SPI support for locale-dependent Calendar parameters
7058206: Provide CalendarData SPI for week params and display field value names
7073852: Support multiple scripts for digits and decimal symbols per locale
7079560: [Fmt-Da] Context dependent month names support in SimpleDateFormat
7171324: getAvailableLocales() of locale sensitive services should return the actual availability of locales
7151414: (cal) Support calendar type identification
7168528: LocaleServiceProvider needs to be aware of Locale extensions
7171372: (cal) locale's default Calendar should be created if unknown calendar is specified
Summary: JEP 127: Improve Locale Data Packaging and Adopt Unicode CLDR Data (part 1 w/o Jigsaw. by Naoto Sato and Masayoshi Okutsu)
Split |
Close |
Expand all |
Collapse all |
--- old/src/share/classes/sun/text/resources/BreakIteratorRules_th.java
+++ new/src/share/classes/sun/text/resources/th/BreakIteratorRules_th.java
1 1 /*
2 - * Copyright (c) 1999, 2005, Oracle and/or its affiliates. All rights reserved.
2 + * Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
3 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 4 *
5 5 * This code is free software; you can redistribute it and/or modify it
6 6 * under the terms of the GNU General Public License version 2 only, as
7 7 * published by the Free Software Foundation. Oracle designates this
8 8 * particular file as subject to the "Classpath" exception as provided
9 9 * by Oracle in the LICENSE file that accompanied this code.
10 10 *
11 11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 14 * version 2 for more details (a copy is included in the LICENSE file that
15 15 * accompanied this code).
16 16 *
17 17 * You should have received a copy of the GNU General Public License version
18 18 * 2 along with this work; if not, write to the Free Software Foundation,
19 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 20 *
21 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 22 * or visit www.oracle.com if you need additional information or have any
23 23 * questions.
24 24 */
25 25
26 26 /*
27 27 */
28 28
↓ open down ↓ |
16 lines elided |
↑ open up ↑ |
29 29 /*
30 30 * (C) Copyright IBM Corp. 1999 All Rights Reserved.
31 31 */
32 32
33 33 /*
34 34 * Since JDK 1.5.0, this file no longer goes to runtime and is used at J2SE
35 35 * build phase in order to create [Word|Line]BreakIteratorData_th files which
36 36 * are used on runtime instead.
37 37 */
38 38
39 -package sun.text.resources;
39 +package sun.text.resources.th;
40 40
41 41 import java.util.ListResourceBundle;
42 42 import java.util.MissingResourceException;
43 43 import java.net.URL;
44 44
45 45 public class BreakIteratorRules_th extends ListResourceBundle {
46 46 protected final Object[][] getContents() {
47 47 return new Object[][] {
48 48 { "WordBreakRules",
49 49 // this rule breaks the iterator with mixed Thai and English
50 50 "<dictionary>=[\u0e01-\u0e2e\u0e30-\u0e3a\u0e40-\u0e44\u0e47-\u0e4e];"
51 51
52 52 + "<ignore>=[:Mn::Me::Cf:^<dictionary>];"
53 53 + "<paiyannoi>=[\u0e2f];"
54 54 + "<maiyamok>=[\u0e46];"
55 55 + "<danda>=[\u0964\u0965];"
56 56 + "<kanji>=[\u3005\u4e00-\u9fa5\uf900-\ufa2d];"
57 57 + "<kata>=[\u30a1-\u30fa];"
58 58 + "<hira>=[\u3041-\u3094];"
59 59 + "<cjk-diacrit>=[\u3099-\u309c];"
60 60 + "<let>=[:L::Mc:^[<kanji><kata><hira><cjk-diacrit><dictionary>]];"
61 61 + "<dgt>=[:N:];"
62 62 + "<mid-word>=[:Pd:\u00ad\u2027\\\"\\\'\\.];"
63 63 + "<mid-num>=[\\\"\\\'\\,\u066b\\.];"
64 64 + "<pre-num>=[:Sc:\\#\\.^\u00a2];"
65 65 + "<post-num>=[\\%\\&\u00a2\u066a\u2030\u2031];"
66 66 + "<ls>=[\n\u000c\u2028\u2029];"
67 67 + "<ws>=[:Zs:\t];"
68 68 + "<word>=((<let><let>*(<mid-word><let><let>*)*){<danda>});"
69 69 + "<number>=(<dgt><dgt>*(<mid-num><dgt><dgt>*)*);"
70 70 + "<thai-etc>=<paiyannoi>\u0e25<paiyannoi>;"
71 71 + ".;"
72 72 + "{<word>}(<number><word>)*{<number>{<post-num>}};"
73 73 + "<pre-num>(<number><word>)*{<number>{<post-num>}};"
74 74 + "<dictionary><dictionary>*{{<paiyannoi>}<maiyamok>};"
75 75 + "<dictionary><dictionary>*<paiyannoi>/([^[\u0e25<ignore>]]"
76 76 + "|\u0e25[^[<paiyannoi><ignore>]]);"
77 77 + "<thai-etc>;"
78 78 + "<ws>*{\r}{<ls>};"
79 79 + "[<kata><cjk-diacrit>]*;"
80 80 + "[<hira><cjk-diacrit>]*;"
81 81 + "<kanji>*;"
82 82 },
83 83
84 84 { "LineBreakRules",
85 85 "<dictionary>=[\u0e01-\u0e2e\u0e30-\u0e3a\u0e40-\u0e44\u0e47-\u0e4e];" // this rule breaks the iterator with mixed Thai and English
86 86 + "<ignore>=[:Mn::Me::Cf:^[<dictionary>]];"
87 87 + "<danda>=[\u0964\u0965];"
88 88 + "<break>=[\u0003\t\n\f\u2028\u2029];"
89 89 + "<nbsp>=[\u00a0\u0f0c\u2007\u2011\u202f\ufeff];"
90 90 + "<space>=[:Zs::Cc:^[<nbsp><break>\r]];"
91 91 + "<dash>=[:Pd:\u00ad^<nbsp>];"
92 92 + "<paiyannoi>=[\u0e2f];"
93 93 + "<maiyamok>=[\u0e46];"
94 94 + "<thai-etc>=(<paiyannoi>\u0e25<paiyannoi>);"
95 95 + "<pre-word>=[:Sc::Ps::Pi:^\u00a2\\\"];"
96 96 + "<post-word>=[:Pe::Pf:\\!\\%\\.\\,\\:\\;\\?\\\"\u00a2\u00b0\u066a\u2030-\u2034\u2103"
97 97 + "\u2105\u2109\u3001\u3002\u3005\u3041\u3043\u3045\u3047\u3049\u3063"
98 98 + "\u3083\u3085\u3087\u308e\u3099-\u309e\u30a1\u30a3\u30a5\u30a7\u30a9"
99 99 + "\u30c3\u30e3\u30e5\u30e7\u30ee\u30f5\u30f6\u30fc-\u30fe\uff01\uff0e"
100 100 + "\uff1f<maiyamok>];"
101 101 + "<kanji>=[\u4e00-\u9fa5\uf900-\ufa2d\u3041-\u3094\u30a1-\u30fa^[<post-word><ignore>]];"
102 102 + "<digit>=[:Nd::No:];"
103 103 + "<mid-num>=[\\.\\,];"
104 104 + "<char>=[^[<break><space><dash><kanji><nbsp><ignore><pre-word><post-word>"
105 105 + "<mid-num>\r<danda><dictionary><paiyannoi><maiyamok>]];"
106 106 + "<number>=([<pre-word><dash>]*<digit><digit>*(<mid-num><digit><digit>*)*);"
107 107 + "<word-core>=(<char>*|<kanji>|<number>|<dictionary><dictionary>*|<thai-etc>);"
108 108 + "<word-suffix>=((<dash><dash>*|<post-word>*)<space>*);"
109 109 + "<word>=(<pre-word>*<word-core><word-suffix>);"
110 110 + "<word>(<nbsp><nbsp>*<word>)*{({\r}{<break>}|<paiyannoi>\r{break}|<paiyannoi><break>)};"
111 111 + "<word>(<nbsp><nbsp>*<word>)*<paiyannoi>/([^[\u0e25<ignore>]]|"
112 112 + "\u0e25[^[<paiyannoi><ignore>]]);"
113 113 }
114 114 };
115 115 }
116 116 }
↓ open down ↓ |
67 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX