aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike FABIAN <mfabian@redhat.com>2023-06-01 17:02:44 +0200
committerMike FABIAN <mfabian@redhat.com>2023-09-21 10:34:35 +0200
commitaceda10bd5131cf716830827d66da9c671dec649 (patch)
tree85fce5090f9abd310d3a9e0f0e9748d729f98ac8
parent672b91ba1060887aa8897d0b98af83b96d4a52b0 (diff)
downloadglibc-aceda10bd5131cf716830827d66da9c671dec649.tar.xz
glibc-aceda10bd5131cf716830827d66da9c671dec649.zip
Adapt collation in th_TH locale to use the iso14651_t1_common file and sync the collation with CLDR
I made it to agree as much as possible with the rules from CLDR (see: https://github.com/unicode-org/cldr/blob/main/common/collation/th.xml). It seems to be impossible to follow the CLDR rules &[before 1]๚<ฯ # should be "variable" and &๛<ๆ # should be "variable" exactly though. These ask for a primary difference in punctuation characters whose primary weight should be "IGNORE". But using a secondary differnence instead still sorts the test data correctly and the previously used collation in th_TH used tertiary differences for these characters. There was old localedata/th_TH.in test data in TIS-620 encoding which was not used (it was not in the localedata/Makefile). I converted this to UTF-8 and moved it to localedata/th_TH.UTF-8.in and added it to localedata/Makefile. Using the existing collation rules in the th_TH locale did not sort that test file completely correct, I think my new collation rules based on iso14651_t1 are better.
-rw-r--r--localedata/Makefile2
-rw-r--r--localedata/locales/th_TH828
-rw-r--r--localedata/th_TH.UTF-8.in163
3 files changed, 252 insertions, 741 deletions
diff --git a/localedata/Makefile b/localedata/Makefile
index dd41db6d8f..3b9802c84e 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -112,6 +112,7 @@ test-input := \
syr.UTF-8 \
szl_PL.UTF-8 \
tg_TJ.UTF-8 \
+ th_TH.UTF-8 \
tk_TM.UTF-8 \
tr_TR.UTF-8 \
tt_RU.UTF-8 \
@@ -305,6 +306,7 @@ LOCALES := \
syr.UTF-8 \
szl_PL.UTF-8 \
tg_TJ.UTF-8 \
+ th_TH.UTF-8 \
tk_TM.UTF-8 \
tr_TR.ISO-8859-9 \
tr_TR.UTF-8 \
diff --git a/localedata/locales/th_TH b/localedata/locales/th_TH
index 7a10376e80..f97b6bdcb4 100644
--- a/localedata/locales/th_TH
+++ b/localedata/locales/th_TH
@@ -62,750 +62,96 @@ END LC_CTYPE
LC_COLLATE
-collating-element <ko-kai-e> from "<U0E40><U0E01>"
-collating-element <ko-kai-ae> from "<U0E41><U0E01>"
-collating-element <ko-kai-o> from "<U0E42><U0E01>"
-collating-element <ko-kai-ai-maimuan> from "<U0E43><U0E01>"
-collating-element <ko-kai-ai-maimalai> from "<U0E44><U0E01>"
-
-collating-element <kho-khai-e> from "<U0E40><U0E02>"
-collating-element <kho-khai-ae> from "<U0E41><U0E02>"
-collating-element <kho-khai-o> from "<U0E42><U0E02>"
-collating-element <kho-khai-ai-maimuan> from "<U0E43><U0E02>"
-collating-element <kho-khai-ai-maimalai> from "<U0E44><U0E02>"
-
-collating-element <kho-khuat-e> from "<U0E40><U0E03>"
-collating-element <kho-khuat-ae> from "<U0E41><U0E03>"
-collating-element <kho-khuat-o> from "<U0E42><U0E03>"
-collating-element <kho-khuat-ai-maimuan> from "<U0E43><U0E03>"
-collating-element <kho-khuat-ai-maimalai> from "<U0E44><U0E03>"
-
-collating-element <kho-khwai-e> from "<U0E40><U0E04>"
-collating-element <kho-khwai-ae> from "<U0E41><U0E04>"
-collating-element <kho-khwai-o> from "<U0E42><U0E04>"
-collating-element <kho-khwai-ai-maimuan> from "<U0E43><U0E04>"
-collating-element <kho-khwai-ai-maimalai> from "<U0E44><U0E04>"
-
-collating-element <kho-khon-e> from "<U0E40><U0E05>"
-collating-element <kho-khon-ae> from "<U0E41><U0E05>"
-collating-element <kho-khon-o> from "<U0E42><U0E05>"
-collating-element <kho-khon-ai-maimuan> from "<U0E43><U0E05>"
-collating-element <kho-khon-ai-maimalai> from "<U0E44><U0E05>"
-
-collating-element <kho-rakhang-e> from "<U0E40><U0E06>"
-collating-element <kho-rakhang-ae> from "<U0E41><U0E06>"
-collating-element <kho-rakhang-o> from "<U0E42><U0E06>"
-collating-element <kho-rakhang-ai-maimuan> from "<U0E43><U0E06>"
-collating-element <kho-rakhang-ai-maimalai> from "<U0E44><U0E06>"
-
-collating-element <ngo-ngu-e> from "<U0E40><U0E07>"
-collating-element <ngo-ngu-ae> from "<U0E41><U0E07>"
-collating-element <ngo-ngu-o> from "<U0E42><U0E07>"
-collating-element <ngo-ngu-ai-maimuan> from "<U0E43><U0E07>"
-collating-element <ngo-ngu-ai-maimalai> from "<U0E44><U0E07>"
-
-collating-element <cho-chan-e> from "<U0E40><U0E08>"
-collating-element <cho-chan-ae> from "<U0E41><U0E08>"
-collating-element <cho-chan-o> from "<U0E42><U0E08>"
-collating-element <cho-chan-ai-maimuan> from "<U0E43><U0E08>"
-collating-element <cho-chan-ai-maimalai> from "<U0E44><U0E08>"
-
-collating-element <cho-ching-e> from "<U0E40><U0E09>"
-collating-element <cho-ching-ae> from "<U0E41><U0E09>"
-collating-element <cho-ching-o> from "<U0E42><U0E09>"
-collating-element <cho-ching-ai-maimuan> from "<U0E43><U0E09>"
-collating-element <cho-ching-ai-maimalai> from "<U0E44><U0E09>"
-
-collating-element <cho-chang-e> from "<U0E40><U0E0A>"
-collating-element <cho-chang-ae> from "<U0E41><U0E0A>"
-collating-element <cho-chang-o> from "<U0E42><U0E0A>"
-collating-element <cho-chang-ai-maimuan> from "<U0E43><U0E0A>"
-collating-element <cho-chang-ai-maimalai> from "<U0E44><U0E0A>"
-
-collating-element <so-so-e> from "<U0E40><U0E0B>"
-collating-element <so-so-ae> from "<U0E41><U0E0B>"
-collating-element <so-so-o> from "<U0E42><U0E0B>"
-collating-element <so-so-ai-maimuan> from "<U0E43><U0E0B>"
-collating-element <so-so-ai-maimalai> from "<U0E44><U0E0B>"
-
-collating-element <cho-choe-e> from "<U0E40><U0E0C>"
-collating-element <cho-choe-ae> from "<U0E41><U0E0C>"
-collating-element <cho-choe-o> from "<U0E42><U0E0C>"
-collating-element <cho-choe-ai-maimuan> from "<U0E43><U0E0C>"
-collating-element <cho-choe-ai-maimalai> from "<U0E44><U0E0C>"
-
-collating-element <yo-ying-e> from "<U0E40><U0E0D>"
-collating-element <yo-ying-ae> from "<U0E41><U0E0D>"
-collating-element <yo-ying-o> from "<U0E42><U0E0D>"
-collating-element <yo-ying-ai-maimuan> from "<U0E43><U0E0D>"
-collating-element <yo-ying-ai-maimalai> from "<U0E44><U0E0D>"
-
-collating-element <do-chada-e> from "<U0E40><U0E0E>"
-collating-element <do-chada-ae> from "<U0E41><U0E0E>"
-collating-element <do-chada-o> from "<U0E42><U0E0E>"
-collating-element <do-chada-ai-maimuan> from "<U0E43><U0E0E>"
-collating-element <do-chada-ai-maimalai> from "<U0E44><U0E0E>"
-
-collating-element <to-patak-e> from "<U0E40><U0E0F>"
-collating-element <to-patak-ae> from "<U0E41><U0E0F>"
-collating-element <to-patak-o> from "<U0E42><U0E0F>"
-collating-element <to-patak-ai-maimuan> from "<U0E43><U0E0F>"
-collating-element <to-patak-ai-maimalai> from "<U0E44><U0E0F>"
-
-collating-element <tho-than-e> from "<U0E40><U0E10>"
-collating-element <tho-than-ae> from "<U0E41><U0E10>"
-collating-element <tho-than-o> from "<U0E42><U0E10>"
-collating-element <tho-than-ai-maimuan> from "<U0E43><U0E10>"
-collating-element <tho-than-ai-maimalai> from "<U0E44><U0E10>"
-
-collating-element <tho-nangmontho-e> from "<U0E40><U0E11>"
-collating-element <tho-nangmontho-ae> from "<U0E41><U0E11>"
-collating-element <tho-nangmontho-o> from "<U0E42><U0E11>"
-collating-element <tho-nangmontho-ai-maimuan> from "<U0E43><U0E11>"
-collating-element <tho-nangmontho-ai-maimalai> from "<U0E44><U0E11>"
-
-collating-element <tho-phuthao-e> from "<U0E40><U0E12>"
-collating-element <tho-phuthao-ae> from "<U0E41><U0E12>"
-collating-element <tho-phuthao-o> from "<U0E42><U0E12>"
-collating-element <tho-phuthao-ai-maimuan> from "<U0E43><U0E12>"
-collating-element <tho-phuthao-ai-maimalai> from "<U0E44><U0E12>"
-
-collating-element <no-nen-e> from "<U0E40><U0E13>"
-collating-element <no-nen-ae> from "<U0E41><U0E13>"
-collating-element <no-nen-o> from "<U0E42><U0E13>"
-collating-element <no-nen-ai-maimuan> from "<U0E43><U0E13>"
-collating-element <no-nen-ai-maimalai> from "<U0E44><U0E13>"
-
-collating-element <do-dek-e> from "<U0E40><U0E14>"
-collating-element <do-dek-ae> from "<U0E41><U0E14>"
-collating-element <do-dek-o> from "<U0E42><U0E14>"
-collating-element <do-dek-ai-maimuan> from "<U0E43><U0E14>"
-collating-element <do-dek-ai-maimalai> from "<U0E44><U0E14>"
-
-collating-element <to-tao-e> from "<U0E40><U0E15>"
-collating-element <to-tao-ae> from "<U0E41><U0E15>"
-collating-element <to-tao-o> from "<U0E42><U0E15>"
-collating-element <to-tao-ai-maimuan> from "<U0E43><U0E15>"
-collating-element <to-tao-ai-maimalai> from "<U0E44><U0E15>"
-
-collating-element <tho-thung-e> from "<U0E40><U0E16>"
-collating-element <tho-thung-ae> from "<U0E41><U0E16>"
-collating-element <tho-thung-o> from "<U0E42><U0E16>"
-collating-element <tho-thung-ai-maimuan> from "<U0E43><U0E16>"
-collating-element <tho-thung-ai-maimalai> from "<U0E44><U0E16>"
-
-collating-element <tho-thahan-e> from "<U0E40><U0E17>"
-collating-element <tho-thahan-ae> from "<U0E41><U0E17>"
-collating-element <tho-thahan-o> from "<U0E42><U0E17>"
-collating-element <tho-thahan-ai-maimuan> from "<U0E43><U0E17>"
-collating-element <tho-thahan-ai-maimalai> from "<U0E44><U0E17>"
-
-collating-element <tho-thong-e> from "<U0E40><U0E18>"
-collating-element <tho-thong-ae> from "<U0E41><U0E18>"
-collating-element <tho-thong-o> from "<U0E42><U0E18>"
-collating-element <tho-thong-ai-maimuan> from "<U0E43><U0E18>"
-collating-element <tho-thong-ai-maimalai> from "<U0E44><U0E18>"
-
-collating-element <no-nu-e> from "<U0E40><U0E19>"
-collating-element <no-nu-ae> from "<U0E41><U0E19>"
-collating-element <no-nu-o> from "<U0E42><U0E19>"
-collating-element <no-nu-ai-maimuan> from "<U0E43><U0E19>"
-collating-element <no-nu-ai-maimalai> from "<U0E44><U0E19>"
-
-collating-element <bo-baimai-e> from "<U0E40><U0E1A>"
-collating-element <bo-baimai-ae> from "<U0E41><U0E1A>"
-collating-element <bo-baimai-o> from "<U0E42><U0E1A>"
-collating-element <bo-baimai-ai-maimuan> from "<U0E43><U0E1A>"
-collating-element <bo-baimai-ai-maimalai> from "<U0E44><U0E1A>"
-
-collating-element <po-pla-e> from "<U0E40><U0E1B>"
-collating-element <po-pla-ae> from "<U0E41><U0E1B>"
-collating-element <po-pla-o> from "<U0E42><U0E1B>"
-collating-element <po-pla-ai-maimuan> from "<U0E43><U0E1B>"
-collating-element <po-pla-ai-maimalai> from "<U0E44><U0E1B>"
-
-collating-element <pho-phung-e> from "<U0E40><U0E1C>"
-collating-element <pho-phung-ae> from "<U0E41><U0E1C>"
-collating-element <pho-phung-o> from "<U0E42><U0E1C>"
-collating-element <pho-phung-ai-maimuan> from "<U0E43><U0E1C>"
-collating-element <pho-phung-ai-maimalai> from "<U0E44><U0E1C>"
-
-collating-element <fo-fa-e> from "<U0E40><U0E1D>"
-collating-element <fo-fa-ae> from "<U0E41><U0E1D>"
-collating-element <fo-fa-o> from "<U0E42><U0E1D>"
-collating-element <fo-fa-ai-maimuan> from "<U0E43><U0E1D>"
-collating-element <fo-fa-ai-maimalai> from "<U0E44><U0E1D>"
-
-collating-element <pho-phan-e> from "<U0E40><U0E1E>"
-collating-element <pho-phan-ae> from "<U0E41><U0E1E>"
-collating-element <pho-phan-o> from "<U0E42><U0E1E>"
-collating-element <pho-phan-ai-maimuan> from "<U0E43><U0E1E>"
-collating-element <pho-phan-ai-maimalai> from "<U0E44><U0E1E>"
-
-collating-element <fo-fan-e> from "<U0E40><U0E1F>"
-collating-element <fo-fan-ae> from "<U0E41><U0E1F>"
-collating-element <fo-fan-o> from "<U0E42><U0E1F>"
-collating-element <fo-fan-ai-maimuan> from "<U0E43><U0E1F>"
-collating-element <fo-fan-ai-maimalai> from "<U0E44><U0E1F>"
-
-collating-element <pho-samphao-e> from "<U0E40><U0E20>"
-collating-element <pho-samphao-ae> from "<U0E41><U0E20>"
-collating-element <pho-samphao-o> from "<U0E42><U0E20>"
-collating-element <pho-samphao-ai-maimuan> from "<U0E43><U0E20>"
-collating-element <pho-samphao-ai-maimalai> from "<U0E44><U0E20>"
-
-collating-element <mo-ma-e> from "<U0E40><U0E21>"
-collating-element <mo-ma-ae> from "<U0E41><U0E21>"
-collating-element <mo-ma-o> from "<U0E42><U0E21>"
-collating-element <mo-ma-ai-maimuan> from "<U0E43><U0E21>"
-collating-element <mo-ma-ai-maimalai> from "<U0E44><U0E21>"
-
-collating-element <yo-yak-e> from "<U0E40><U0E22>"
-collating-element <yo-yak-ae> from "<U0E41><U0E22>"
-collating-element <yo-yak-o> from "<U0E42><U0E22>"
-collating-element <yo-yak-ai-maimuan> from "<U0E43><U0E22>"
-collating-element <yo-yak-ai-maimalai> from "<U0E44><U0E22>"
-
-collating-element <ro-rua-e> from "<U0E40><U0E23>"
-collating-element <ro-rua-ae> from "<U0E41><U0E23>"
-collating-element <ro-rua-o> from "<U0E42><U0E23>"
-collating-element <ro-rua-ai-maimuan> from "<U0E43><U0E23>"
-collating-element <ro-rua-ai-maimalai> from "<U0E44><U0E23>"
-
-collating-element <lo-ling-e> from "<U0E40><U0E25>"
-collating-element <lo-ling-ae> from "<U0E41><U0E25>"
-collating-element <lo-ling-o> from "<U0E42><U0E25>"
-collating-element <lo-ling-ai-maimuan> from "<U0E43><U0E25>"
-collating-element <lo-ling-ai-maimalai> from "<U0E44><U0E25>"
-
-collating-element <wo-waen-e> from "<U0E40><U0E27>"
-collating-element <wo-waen-ae> from "<U0E41><U0E27>"
-collating-element <wo-waen-o> from "<U0E42><U0E27>"
-collating-element <wo-waen-ai-maimuan> from "<U0E43><U0E27>"
-collating-element <wo-waen-ai-maimalai> from "<U0E44><U0E27>"
-
-collating-element <so-sala-e> from "<U0E40><U0E28>"
-collating-element <so-sala-ae> from "<U0E41><U0E28>"
-collating-element <so-sala-o> from "<U0E42><U0E28>"
-collating-element <so-sala-ai-maimuan> from "<U0E43><U0E28>"
-collating-element <so-sala-ai-maimalai> from "<U0E44><U0E28>"
-
-collating-element <so-rusi-e> from "<U0E40><U0E29>"
-collating-element <so-rusi-ae> from "<U0E41><U0E29>"
-collating-element <so-rusi-o> from "<U0E42><U0E29>"
-collating-element <so-rusi-ai-maimuan> from "<U0E43><U0E29>"
-collating-element <so-rusi-ai-maimalai> from "<U0E44><U0E29>"
-
-collating-element <so-sua-e> from "<U0E40><U0E2A>"
-collating-element <so-sua-ae> from "<U0E41><U0E2A>"
-collating-element <so-sua-o> from "<U0E42><U0E2A>"
-collating-element <so-sua-ai-maimuan> from "<U0E43><U0E2A>"
-collating-element <so-sua-ai-maimalai> from "<U0E44><U0E2A>"
-
-collating-element <ho-hip-e> from "<U0E40><U0E2B>"
-collating-element <ho-hip-ae> from "<U0E41><U0E2B>"
-collating-element <ho-hip-o> from "<U0E42><U0E2B>"
-collating-element <ho-hip-ai-maimuan> from "<U0E43><U0E2B>"
-collating-element <ho-hip-ai-maimalai> from "<U0E44><U0E2B>"
-
-collating-element <lo-chula-e> from "<U0E40><U0E2C>"
-collating-element <lo-chula-ae> from "<U0E41><U0E2C>"
-collating-element <lo-chula-o> from "<U0E42><U0E2C>"
-collating-element <lo-chula-ai-maimuan> from "<U0E43><U0E2C>"
-collating-element <lo-chula-ai-maimalai> from "<U0E44><U0E2C>"
-
-collating-element <o-ang-e> from "<U0E40><U0E2D>"
-collating-element <o-ang-ae> from "<U0E41><U0E2D>"
-collating-element <o-ang-o> from "<U0E42><U0E2D>"
-collating-element <o-ang-ai-maimuan> from "<U0E43><U0E2D>"
-collating-element <o-ang-ai-maimalai> from "<U0E44><U0E2D>"
-
-collating-element <ho-nokhuk-e> from "<U0E40><U0E2E>"
-collating-element <ho-nokhuk-ae> from "<U0E41><U0E2E>"
-collating-element <ho-nokhuk-o> from "<U0E42><U0E2E>"
-collating-element <ho-nokhuk-ai-maimuan> from "<U0E43><U0E2E>"
-collating-element <ho-nokhuk-ai-maimalai> from "<U0E44><U0E2E>"
-
-collating-symbol <BLANK>
-collating-symbol <THAII>
-collating-symbol <CAP>
-collating-symbol <MIN>
-collating-symbol <EXTRA>
-
-order_start forward;forward;forward;forward
-
-% definitions of extra collating symbols
-<BLANK>
-<THAII>
-<CAP>
-<MIN>
-<EXTRA>
-
-UNDEFINED IGNORE;IGNORE;IGNORE;IGNORE
-
-% punctuation marks, ordered after ISO/IEC 14651
-<U0020> IGNORE;IGNORE;<U0020>;IGNORE % SPACE
-<U005F> IGNORE;IGNORE;<U005F>;IGNORE % LOW LINE
-<U002D> IGNORE;IGNORE;<U002D>;IGNORE % HYPHEN-MINUS
-<U002C> IGNORE;IGNORE;<U002C>;IGNORE % COMMA
-<U003B> IGNORE;IGNORE;<U003B>;IGNORE % SEMICOLON
-<U003A> IGNORE;IGNORE;<U003A>;IGNORE % COLON
-<U0021> IGNORE;IGNORE;<U0021>;IGNORE % EXCLAMATION MARK
-<U003F> IGNORE;IGNORE;<U003F>;IGNORE % QUESTION MARK
-<U002F> IGNORE;IGNORE;<U002F>;IGNORE % SOLIDUS
-<U002E> IGNORE;IGNORE;<U002E>;IGNORE % FULL STOP
-<U0E2F> IGNORE;IGNORE;<U0E2F>;IGNORE % THAI CHARACTER PAIYANNOI
-<U0E46> IGNORE;IGNORE;<U0E46>;IGNORE % THAI CHARACTER MAIYAMOK
-<U0060> IGNORE;IGNORE;<U0060>;IGNORE % GRAVE ACCENT
-<U005E> IGNORE;IGNORE;<U005E>;IGNORE % CIRCUMFLEX
-<U007E> IGNORE;IGNORE;<U007E>;IGNORE % TILDE
-<U0027> IGNORE;IGNORE;<U0027>;IGNORE % APOSTROPHE
-<U0022> IGNORE;IGNORE;<U0022>;IGNORE % QUOTATION MARK
-<U0028> IGNORE;IGNORE;<U0028>;IGNORE % LEFT PAREN.
-<U005B> IGNORE;IGNORE;<U005B>;IGNORE % LT BRACKET
-<U007B> IGNORE;IGNORE;<U007B>;IGNORE % LEFT CURLY BRACKET
-<U007D> IGNORE;IGNORE;<U007D>;IGNORE % RIGHT CURLY BRACKET
-<U005D> IGNORE;IGNORE;<U005D>;IGNORE % RT BRACKET
-<U0029> IGNORE;IGNORE;<U0029>;IGNORE % RIGHT PAREN.
-<U0040> IGNORE;IGNORE;<U0040>;IGNORE % COMMERCIAL AT
-<U0E3F> IGNORE;IGNORE;<U0E3F>;IGNORE % THAI CHARACTER SYMBOL BAHT
-<U0024> IGNORE;IGNORE;<U0024>;IGNORE % DOLLAR SIGN
-<U0E4F> IGNORE;IGNORE;<U0E4F>;IGNORE % THAI CHARACTER FONGMAN
-<U0E5A> IGNORE;IGNORE;<U0E5A>;IGNORE % THAI CHARACTER ANGKHANKHU
-<U0E5B> IGNORE;IGNORE;<U0E5B>;IGNORE % THAI CHARACTER KHOMUT
-<U002A> IGNORE;IGNORE;<U002A>;IGNORE % ASTERISK
-<U005C> IGNORE;IGNORE;<U005C>;IGNORE % BACK SOLIDUS
-<U0026> IGNORE;IGNORE;<U0026>;IGNORE % AMPERSAND
-<U0023> IGNORE;IGNORE;<U0023>;IGNORE % NUMBER SIGN
-<U0025> IGNORE;IGNORE;<U0025>;IGNORE % PERCENT
-<U002B> IGNORE;IGNORE;<U002B>;IGNORE % PLUS
-<U003C> IGNORE;IGNORE;<U003C>;IGNORE % LESS THAN
-<U003D> IGNORE;IGNORE;<U003D>;IGNORE % EQUAL
-<U003E> IGNORE;IGNORE;<U003E>;IGNORE % GREATER THAN
-<U007C> IGNORE;IGNORE;<U007C>;IGNORE % VERTICAL LINE
-
-% Thai tone marks and diacritics
-<U0E4E> IGNORE;<U0E4E>;<BLANK>;<BLANK> % THAI CHARACTER YAMAKKAN
-<U0E3A> IGNORE;<U0E3A>;<BLANK>;<BLANK> % THAI CHARACTER PINTHU
-<U0E4C> IGNORE;<U0E4C>;<BLANK>;<BLANK> % THAI CHARACTER THANTHAKHAT
-<U0E47> IGNORE;<U0E47>;<BLANK>;<BLANK> % THAI CHARACTER MAITAIKHU
-<U0E48> IGNORE;<U0E48>;<BLANK>;<BLANK> % THAI CHARACTER MAI EK
-<U0E49> IGNORE;<U0E49>;<BLANK>;<BLANK> % THAI CHARACTER MAI THO
-<U0E4A> IGNORE;<U0E4A>;<BLANK>;<BLANK> % THAI CHARACTER MAI TRI
-<U0E4B> IGNORE;<U0E4B>;<BLANK>;<BLANK> % THAI CHARACTER MAI CHATTAWA
-
-% Arabic and Thai decimal digits
-<U0030> <U0030>;<BLANK>;<BLANK>;<BLANK> % DIGIT ZERO
-<U0E50> <U0030>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT ZERO
-<U0031> <U0031>;<BLANK>;<BLANK>;<BLANK> % DIGIT ONE
-<U0E51> <U0031>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT ONE
-<U0032> <U0032>;<BLANK>;<BLANK>;<BLANK> % DIGIT TWO
-<U0E52> <U0032>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT TWO
-<U0033> <U0033>;<BLANK>;<BLANK>;<BLANK> % DIGIT THREE
-<U0E53> <U0033>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT THREE
-<U0034> <U0034>;<BLANK>;<BLANK>;<BLANK> % DIGIT FOUR
-<U0E54> <U0034>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT FOUR
-<U0035> <U0035>;<BLANK>;<BLANK>;<BLANK> % DIGIT FIVE
-<U0E55> <U0035>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT FIVE
-<U0036> <U0036>;<BLANK>;<BLANK>;<BLANK> % DIGIT SIX
-<U0E56> <U0036>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT SIX
-<U0037> <U0037>;<BLANK>;<BLANK>;<BLANK> % DIGIT SEVEN
-<U0E57> <U0037>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT SEVEN
-<U0038> <U0038>;<BLANK>;<BLANK>;<BLANK> % DIGIT EIGHT
-<U0E58> <U0038>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT EIGHT
-<U0039> <U0039>;<BLANK>;<BLANK>;<BLANK> % DIGIT NINE
-<U0E59> <U0039>;<THAII>;<BLANK>;<BLANK> % THAI DIGIT NINE
-
-% Latin alphabet
-<U0041> <U0041>;<BLANK>;<BLANK>;<CAP> % A
-<U0061> <U0041>;<BLANK>;<BLANK>;<MIN> % a
-<U0042> <U0042>;<BLANK>;<BLANK>;<CAP> % B
-<U0062> <U0042>;<BLANK>;<BLANK>;<MIN> % b
-<U0043> <U0043>;<BLANK>;<BLANK>;<CAP> % C
-<U0063> <U0043>;<BLANK>;<BLANK>;<MIN> % c
-<U0044> <U0044>;<BLANK>;<BLANK>;<CAP> % D
-<U0064> <U0044>;<BLANK>;<BLANK>;<MIN> % d
-<U0045> <U0045>;<BLANK>;<BLANK>;<CAP> % E
-<U0065> <U0045>;<BLANK>;<BLANK>;<MIN> % e
-<U0046> <U0046>;<BLANK>;<BLANK>;<CAP> % F
-<U0066> <U0046>;<BLANK>;<BLANK>;<MIN> % f
-<U0047> <U0047>;<BLANK>;<BLANK>;<CAP> % G
-<U0067> <U0047>;<BLANK>;<BLANK>;<MIN> % g
-<U0048> <U0048>;<BLANK>;<BLANK>;<CAP> % H
-<U0068> <U0048>;<BLANK>;<BLANK>;<MIN> % h
-<U0049> <U0049>;<BLANK>;<BLANK>;<CAP> % I
-<U0069> <U0049>;<BLANK>;<BLANK>;<MIN> % i
-<U004A> <U004A>;<BLANK>;<BLANK>;<CAP> % J
-<U006A> <U004A>;<BLANK>;<BLANK>;<MIN> % j
-<U004B> <U004B>;<BLANK>;<BLANK>;<CAP> % K
-<U006B> <U004B>;<BLANK>;<BLANK>;<MIN> % k
-<U004C> <U004C>;<BLANK>;<BLANK>;<CAP> % L
-<U006C> <U004C>;<BLANK>;<BLANK>;<MIN> % l
-<U004D> <U004D>;<BLANK>;<BLANK>;<CAP> % M
-<U006D> <U004D>;<BLANK>;<BLANK>;<MIN> % m
-<U004E> <U004E>;<BLANK>;<BLANK>;<CAP> % N
-<U006E> <U004E>;<BLANK>;<BLANK>;<MIN> % n
-<U004F> <U004F>;<BLANK>;<BLANK>;<CAP> % O
-<U006F> <U004F>;<BLANK>;<BLANK>;<MIN> % o
-<U0050> <U0050>;<BLANK>;<BLANK>;<CAP> % P
-<U0070> <U0050>;<BLANK>;<BLANK>;<MIN> % p
-<U0051> <U0051>;<BLANK>;<BLANK>;<CAP> % Q
-<U0071> <U0051>;<BLANK>;<BLANK>;<MIN> % q
-<U0052> <U0052>;<BLANK>;<BLANK>;<CAP> % R
-<U0072> <U0052>;<BLANK>;<BLANK>;<MIN> % r
-<U0053> <U0053>;<BLANK>;<BLANK>;<CAP> % S
-<U0073> <U0053>;<BLANK>;<BLANK>;<MIN> % s
-<U0054> <U0054>;<BLANK>;<BLANK>;<CAP> % T
-<U0074> <U0054>;<BLANK>;<BLANK>;<MIN> % t
-<U0055> <U0055>;<BLANK>;<BLANK>;<CAP> % U
-<U0075> <U0055>;<BLANK>;<BLANK>;<MIN> % u
-<U0056> <U0056>;<BLANK>;<BLANK>;<CAP> % V
-<U0076> <U0056>;<BLANK>;<BLANK>;<MIN> % v
-<U0057> <U0057>;<BLANK>;<BLANK>;<CAP> % W
-<U0077> <U0057>;<BLANK>;<BLANK>;<MIN> % w
-<U0058> <U0058>;<BLANK>;<BLANK>;<CAP> % X
-<U0078> <U0058>;<BLANK>;<BLANK>;<MIN> % x
-<U0059> <U0059>;<BLANK>;<BLANK>;<CAP> % Y
-<U0079> <U0059>;<BLANK>;<BLANK>;<MIN> % y
-<U005A> <U005A>;<BLANK>;<BLANK>;<CAP> % Z
-<U007A> <U005A>;<BLANK>;<BLANK>;<MIN> % z
+% Copy the template from ISO/IEC 14651
+copy "iso14651_t1"
+% CLDR collation rules for Thai:
+% (see: https://github.com/unicode-org/cldr/blob/main/common/collation/th.xml)
%
-% Thai consonants, with leading vowels rearrangement
+%[normalization on]
+%[alternate shifted]
+%[reorder Thai]
+% #
+% # The following tailoring is an adjustment of the
+% # DUCET collation order for