OLD | NEW |
| (Empty) |
1 diff --git a/source/data/brkitr/word.txt b/source/data/brkitr/word.txt | |
2 index f89a2fe..c74da4c 100644 | |
3 --- a/source/data/brkitr/word.txt | |
4 +++ b/source/data/brkitr/word.txt | |
5 @@ -35,10 +35,16 @@ $Hebrew_Letter = [\p{Word_Break = Hebrew_Letter}]; | |
6 $ALetter = [\p{Word_Break = ALetter}]; | |
7 $Single_Quote = [\p{Word_Break = Single_Quote}]; | |
8 $Double_Quote = [\p{Word_Break = Double_Quote}]; | |
9 -$MidNumLet = [\p{Word_Break = MidNumLet}]; | |
10 +# Remove two full stop characters from $MidNumLet and add them to $MidNum | |
11 +# to break a hostname into its components at the cost of breaking | |
12 +# 'e.g.' and 'i.e.' as well. | |
13 +# $MidNumLet is used in rules 6/7 (rules of our interest) and rules 11/12. | |
14 +# Because it's OR'd with $MidNum in rules 11/12, rules 11/12 are not affected | |
15 +# while rules 6/7 are reverted to the old behavior we want. | |
16 +$MidNumLet = [[\p{Word_Break = MidNumLet}] - [\u002E \uFF0E]]; | |
17 $MidLetter = [\p{Word_Break = MidLetter}]; | |
18 -$MidNum = [\p{Word_Break = MidNum}]; | |
19 -$Numeric = [\p{Word_Break = Numeric}]; | |
20 +$MidNum = [\p{Word_Break = MidNum}[\u002E \uFF0E]]; | |
21 +$Numeric = [\p{Word_Break = Numeric}[\uff10-\uff19]]; #includes fullwidth
digits | |
22 $ExtendNumLet = [\p{Word_Break = ExtendNumLet}]; | |
23 | |
24 $Han = [:Han:]; | |
25 diff --git a/source/data/brkitr/line.txt b/source/data/brkitr/line.txt | |
26 index 74560af..ff7d139 100644 | |
27 --- a/source/data/brkitr/line.txt | |
28 +++ b/source/data/brkitr/line.txt | |
29 @@ -12,9 +12,8 @@ | |
30 # This is only because of a limitation of ICU break engine implementati
on, | |
31 # not because the older behavior is desirable. | |
32 | |
33 -# | |
34 -# Character Classes defined by TR 14. | |
35 -# | |
36 +# CHROME: 1. Use line_ja.txt to apply small kana rules in all locales. | |
37 +# 2. Adjust CL, OP, and IS to handle 'comma-variants' consistently. | |
38 | |
39 !!chain; | |
40 !!LBCMNoChain; | |
41 @@ -57,14 +56,14 @@ | |
42 # | |
43 | |
44 $AI = [:LineBreak = Ambiguous:]; | |
45 -$AL = [:LineBreak = Alphabetic:]; | |
46 +$AL = [[:LineBreak = Alphabetic:] - [\u23B4\u23B5]]; | |
47 $BA = [:LineBreak = Break_After:]; | |
48 $BB = [:LineBreak = Break_Before:]; | |
49 $BK = [:LineBreak = Mandatory_Break:]; | |
50 $B2 = [:LineBreak = Break_Both:]; | |
51 $CB = [:LineBreak = Contingent_Break:]; | |
52 $CJ = [:LineBreak = Conditional_Japanese_Starter:]; | |
53 -$CL = [:LineBreak = Close_Punctuation:]; | |
54 +$CL = [[:LineBreak = Close_Punctuation:] [\uFE51\uFE10\u23B5]]; | |
55 $CM = [:LineBreak = Combining_Mark:]; | |
56 $CP = [:LineBreak = Close_Parenthesis:]; | |
57 $CR = [:LineBreak = Carriage_Return:]; | |
58 @@ -74,17 +73,17 @@ $HL = [:LineBreak = Hebrew_Letter:]; | |
59 $HY = [:LineBreak = Hyphen:]; | |
60 $H2 = [:LineBreak = H2:]; | |
61 $H3 = [:LineBreak = H3:]; | |
62 -$ID = [:LineBreak = Ideographic:]; | |
63 +$ID = [[[:LineBreak = Ideographic:] $CJ] - [\uFE51]]; | |
64 $IN = [:LineBreak = Inseperable:]; | |
65 -$IS = [:LineBreak = Infix_Numeric:]; | |
66 +$IS = [[:LineBreak = Infix_Numeric:] - [\uFE10]]; | |
67 $JL = [:LineBreak = JL:]; | |
68 $JV = [:LineBreak = JV:]; | |
69 $JT = [:LineBreak = JT:]; | |
70 $LF = [:LineBreak = Line_Feed:]; | |
71 $NL = [:LineBreak = Next_Line:]; | |
72 -$NS = [[:LineBreak = Nonstarter:] $CJ]; | |
73 +$NS = [:LineBreak = Nonstarter:]; | |
74 $NU = [:LineBreak = Numeric:]; | |
75 -$OP = [:LineBreak = Open_Punctuation:]; | |
76 +$OP = [[:LineBreak = Open_Punctuation:] \u23B4]; | |
77 $PO = [:LineBreak = Postfix_Numeric:]; | |
78 $PR = [:LineBreak = Prefix_Numeric:]; | |
79 $QU = [:LineBreak = Quotation:]; | |
OLD | NEW |