golang.org/x/text@v0.14.0/language/testdata/GoLocaleMatcherTest.txt (about)

     1  # basics
     2  fr, en-GB, en ; 	en-GB ; 	en-GB
     3  fr, en-GB, en ; 	en-US ; 	en
     4  fr, en-GB, en ; 	fr-FR ; 	fr
     5  fr, en-GB, en ; 	ja-JP ; 	fr
     6  
     7  # script fallbacks
     8  zh-CN, zh-TW, iw ; 	zh-Hant ; 	zh-TW
     9  zh-CN, zh-TW, iw ; 	zh ; 	zh-CN
    10  zh-CN, zh-TW, iw ; 	zh-Hans-CN ; 	zh-CN
    11  zh-CN, zh-TW, iw ; 	zh-Hant-HK ; 	zh-TW
    12  zh-CN, zh-TW, iw ; 	he-IT ; 	iw ; iw-u-rg-itzzzz
    13  
    14  # language-specific script fallbacks 1
    15  en, sr, nl ; 	sr-Latn ; 	sr
    16  en, sr, nl ; 	sh ; 	sr   # different script, but seems okay and is as CLDR suggests
    17  en, sr, nl ; 	hr ; 	en
    18  en, sr, nl ; 	bs ; 	en
    19  en, sr, nl ; 	nl-Cyrl ; 	sr
    20  
    21  # language-specific script fallbacks 2
    22  en, sh ; 	sr ; 	sh
    23  en, sh ; 	sr-Cyrl ; 	sh
    24  en, sh ; 	hr ; 	sh
    25  
    26  # don't match hr to sr-Latn
    27  en, sr-Latn ; 	hr ; 	en
    28  
    29  # both deprecated and not
    30  fil, tl, iw, he ; 	he-IT ; 	he
    31  fil, tl, iw, he ; 	he ; 	he
    32  fil, tl, iw, he ; 	iw ; 	iw
    33  fil, tl, iw, he ; 	fil-IT ; 	fil
    34  fil, tl, iw, he ; 	fil ; 	fil
    35  fil, tl, iw, he ; 	tl ; 	tl
    36  
    37  # nearby languages
    38  en, fil, ro, nn ; 	tl ; 	fil
    39  en, fil, ro, nn ; 	mo ; 	ro
    40  en, fil, ro, nn ; 	nb ; 	nn
    41  en, fil, ro, nn ; 	ja ; 	en
    42  
    43  # nearby languages: Nynorsk to Bokmål
    44  en, nb ; 	nn ; 	nb
    45  
    46  # nearby languages: Danish does not match nn
    47  en, nn ; 	da ; 	en
    48  
    49  # nearby languages: Danish matches no
    50  en, no ; 	da ; 	no
    51  
    52  # nearby languages: Danish matches nb
    53  en, nb ; 	da ; 	nb
    54  
    55  # prefer matching languages over language variants.
    56  nn, en-GB ; 	no, en-US ; 	en-GB
    57  nn, en-GB ; 	nb, en-US ; 	en-GB
    58  
    59  # deprecated version is closer than same language with other differences
    60  nl, he, en-GB ; 	iw, en-US ; 	he
    61  
    62  # macro equivalent is closer than same language with other differences
    63  nl, zh, en-GB, no ; 	cmn, en-US ; 	zh
    64  nl, zh, en-GB, no ; 	nb, en-US ; 	no
    65  
    66  # legacy equivalent is closer than same language with other differences
    67  nl, fil, en-GB ; 	tl, en-US ; 	fil
    68  
    69  # distinguish near equivalents
    70  en, ro, mo, ro-MD ; 	ro ; 	ro
    71  en, ro, mo, ro-MD ; 	mo ; 	mo
    72  en, ro, mo, ro-MD ; 	ro-MD ; 	ro-MD
    73  
    74  # maximization of legacy
    75  sr-Cyrl, sr-Latn, ro, ro-MD ; 	sh ; 	sr-Latn
    76  sr-Cyrl, sr-Latn, ro, ro-MD ; 	mo ; 	ro-MD
    77  
    78  # empty
    79   ; 	fr ; 	und
    80   ; 	en ; 	und
    81  
    82  # private use subtags
    83  fr, en-GB, x-bork, es-ES, es-419 ; 	x-piglatin ; 	fr
    84  fr, en-GB, x-bork, es-ES, es-419 ; 	x-bork ; 	x-bork
    85  
    86  # grandfathered codes
    87  fr, i-klingon, en-Latn-US ; 	en-GB-oed ; 	en-Latn-US
    88  fr, i-klingon, en-Latn-US ; 	i-klingon ; 	tlh
    89  
    90  
    91  # simple variant match
    92  fr, en-GB, ja, es-ES, es-MX ; 	de, en-US ; 	en-GB
    93  fr, en-GB, ja, es-ES, es-MX ; 	de, zh ; 	fr
    94  
    95  # best match for traditional Chinese
    96  fr, zh-Hans-CN, en-US ; 	zh-TW ; 	zh-Hans-CN
    97  fr, zh-Hans-CN, en-US ; 	zh-Hant ; 	zh-Hans-CN
    98  fr, zh-Hans-CN, en-US ; 	zh-TW, en ; 	en-US
    99  fr, zh-Hans-CN, en-US ; 	zh-Hant-CN, en ; 	en-US
   100  fr, zh-Hans-CN, en-US ; 	zh-Hans, en ; 	zh-Hans-CN
   101  
   102  # more specific script should win in case regions are identical
   103  af, af-Latn, af-Arab ; 	af ; 	af
   104  af, af-Latn, af-Arab ; 	af-ZA ; 	af
   105  af, af-Latn, af-Arab ; 	af-Latn-ZA ; 	af-Latn
   106  af, af-Latn, af-Arab ; 	af-Latn ; 	af-Latn
   107  
   108  # more specific region should win
   109  nl, nl-NL, nl-BE ; 	nl ; 	nl
   110  nl, nl-NL, nl-BE ; 	nl-Latn ; 	nl
   111  nl, nl-NL, nl-BE ; 	nl-Latn-NL ; 	nl-NL
   112  nl, nl-NL, nl-BE ; 	nl-NL ; 	nl-NL
   113  
   114  # region may replace matched if matched is enclosing
   115  es-419,es ; 	es-MX ; 	es-419 ; es-MX
   116  es-419,es ; 	es-SG ; 	es
   117  
   118  # more specific region wins over more specific script
   119  nl, nl-Latn, nl-NL, nl-BE ; 	nl ; 	nl
   120  nl, nl-Latn, nl-NL, nl-BE ; 	nl-Latn ; 	nl-Latn
   121  nl, nl-Latn, nl-NL, nl-BE ; 	nl-NL ; 	nl-NL
   122  nl, nl-Latn, nl-NL, nl-BE ; 	nl-Latn-NL ; 	nl-NL
   123  
   124  # region distance Portuguese
   125  pt, pt-PT ; 	pt-ES ; 	pt-PT
   126  
   127  # if no preferred locale specified, pick top language, not regional
   128  en, fr, fr-CA, fr-CH ; 	fr-US ; 	fr  ; fr-u-rg-uszzzz
   129  
   130  # region distance German
   131  de-AT, de-DE, de-CH ; 	de ; 	de-DE
   132  
   133  # en-AU is closer to en-GB than to en (which is en-US)
   134  en, en-GB, es-ES, es-419 ; 	en-AU ; 	en-GB
   135  en, en-GB, es-ES, es-419 ; 	es-MX ; 	es-419 ; es-MX
   136  en, en-GB, es-ES, es-419 ; 	es-PT ; 	es-ES
   137  
   138  # undefined
   139  it, fr ; 	und ; 	it
   140  
   141  # und does not match en
   142  it, en ; 	und ; 	it
   143  
   144  # undefined in priority list
   145  it, und ; 	und ; 	und
   146  it, und ; 	en ; 	it
   147  
   148  # undefined
   149  it, fr, zh ; 	und-FR ; 	fr
   150  it, fr, zh ; 	und-CN ; 	zh
   151  it, fr, zh ; 	und-Hans ; 	zh
   152  it, fr, zh ; 	und-Hant ; 	zh
   153  it, fr, zh ; 	und-Latn ; 	it
   154  
   155  # match on maximized tag
   156  fr, en-GB, ja, es-ES, es-MX ; 	ja-JP, en-GB ; 	ja
   157  fr, en-GB, ja, es-ES, es-MX ; 	ja-Jpan-JP, en-GB ; 	ja
   158  
   159  # pick best maximized tag
   160  ja, ja-Jpan-US, ja-JP, en, ru ; 	ja-Jpan, ru ; 	ja
   161  ja, ja-Jpan-US, ja-JP, en, ru ; 	ja-JP, ru ; 	ja-JP
   162  ja, ja-Jpan-US, ja-JP, en, ru ; 	ja-US, ru ; 	ja-Jpan-US
   163  
   164  # termination: pick best maximized match
   165  ja, ja-Jpan, ja-JP, en, ru ; 	ja-Jpan-JP, ru ; 	ja-JP
   166  ja, ja-Jpan, ja-JP, en, ru ; 	ja-Jpan, ru ; 	ja-Jpan
   167  
   168  # same language over exact, but distinguish when user is explicit
   169  fr, en-GB, ja, es-ES, es-MX ; 	ja, de ; 	ja
   170  en, de, fr, ja ; 	de-CH, fr ; 	de # TODO: ; de-u-rg-CH
   171  en-GB, nl ; 	en, nl ; en-GB
   172  en-GB, nl ; 	en, nl, en-GB ; nl
   173  
   174  # parent relation preserved
   175  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-150 ; 	en-GB
   176  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-AU ; 	en-GB
   177  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-BE ; 	en-GB
   178  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-GG ; 	en-GB
   179  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-GI ; 	en-GB
   180  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-HK ; 	en-GB
   181  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-IE ; 	en-GB
   182  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-IM ; 	en-GB
   183  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-IN ; 	en-GB
   184  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-JE ; 	en-GB
   185  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-MT ; 	en-GB
   186  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-NZ ; 	en-GB
   187  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-PK ; 	en-GB
   188  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-SG ; 	en-GB
   189  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-DE ; 	en-GB
   190  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	en-MT ; 	en-GB
   191  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-AR ; 	es-419 ; es-AR
   192  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-BO ; 	es-419 ; es-BO
   193  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-CL ; 	es-419 ; es-CL
   194  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-CO ; 	es-419 ; es-CO
   195  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-CR ; 	es-419 ; es-CR
   196  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-CU ; 	es-419 ; es-CU
   197  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-DO ; 	es-419 ; es-DO
   198  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-EC ; 	es-419 ; es-EC
   199  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-GT ; 	es-419 ; es-GT
   200  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-HN ; 	es-419 ; es-HN
   201  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-MX ; 	es-419 ; es-MX
   202  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-NI ; 	es-419 ; es-NI
   203  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-PA ; 	es-419 ; es-PA
   204  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-PE ; 	es-419 ; es-PE
   205  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-PR ; 	es-419 ; es-PR
   206  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-PT ; 	es
   207  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-PY ; 	es-419 ; es-PY
   208  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-SV ; 	es-419 ; es-SV
   209  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-US ; 	es-419
   210  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-UY ; 	es-419 ; es-UY
   211  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	es-VE ; 	es-419 ; es-VE
   212  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	pt-AO ; 	pt-PT
   213  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	pt-CV ; 	pt-PT
   214  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	pt-GW ; 	pt-PT
   215  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	pt-MO ; 	pt-PT
   216  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	pt-MZ ; 	pt-PT
   217  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	pt-ST ; 	pt-PT
   218  en, en-US, en-GB, es, es-419, pt, pt-BR, pt-PT, zh,  zh-Hant, zh-Hant-HK ; 	pt-TL ; 	pt-PT
   219  
   220  # preserve extensions
   221  en, de, sl-nedis ; 	de-FR-u-co-phonebk ; 	de ; de-u-co-phonebk-rg-frzzzz
   222  en, de, sl-nedis ; 	sl-nedis-u-cu-eur ; 	sl-nedis ; sl-nedis-u-cu-eur
   223  en, de, sl-nedis ; 	sl-u-cu-eur ; 	sl-nedis ; sl-nedis-u-cu-eur
   224  en, de, sl-nedis ; 	sl-HR-nedis-u-cu-eur ; 	sl-nedis ; sl-nedis-u-cu-eur-rg-hrzzzz
   225  en, de, sl-nedis ; 	de-t-m0-iso-i0-pinyin ; 	de ; de-t-m0-iso-i0-pinyin
   226  
   227  und, nl ; 	nl-BE-fonipa ; 	nl ; 	nl-u-rg-bezzzz
   228  und, nl-CA ;	nl-BE-fonipa ; 	nl-CA ; 	nl-CA-u-rg-bezzzz
   229  und, nl-fonupa ; 	nl-BE-fonipa ; 	nl-fonupa ; 	nl-fonupa-u-rg-bezzzz
   230  und, no ; 	nn-DK-fonipa ; 	no ; 	no-u-rg-dkzzzz
   231  und, en-GB-u-sd-usca ; 	en-US-fonipa-u-nu-Arab-ca-buddhist-sd-usdc-t-m0-iso-i0-pinyin ; 	en-GB-u-sd-usca ; 	en-GB-t-m0-iso-i0-pinyin-u-ca-buddhist-nu-Arab-rg-uszzzz-sd-usca