| # |
| # Copyright (C) 2016 and later: Unicode, Inc. and others. |
| # License & terms of use: http://www.unicode.org/copyright.html |
| # Copyright (c) 2016, International Business Machines Corporation and others. All Rights Reserved. |
| |
| # file: grapheme.txt |
| # |
| # Reference Grapheme Break rules for intltest rbbi/RBBIMonkeyTest |
| # |
| # |
| # Note: Rule syntax and the monkey test itself are still a work in progress. |
| # They are expected to change with review and the addition of support for rule tailoring. |
| |
| type = grapheme; # one of grapheme | word | line | sentence |
| locale = en; |
| |
| CR = [\p{Grapheme_Cluster_Break = CR}]; |
| LF = [\p{Grapheme_Cluster_Break = LF}]; |
| |
| Control = [[\p{Grapheme_Cluster_Break = Control}]]; |
| Extend = [[\p{Grapheme_Cluster_Break = Extend}]]; |
| ZWJ = [\p{Grapheme_Cluster_Break = ZWJ}]; |
| Regional_Indicator = [\p{Grapheme_Cluster_Break = Regional_Indicator}]; |
| Prepend = [\p{Grapheme_Cluster_Break = Prepend}]; |
| SpacingMark = [\p{Grapheme_Cluster_Break = SpacingMark}]; |
| |
| # |
| # Korean Syllable Definitions |
| # |
| L = [\p{Grapheme_Cluster_Break = L}]; |
| V = [\p{Grapheme_Cluster_Break = V}]; |
| T = [\p{Grapheme_Cluster_Break = T}]; |
| LV = [\p{Grapheme_Cluster_Break = LV}]; |
| LVT = [\p{Grapheme_Cluster_Break = LVT}]; |
| |
| # Emoji defintions |
| |
| Extended_Pict = [:ExtPict:]; |
| |
| # Indic Sequences |
| Virama_ = [[\p{Gujr}\p{sc=Telu}\p{sc=Mlym}\p{sc=Orya}\p{sc=Beng}\p{sc=Deva}] & [\p{Indic_Syllabic_Category=Virama}]]; |
| |
| LinkingConsonant = [[\p{Gujr}\p{sc=Telu}\p{sc=Mlym}\p{sc=Orya}\p{sc=Beng}\p{sc=Deva}] & [\p{Indic_Syllabic_Category=Consonant}]]; |
| |
| ExtCccZwj = [[Extend-[\p{ccc=0}]] ZWJ]; |
| |
| GB3: CR LF; |
| GB4: (Control | CR | LF) ÷; |
| GB5: . ÷ (Control | CR | LF); |
| |
| GB6: L (L | V | LV | LVT); |
| GB7: (LV | V) (V | T); |
| GB8: (LVT | T) T; |
| |
| GB11: Extended_Pict Extend* ZWJ Extended_Pict; |
| GB9c: LinkingConsonant ExtCccZwj* Virama_ ExtCccZwj* LinkingConsonant; |
| GB9: . (Extend | ZWJ); |
| |
| GB9a: . SpacingMark; |
| GB9b: Prepend .; |
| |
| # Regional Indicators, split into pairs. |
| # Note that a pair of RIs that is not followed by a third RI will fall into |
| # the normal rules for Extend, etc. |
| # |
| GB12: Regional_Indicator Regional_Indicator ÷ Regional_Indicator; |
| GB13: Regional_Indicator Regional_Indicator; |
| |
| GB999: . ÷; |