2 # Copyright (C) 2002-2009, International Business Machines Corporation and others.
7 # ICU Character Break Rules, also known as Grapheme Cluster Boundaries
8 # See Unicode Standard Annex #29.
9 # These rules are based on TR29 Revision 12, for Unicode Version 5.1
13 # Character Class Definitions.
15 $CR = [\p{Grapheme_Cluster_Break = CR}];
16 $LF = [\p{Grapheme_Cluster_Break = LF}];
17 $Control = [\p{Grapheme_Cluster_Break = Control}];
18 $Extend = [\p{Grapheme_Cluster_Break = Extend} - [\u0E30 \u0E32 \u0E45 \u0EB0 \u0EB2]];
19 $SpacingMark = [\p{Grapheme_Cluster_Break = SpacingMark}];
22 # Korean Syllable Definitions
24 $L = [\p{Grapheme_Cluster_Break = L}];
25 $V = [\p{Grapheme_Cluster_Break = V}];
26 $T = [\p{Grapheme_Cluster_Break = T}];
28 $LV = [\p{Grapheme_Cluster_Break = LV}];
29 $LVT = [\p{Grapheme_Cluster_Break = LVT}];
32 ## -------------------------------------------------
39 $L ($L | $V | $LV | $LVT);
43 [^$Control $CR $LF] $Extend;
45 [^$Control $CR $LF] $SpacingMark;
48 ## -------------------------------------------------
52 ($L | $V | $LV | $LVT) $L;
56 $Extend [^$Control $CR $LF];
57 $SpacingMark [^$Control $CR $LF];
60 ## -------------------------------------------------
65 ## -------------------------------------------------