about summary refs log tree commit diff
path: root/localedata/locales/fi_FI
diff options
context:
space:
mode:
authorMike FABIAN <mfabian@redhat.com>2017-12-11 18:26:22 +0100
committerMike FABIAN <mfabian@redhat.com>2018-02-27 17:47:50 +0100
commit159738548130d5ac4fe6178977e940ed5f8cfdc4 (patch)
tree03f90b90e7bb794cfdbd4b3e66c9fff7ad6a9b24 /localedata/locales/fi_FI
parentce6636b06b67d6bb9b3d6927bf2a926b9b7478f5 (diff)
downloadglibc-159738548130d5ac4fe6178977e940ed5f8cfdc4.tar.gz
glibc-159738548130d5ac4fe6178977e940ed5f8cfdc4.tar.xz
glibc-159738548130d5ac4fe6178977e940ed5f8cfdc4.zip
Adapt collation in several locales to the new iso14651_t1_common file
[BZ #22550] - es_ES locale (and other es_* locales): collation should
treat ñ as a primary different character, sync the collation
for Spanish with CLDR
[BZ #21547] - Tibetan script collation broken (Dzongkha and Tibetan)

	* localedata/Makefile: Add new test files.
	* localedata/lv_LV.UTF-8.in: Adapt test file to new collation order.
	* localedata/sv_SE.ISO-8859-1.in: Adapt test file to new collation order.
	* localedata/uk_UA.UTF-8.in: Adapt test file to new collation order.
	* localedata/am_ET.UTF-8.in: New test file.
	* localedata/az_AZ.UTF-8.in: Likewise.
	* localedata/be_BY.UTF-8.in: Likewise.
	* localedata/ber_DZ.UTF-8.in: Likewise.
	* localedata/ber_MA.UTF-8.in: Likewise.
	* localedata/bg_BG.UTF-8.in: Likewise.
	* localedata/br_FR.UTF-8.in: Likewise.
	* localedata/cmn_TW.UTF-8.in: Likewise.
	* localedata/crh_UA.UTF-8.in: Likewise.
	* localedata/csb_PL.UTF-8.in: Likewise.
	* localedata/cv_RU.UTF-8.in: Likewise.
	* localedata/cy_GB.UTF-8.in: Likewise.
	* localedata/dz_BT.UTF-8.in: Likewise.
	* localedata/eo.UTF-8.in: Likewise.
	* localedata/es_ES.UTF-8.in: Likewise.
	* localedata/fa_IR.UTF-8.in: Likewise.
	* localedata/fi_FI.UTF-8.in: Likewise.
	* localedata/fil_PH.UTF-8.in: Likewise.
	* localedata/fur_IT.UTF-8.in: Likewise.
	* localedata/gez_ER.UTF-8@abegede.in: Likewise.
	* localedata/ha_NG.UTF-8.in: Likewise.
	* localedata/ig_NG.UTF-8.in: Likewise.
	* localedata/ik_CA.UTF-8.in: Likewise.
	* localedata/kk_KZ.UTF-8.in: Likewise.
	* localedata/ku_TR.UTF-8.in: Likewise.
	* localedata/ky_KG.UTF-8.in: Likewise.
	* localedata/ln_CD.UTF-8.in: Likewise.
	* localedata/mi_NZ.UTF-8.in: Likewise.
	* localedata/ml_IN.UTF-8.in: Likewise.
	* localedata/mn_MN.UTF-8.in: Likewise.
	* localedata/mr_IN.UTF-8.in: Likewise.
	* localedata/mt_MT.UTF-8.in: Likewise.
	* localedata/nb_NO.UTF-8.in: Likewise.
	* localedata/om_KE.UTF-8.in: Likewise.
	* localedata/os_RU.UTF-8.in: Likewise.
	* localedata/ps_AF.UTF-8.in: Likewise.
	* localedata/ro_RO.UTF-8.in: Likewise.
	* localedata/ru_RU.UTF-8.in: Likewise.
	* localedata/sc_IT.UTF-8.in: Likewise.
	* localedata/se_NO.UTF-8.in: Likewise.
	* localedata/sq_AL.UTF-8.in: Likewise.
	* localedata/sv_SE.UTF-8.in: Likewise.
	* localedata/szl_PL.UTF-8.in: Likewise.
	* localedata/tg_TJ.UTF-8.in: Likewise.
	* localedata/tk_TM.UTF-8.in: Likewise.
	* localedata/tt_RU.UTF-8.in: Likewise.
	* localedata/tt_RU.UTF-8@iqtelif.in: Likewise.
	* localedata/ug_CN.UTF-8.in: Likewise.
	* localedata/uz_UZ.UTF-8.in: Likewise.
	* localedata/vi_VN.UTF-8.in: Likewise.
	* localedata/yi_US.UTF-8.in: Likewise.
	* localedata/yo_NG.UTF-8.in: Likewise.
	* localedata/zh_CN.UTF-8.in: Likewise.
	* localedata/locales/am_ET: Adapt collation rules to new iso14651_t1_common
        file and fix bugs in the collation.
	* localedata/locales/az_AZ: Likewise.
	* localedata/locales/be_BY: Likewise.
	* localedata/locales/ber_DZ: Likewise.
	* localedata/locales/ber_MA: Likewise.
	* localedata/locales/bg_BG: Likewise.
	* localedata/locales/br_FR: Likewise.
	* localedata/locales/br_FR@euro: Likewise.
	* localedata/locales/ca_ES: Likewise.
	* localedata/locales/cns11643_stroke: Likewise.
	* localedata/locales/crh_UA: Likewise.
	* localedata/locales/cs_CZ: Likewise.
	* localedata/locales/csb_PL: Likewise.
	* localedata/locales/cv_RU: Likewise.
	* localedata/locales/cy_GB: Likewise.
	* localedata/locales/da_DK: Likewise.
	* localedata/locales/dz_BT: Likewise.
	* localedata/locales/en_CA: Likewise.
	* localedata/locales/eo: Likewise.
	* localedata/locales/es_CU: Likewise.
	* localedata/locales/es_EC: Likewise.
	* localedata/locales/es_ES: Likewise.
	* localedata/locales/es_US: Likewise.
	* localedata/locales/et_EE: Likewise.
	* localedata/locales/fa_IR: Likewise.
	* localedata/locales/fi_FI: Likewise.
	* localedata/locales/fil_PH: Likewise.
	* localedata/locales/fur_IT: Likewise.
	* localedata/locales/gez_ER@abegede: Likewise.
	* localedata/locales/ha_NG: Likewise.
	* localedata/locales/hr_HR: Likewise.
	* localedata/locales/hsb_DE: Likewise.
	* localedata/locales/hu_HU: Likewise.
	* localedata/locales/ig_NG: Likewise.
	* localedata/locales/ik_CA: Likewise.
	* localedata/locales/is_IS: Likewise.
	* localedata/locales/iso14651_t1_pinyin: Likewise.
	* localedata/locales/kk_KZ: Likewise.
	* localedata/locales/ku_TR: Likewise.
	* localedata/locales/ky_KG: Likewise.
	* localedata/locales/ln_CD: Likewise.
	* localedata/locales/lt_LT: Likewise.
	* localedata/locales/lv_LV: Likewise.
	* localedata/locales/mi_NZ: Likewise.
	* localedata/locales/ml_IN: Likewise.
	* localedata/locales/mn_MN: Likewise.
	* localedata/locales/mr_IN: Likewise.
	* localedata/locales/mt_MT: Likewise.
	* localedata/locales/nb_NO: Likewise.
	* localedata/locales/om_KE: Likewise.
	* localedata/locales/os_RU: Likewise.
	* localedata/locales/pl_PL: Likewise.
	* localedata/locales/ps_AF: Likewise.
	* localedata/locales/ro_RO: Likewise.
	* localedata/locales/ru_RU: Likewise.
	* localedata/locales/ru_UA: Likewise.
	* localedata/locales/sc_IT: Likewise.
	* localedata/locales/se_NO: Likewise.
	* localedata/locales/si_LK: Likewise.
	* localedata/locales/sq_AL: Likewise.
	* localedata/locales/sv_FI: Likewise.
	* localedata/locales/sv_FI@euro: Likewise.
	* localedata/locales/sv_SE: Likewise.
	* localedata/locales/szl_PL: Likewise.
	* localedata/locales/tg_TJ: Likewise.
	* localedata/locales/ti_ER: Likewise.
	* localedata/locales/tk_TM: Likewise.
	* localedata/locales/tl_PH: Likewise.
	* localedata/locales/tr_TR: Likewise.
	* localedata/locales/tt_RU: Likewise.
	* localedata/locales/tt_RU@iqtelif: Likewise.
	* localedata/locales/ug_CN: Likewise.
	* localedata/locales/uk_UA: Likewise.
	* localedata/locales/uz_UZ: Likewise.
	* localedata/locales/uz_UZ@cyrillic: Likewise.
	* localedata/locales/vi_VN: Likewise.
	* localedata/locales/yi_US: Likewise.
	* localedata/locales/yo_NG: Likewise.
Diffstat (limited to 'localedata/locales/fi_FI')
-rw-r--r--localedata/locales/fi_FI173
1 files changed, 107 insertions, 66 deletions
diff --git a/localedata/locales/fi_FI b/localedata/locales/fi_FI
index 3fea0aa84b..eeb278316b 100644
--- a/localedata/locales/fi_FI
+++ b/localedata/locales/fi_FI
@@ -58,75 +58,116 @@ END LC_IDENTIFICATION
 LC_COLLATE
 copy "iso14651_t1"
 
+% CLDR collation rules for Finnish:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/collation/fi.xml)
+%
+% <collation type="traditional">
+%   <!-- v and w used to be only secondary-different. -->
+%   <cr><![CDATA[
+%     &D<<ð<<<Ð<<đ<<<Đ
+%     &N<<ŋ<<<Ŋ
+%     &T<<þ/h<<<Þ/h
+%     &V<<w<<<W
+%     &Y<<ü<<<Ü<<ű<<<Ű
+%     &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<ö<<<Ö<<ø<<<Ø<<ő<<<Ő<<õ<<<Õ<<œ<<<Œ
+%   ]]></cr>
+% </collation>
+% <collation type="standard">
+%   <!-- Standard computer ordering: SFS-EN 13710 -->
+%   <cr><![CDATA[
+%     # D and U+0335 COMBINING SHORT STROKE OVERLAY
+%     &D\u0335<<đ<<<Đ  # root order: d\u0335=đ
+%     # G and U+0335
+%     &G\u0335<<ǥ<<<Ǥ
+%     # N and U+0335
+%     &N\u0335<<ŋ<<<Ŋ
+%     # T and U+0335
+%     &T\u0335<<ŧ<<<Ŧ
+%     &Y<<ü<<<Ü
+%     # Z and U+0335
+%     &Z\u0335<<ʒ<<<Ʒ
+%     &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<ö<<<Ö<<ø<<<Ø
+%   ]]></cr>
+% </collation>
+% And CLDR also lists the following
+% index characters:
+% (see: https://unicode.org/cldr/trac/browser/trunk/common/main/fi.xml)
+%
+% <exemplarCharacters type="index">[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Å Ä Ö]</exemplarCharacters>
+%
+% The following rules implement the “standard” order for glibc.
+
 collating-symbol <a-ring>
-collating-symbol <a-diaerisis>
-collating-symbol <o-diaerisis>
+collating-symbol <a-diaeresis>
+collating-symbol <o-diaeresis>
+
+collating-element <d-combining-short-stroke-overlay> from "d<U0335>"
+collating-element <D-combining-short-stroke-overlay> from "D<U0335>"
+collating-element <g-combining-short-stroke-overlay> from "g<U0335>"
+collating-element <G-combining-short-stroke-overlay> from "G<U0335>"
+collating-element <n-combining-short-stroke-overlay> from "n<U0335>"
+collating-element <N-combining-short-stroke-overlay> from "N<U0335>"
+collating-element <t-combining-short-stroke-overlay> from "t<U0335>"
+collating-element <T-combining-short-stroke-overlay> from "T<U0335>"
+collating-element <z-combining-short-stroke-overlay> from "z<U0335>"
+collating-element <Z-combining-short-stroke-overlay> from "Z<U0335>"
 
-reorder-after <z>
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<ö<<<Ö<<ø<<<Ø
+reorder-after <AFTER-LATIN>
 <a-ring>
-<a-diaerisis>
-<o-diaerisis>
-
-reorder-after <U007A>
-<U00E5> <a-ring>;<BAS>;<MIN>;IGNORE
-<U01FB> <a-ring>;<ACA>;<MIN>;IGNORE
-<U00E4> <a-diaerisis>;<BAS>;<MIN>;IGNORE
-<U00E6> <a-diaerisis>;<REU>;<MIN>;IGNORE
-<U01FD> <a-diaerisis>;<U01FD>;<MIN>;IGNORE
-<U01E3> <a-diaerisis>;<MAC>;<MIN>;IGNORE
-<U00F6> <o-diaerisis>;<BAS>;<MIN>;IGNORE
-<U00F8> <o-diaerisis>;<U00D8>;<MIN>;IGNORE
-<U01FF> <o-diaerisis>;<U01FF>;<MIN>;IGNORE
-<U00F5> <o-diaerisis>;<TIL>;<MIN>;IGNORE
-reorder-after <U005A>
-<U00C5> <a-ring>;<BAS>;<CAP>;IGNORE
-<U01FA> <a-ring>;<ACA>;<CAP>;IGNORE
-<U00C4> <a-diaerisis>;<BAS>;<CAP>;IGNORE
-<U00C6> <a-diaerisis>;<REU>;<CAP>;IGNORE
-<U01FC> <a-diaerisis>;<U01FD>;<CAP>;IGNORE
-<U01E2> <a-diaerisis>;<MAC>;<CAP>;IGNORE
-<U00D6> <o-diaerisis>;<BAS>;<CAP>;IGNORE
-<U00D8> <o-diaerisis>;<U00D8>;<CAP>;IGNORE
-<U01FE> <o-diaerisis>;<U01FF>;<CAP>;IGNORE
-<U00D5> <o-diaerisis>;<TIL>;<CAP>;IGNORE
-
-reorder-after <U016B>
-<U0076> <v>;<U0056>;<BAS>;<MIN>
-<U1E7D> <v>;<U0056>;<TIL>;<MIN>
-<U0077> <w>;<U0057>;<BAS>;<MIN>
-<U1E83> <w>;<U0057>;<ACA>;<MIN>
-<U1E81> <w>;<U0057>;<GRA>;<MIN>
-<U0175> <w>;<U0057>;<CIR>;<MIN>
-<U1E85> <w>;<U0057>;<REU>;<MIN>
-<U1E87> <w>;<U0057>;<PCT>;<MIN>
-reorder-after <U016A>
-<U0056> <v>;<U0056>;<BAS>;<CAP>
-<U1E7C> <v>;<U0056>;<TIL>;<CAP>
-<U0057> <w>;<U0057>;<BAS>;<CAP>
-<U1E82> <w>;<U0057>;<ACA>;<CAP>
-<U1E80> <w>;<U0057>;<GRA>;<CAP>
-<U0174> <w>;<U0057>;<CIR>;<CAP>
-<U1E84> <w>;<U0057>;<REU>;<CAP>
-<U1E86> <w>;<U0057>;<PCT>;<CAP>
-
-reorder-after <U00FF>
-<U00FC> <y>;<DTT>;<MIN>;IGNORE
-reorder-after <U0178>
-<U00DC> <y>;<DTT>;<CAP>;IGNORE
-
-%  Present in iso14651_t1, but these definitions seem to have been
-%  removed from latest iso14651 tables.
-reorder-after <U0163>
-<U00FE> "<t><h>";"<LIG><LIG>";"<MIN><MIN>";IGNORE
-reorder-after <U0162>
-<U00DE> "<t><h>";"<LIG><LIG>";"<CAP><CAP>";IGNORE
-
-reorder-after <U0064>
-<U00F0> <d>;<PCL>;<MIN>;IGNORE
-<U0111> <d>;<OBL>;<MIN>;IGNORE
-reorder-after <U0044>
-<U00D0> <d>;<PCL>;<CAP>;IGNORE
-<U0110> <d>;<OBL>;<CAP>;IGNORE
+<a-diaeresis>
+<o-diaeresis>
+
+% # D and U+0335 COMBINING SHORT STROKE OVERLAY
+% &D\u0335<<đ<<<Đ  # root order: d\u0335=đ
+<d-combining-short-stroke-overlay> <S0064>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<D-combining-short-stroke-overlay> <S0064>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U0111> <S0064>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % đ
+<U0110> <S0064>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Đ
+
+% # G and U+0335
+% &G\u0335<<ǥ<<<Ǥ
+<g-combining-short-stroke-overlay> <S0067>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<G-combining-short-stroke-overlay> <S0067>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U01E5> <S0067>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % ǥ
+<U01E4> <S0067>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % Ǥ
+
+% # N and U+0335
+% &N\u0335<<ŋ<<<Ŋ
+<n-combining-short-stroke-overlay> <S014B>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<N-combining-short-stroke-overlay> <S014B>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U014B> <S014B>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % LATIN SMALL LETTER ENG
+<U014A> <S014B>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % LATIN CAPITAL LETTER ENG
+
+% # T and U+0335
+% &T\u0335<<ŧ<<<Ŧ
+<t-combining-short-stroke-overlay> <S0167>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<T-combining-short-stroke-overlay> <S0167>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U0167> <S0167>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % LATIN SMALL LETTER T WITH STROKE
+<U0166> <S0167>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % LATIN CAPITAL LETTER T WITH STROKE
+
+% &Y<<ü<<<Ü
+<U00FC> <S0079>;"<BASE><TREMA>";"<MIN><MIN>";IGNORE % ü
+<U00DC> <S0079>;"<BASE><TREMA>";"<CAP><MIN>";IGNORE % Ü
+
+% # Z and U+0335
+% &Z\u0335<<ʒ<<<Ʒ
+<z-combining-short-stroke-overlay> <S0292>;"<BASE><VRNT1>";"<MIN><MIN>";IGNORE
+<Z-combining-short-stroke-overlay> <S0292>;"<BASE><VRNT1>";"<CAP><MIN>";IGNORE
+<U0292> <S0292>;"<BASE><VRNT2>";"<MIN><MIN>";IGNORE % LATIN SMALL LETTER EZH
+<U01B7> <S0292>;"<BASE><VRNT2>";"<CAP><MIN>";IGNORE % LATIN CAPITAL LETTER EZH
+
+% &[before 1]ǀ<å<<<Å<ä<<<Ä<<æ<<<Æ<ö<<<Ö<<ø<<<Ø
+<U00E5> <a-ring>;"<BASE><BASE>";"<MIN><MIN>";<U00E5> % LATIN SMALL LETTER A WITH RING ABOVE
+<U00C5> <a-ring>;"<BASE><BASE>";"<CAP><MIN>";<U00C5> % LATIN CAPITAL LETTER A WITH RING ABOVE
+<U00E4> <a-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";<U00E4> % LATIN SMALL LETTER A WITH DIAERESIS
+<U00C4> <a-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";<U00C4> % LATIN CAPITAL LETTER A WITH DIAERESIS
+<U00E6> "<a-diaeresis>";"<BASE><VRNT1><BASE>";"<COMPAT><COMPAT><COMPAT>";<U00E6> % LATIN SMALL LETTER AE
+<U00C6> "<a-diaeresis>";"<BASE><VRNT1><BASE>";"<COMPATCAP><COMPAT><COMPATCAP>";<U00C6> % LATIN CAPITAL LETTER AE
+<U00F6> <o-diaeresis>;"<BASE><BASE>";"<MIN><MIN>";<U00F6> % LATIN SMALL LETTER O WITH DIAERESIS
+<U00D6> <o-diaeresis>;"<BASE><BASE>";"<CAP><MIN>";<U00D6> % LATIN CAPITAL LETTER O WITH DIAERESIS
+<U00F8> <o-diaeresis>;"<BASE><OBLIK>";"<MIN><MIN>";<U00F8> % LATIN SMALL LETTER O WITH STROKE
+<U00D8> <o-diaeresis>;"<BASE><OBLIK>";"<CAP><MIN>";<U00D8> % LATIN CAPITAL LETTER O WITH STROKE
 
 reorder-end
 END LC_COLLATE