[v4] localedata: Updates for Taiwanese locales [BZ #24409]

Message ID CAP1CgNKgF7_GOr-S=F2bMcOjMae-0h=Q-DToCt2g8DEiJd0xGg@mail.gmail.com
State New
Headers
Series [v4] localedata: Updates for Taiwanese locales [BZ #24409] |

Checks

Context Check Description
dj/TryBot-apply_patch success Patch applied to master at the time it was sent
dj/TryBot-32bit success Build for i686

Commit Message

Wei-Lun Chao Feb. 25, 2022, 9:37 a.m. UTC
  Rationale:
* Header cleanup: make the header of localedata files consistent
* Add (week): add the missing definition of week and first_weekday to 2
* Change (thousands_sep): change the thousands_sep from <U002C> to
<U2009> to avoid confusion of grouping 4 with usual grouping 3
* Extend alt_digits: from 0..59 to 0..99 for lzh_TW
* Add collation: add missing collation used in cmn_TW
* New locale: create yue_TW

Changelog:
* localedata/locales/cmn_TW: Header cleanup; Add (week); Change (thousands_sep).
* localedata/locales/hak_TW: Likewise and add collation.
* localedata/locales/lzh_TW: Likewise and extend alt_digits, add collation.
* localedata/locales/nan_TW: Likewise and add collation.
* localedata/locales/yue_TW: New locale.
  

Comments

Carlos O'Donell March 14, 2022, 10:03 p.m. UTC | #1
On 2/25/22 04:37, Wei-Lun Chao wrote:
> Rationale:
> * Header cleanup: make the header of localedata files consistent
> * Add (week): add the missing definition of week and first_weekday to 2
> * Change (thousands_sep): change the thousands_sep from <U002C> to
> <U2009> to avoid confusion of grouping 4 with usual grouping 3
> * Extend alt_digits: from 0..59 to 0..99 for lzh_TW
> * Add collation: add missing collation used in cmn_TW
> * New locale: create yue_TW

For easier review this needs to be split into a series:

* Some number of easy patches which just make whitespace change that I can approve
  without much review.

* Patch: Add missing definitions.
* Patch: Changes to thousands_sep
* Patch: Extend alt_digits.
* Patch: Add/Change collation.
* Patch: New locale (distinct patch ready for review)

I'll go through below and try to give feedback so you can send updated versions.

All behavioral changes should have justification given in the commit message of
the patch that makes the change. This includes justifying for each locale the
changes in behavior from the previous values, and it may be as simple as:
"Harmonize with CLDR v34." or more complex justification.
 
> Changelog:
> * localedata/locales/cmn_TW: Header cleanup; Add (week); Change (thousands_sep).
> * localedata/locales/hak_TW: Likewise and add collation.
> * localedata/locales/lzh_TW: Likewise and extend alt_digits, add collation.
> * localedata/locales/nan_TW: Likewise and add collation.
> * localedata/locales/yue_TW: New locale.

> From a560b3029ecb060a7ae51205193a433f0f7f9eb7 Mon Sep 17 00:00:00 2001
> From: Wei-Lun Chao <bluebat@member.fsf.org>
> Date: Fri, 25 Feb 2022 17:30:34 +0800
> Subject: [PATCH] localedata: Updates for Taiwanese locales [BZ #24409]
> 
> ---
>  localedata/locales/cmn_TW |  20 ++--
>  localedata/locales/hak_TW |  58 +++++-----
>  localedata/locales/lzh_TW | 153 +++++++++++++++++++-------
>  localedata/locales/nan_TW |  56 +++++-----
>  localedata/locales/yue_TW | 224 ++++++++++++++++++++++++++++++++++++++
>  5 files changed, 408 insertions(+), 103 deletions(-)
>  create mode 100644 localedata/locales/yue_TW
> 
> diff --git a/localedata/locales/cmn_TW b/localedata/locales/cmn_TW
> index b833543944..a9892eabf1 100644
> --- a/localedata/locales/cmn_TW
> +++ b/localedata/locales/cmn_TW
> @@ -8,13 +8,9 @@ escape_char /
>  % exempt you from the conditions of the license if your use would
>  % otherwise be governed by that license.
>  
> -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> -%
>  % Mandarin Chinese locale for the Republic of China
> -%
> +% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
>  % build with: localedef -f UTF-8 -i cmn_TW cmn_TW
> -%
> -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

OK.

>  
>  LC_IDENTIFICATION
>  title        "Mandarin Chinese locale for the Republic of China"
> @@ -26,8 +22,8 @@ tel          ""
>  fax          ""
>  language     "Mandarin Chinese"
>  territory    "Taiwan"
> -revision     "0.2"
> -date         "2017-07-20"
> +revision     "0.3"
> +date         "2021-11-19"

Update date.

>  
>  category "i18n:2012";LC_IDENTIFICATION
>  category "i18n:2012";LC_CTYPE
> @@ -75,7 +71,7 @@ mon           "<U4E00><U6708>";/
>       "<U5341><U6708>";/
>       "<U5341><U4E00><U6708>";/
>       "<U5341><U4E8C><U6708>"
> -%  1月,  2月,  3月,  4月,  5月,  6月,  7月,  8月,  9月, 10月, 11月, 12月
> +% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月

OK.

>  abmon         " 1<U6708>";/
>         " 2<U6708>";/
>         " 3<U6708>";/
> @@ -117,6 +113,8 @@ am_pm         "<U4E0A><U5348>";/
>  t_fmt_ampm    "%p %I<U9EDE>%M<U5206>%S<U79D2>"
>  % %Y年 %b %-d號 %A %H:%M:%S %Z
>  date_fmt      "%Y<U5E74> %b %-d<U865F> %A %H:%M:%S %Z"
> +week 7;19971130;1

Needs justification in commit message comment.

This is a change in behaviour from 7;19971130;7 to *;*;1, why
do you change the day number required for the first week of the year?

> +first_weekday 2

Needs justification in commit message comment.

This is a change in behaviour from first_weekday == 1 (default)
which is a Sunday to 2 which is a Monday.

You must provide justification that this is correct, preferrably
with a link to CLDR data that shows the change in CLDR. We want
to harmonize towards CLDR.

>  
>  era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
>      "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
> @@ -125,7 +123,7 @@ END LC_TIME
>  
>  LC_NUMERIC
>  decimal_point "."
> -thousands_sep ","
> +thousands_sep "<U2009>"

What is CLDR doing upstream?

>  grouping      4
>  END LC_NUMERIC
>  
> @@ -133,7 +131,7 @@ LC_MONETARY
>  currency_symbol    "NT$"
>  int_curr_symbol    "TWD "
>  mon_decimal_point  "."
> -mon_thousands_sep  ","
> +mon_thousands_sep  "<U2009>"

What is CLDR doing upstream?

>  mon_grouping       4
>  positive_sign      ""
>  negative_sign      "-"
> @@ -194,7 +192,7 @@ country_post "TW"
>  country_ab2  "TW"
>  country_ab3  "TWN"
>  country_num  158
> -country_car "RC"
> +country_car  "RC"

Avoid whitespace changes in a logical patch series that covers another issue.

Alternatively split this out into a single patch to fix whitespace and I can accept that.

>  country_isbn 957
>  % 漢語官話
>  lang_name    "<U6F22><U8A9E><U5B98><U8A71>"
> diff --git a/localedata/locales/hak_TW b/localedata/locales/hak_TW
> index 77708081bb..67efcb37f7 100644
> --- a/localedata/locales/hak_TW
> +++ b/localedata/locales/hak_TW
> @@ -8,13 +8,9 @@ escape_char /
>  % exempt you from the conditions of the license if your use would
>  % otherwise be governed by that license.
>  
> -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> -%
>  % Hakka Chinese locale for the Republic of China
> -%
> +% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
>  % build with: localedef -f UTF-8 -i hak_TW hak_TW
> -%
> -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>  
>  LC_IDENTIFICATION
>  title        "Hakka Chinese locale for the Republic of China"
> @@ -26,8 +22,8 @@ tel          ""
>  fax          ""
>  language     "Hakka Chinese"
>  territory    "Taiwan"
> -revision     "0.1"
> -date         "2013-06-02"
> +revision     "0.2"
> +date         "2021-11-19"

Update date.

>  
>  category "i18n:2012";LC_IDENTIFICATION
>  category "i18n:2012";LC_CTYPE
> @@ -45,17 +41,20 @@ END LC_IDENTIFICATION
>  
>  LC_CTYPE
>  copy "i18n"
> +translit_start
> +include "translit_combining";""
> +translit_end
> +
>  class	"hanzi"; /
>  <U3007>;/
>  <U3400>..<U4DBF>;/
>  <U4E00>..<U9FA5>;/
>  <UF900>..<UFA6A>;/
> -<U00020000>..<U0002A6D6>;/

OK. This starts at CJK Ideograph Extension B... and ends randomly
just before CJK Ideograph Extension C starts.

> -<U0002F800>..<U0002FA1D>
> +<U00020000>..<U0002FA1D>

OK. This covers CJK Ideograph Extension B all the way through to
the last entry of CJK COMPATIBILITY IDEOGRAPH.

Is this the expected behaviour for Hanzi character class?

>  END LC_CTYPE
>  
>  LC_COLLATE
> -copy "iso14651_t1"
> +copy "cns11643_stroke"

This changes collation to match cmn_TW.

>  END LC_COLLATE
>  
>  LC_TIME
> @@ -72,7 +71,7 @@ mon           "<U4E00><U6708>";/
>       "<U5341><U6708>";/
>       "<U5341><U4E00><U6708>";/
>       "<U5341><U4E8C><U6708>"
> -%  1月,  2月,  3月,  4月,  5月,  6月,  7月,  8月,  9月, 10月, 11月, 12月
> +% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月

This is whitespace change and we should keep this out of normal changes to avoid
confusion.

>  abmon         " 1<U6708>";/
>         " 2<U6708>";/
>         " 3<U6708>";/
> @@ -101,19 +100,20 @@ abday         "<U65E5>";/
>         "<U56DB>";/
>         "<U4E94>";/
>         "<U516D>"
> -% %Y年%m月%d日 (%A) %H點%M分%S秒
> -d_t_fmt       "%Y<U5E74>%m<U6708>%d<U65E5> (%A) %H<U9EDE>%M<U5206>%S<U79D2>"
> -% %Y年%m月%d日
> -d_fmt         "%Y<U5E74>%m<U6708>%d<U65E5>"
> +% %Y年%m月%d號 (%A) %H點%M分%S秒
> +d_t_fmt       "%Y<U5E74>%m<U6708>%d<U865F> (%A) %H<U9EDE>%M<U5206>%S<U79D2>"

Needs justification.

> +% %Y年%m月%d號
> +d_fmt         "%Y<U5E74>%m<U6708>%d<U865F>"

Likewise. It could be split out into another patch justifying U865F usage.

>  % %H點%M分%S秒
>  t_fmt         "%H<U9EDE>%M<U5206>%S<U79D2>"
>  % 上晝, 下晝
>  am_pm         "<U4E0A><U665D>";"<U4E0B><U665D>"
>  % %p %I點%M分%S秒
>  t_fmt_ampm    "%p %I<U9EDE>%M<U5206>%S<U79D2>"
> -% %Y年 %b %e日 %A %H:%M:%S %Z
> -date_fmt      "%Y<U5E74> %b %e<U65E5> %A %H:%M:%S %Z"
> +% %Y年 %b %-d號 %A %H:%M:%S %Z
> +date_fmt      "%Y<U5E74> %b %-d<U865F> %A %H:%M:%S %Z"

This changes the format and needs justification.

>  week 7;19971130;1
> +first_weekday 2

Needs justification.

>  
>  era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
>      "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
> @@ -122,7 +122,7 @@ END LC_TIME
>  
>  LC_NUMERIC
>  decimal_point "."
> -thousands_sep ","
> +thousands_sep "<U2009>"

Needs justification.

>  grouping      4
>  END LC_NUMERIC
>  
> @@ -130,7 +130,7 @@ LC_MONETARY
>  currency_symbol    "NT$"
>  int_curr_symbol    "TWD "
>  mon_decimal_point  "."
> -mon_thousands_sep  ","
> +mon_thousands_sep  "<U2009>"

Needs justification.

>  mon_grouping       4
>  positive_sign      ""
>  negative_sign      "-"
> @@ -151,18 +151,22 @@ int_n_sign_posn    1
>  END LC_MONETARY
>  
>  LC_PAPER
> -copy "i18n"
> +height 297
> +width  210

Needs justification.

>  END LC_PAPER
>  
>  LC_MEASUREMENT
> -copy "i18n"
> +% metric
> +measurement 1

Needs justification.

>  END LC_MEASUREMENT
>  
>  LC_MESSAGES
> -% ^[+1yYyY係]
> -yesexpr "^[+1yY<UFF59><UFF39><U4FC2>]"
> -% ^[-0nNnN毋]
> -noexpr  "^[-0nN<UFF4E><UFF2E><U6BCB>]"
> +yesexpr "^[+1yY<UFF59><UFF39><U662F>]"
> +noexpr  "^[-0nN<UFF4E><UFF2E><U4E0D><U5426>]"

Removes comment with UTF-8 expression. Please add them back adjusted to match.

Please provide justification.

> +% 係
> +yesstr  "<U4FC2>"
> +% 毋係
> +nostr   "<U6BCB><U4FC2>"

OK. New strings.

>  END LC_MESSAGES
>  
>  LC_NAME
> @@ -189,8 +193,8 @@ country_ab3  "TWN"
>  country_num  158
>  country_car "RC"
>  country_isbn 957
> -% 客家語
> -lang_name    "<U5BA2><U5BB6><U8A71>"
> +% 漢語客家語
> +lang_name    "<U6F22><U8A9E><U5BA2><U5BB6><U8A9E>"

Needs justification.

>  lang_term    "hak"
>  lang_lib     "hak"
>  END LC_ADDRESS
> diff --git a/localedata/locales/lzh_TW b/localedata/locales/lzh_TW
> index 26f30b8a52..9e5bc0414a 100644
> --- a/localedata/locales/lzh_TW
> +++ b/localedata/locales/lzh_TW
> @@ -8,13 +8,9 @@ escape_char /
>  % exempt you from the conditions of the license if your use would
>  % otherwise be governed by that license.
>  
> -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> -%
>  % Literary Chinese locale for the Republic of China
> -%
> +% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
>  % build with: localedef -f UTF-8 -i lzh_TW lzh_TW
> -%
> -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>  
>  LC_IDENTIFICATION
>  title        "Literary Chinese locale for the Republic of China"
> @@ -26,8 +22,8 @@ tel          ""
>  fax          ""
>  language     "Literary Chinese"
>  territory    "Taiwan"
> -revision     "0.1"
> -date         "2013-06-02"
> +revision     "0.2"
> +date         "2021-11-19"
>  
>  category "i18n:2012";LC_IDENTIFICATION
>  category "i18n:2012";LC_CTYPE
> @@ -45,17 +41,20 @@ END LC_IDENTIFICATION
>  
>  LC_CTYPE
>  copy "i18n"
> +translit_start
> +include "translit_combining";""
> +translit_end
> +
>  class	"hanzi"; /
>  <U3007>;/
>  <U3400>..<U4DBF>;/
>  <U4E00>..<U9FA5>;/
>  <UF900>..<UFA6A>;/
> -<U00020000>..<U0002A6D6>;/
> -<U0002F800>..<U0002FA1D>
> +<U00020000>..<U0002FA1D>
>  END LC_CTYPE
>  
>  LC_COLLATE
> -copy "iso14651_t1"
> +copy "cns11643_stroke"
>  END LC_COLLATE
>  
>  LC_TIME
> @@ -72,17 +71,17 @@ mon           "<U4E00><U6708>";/
>       "<U5341><U6708>";/
>       "<U5341><U4E00><U6708>";/
>       "<U5341><U4E8C><U6708>"
> -%  一 ,  二 ,  三 ,  四 ,  五 ,  六 ,  七 ,  八 ,  九 ,  十 , 十一, 十二
> -abmon         " <U4E00> ";/
> -       " <U4E8C> ";/
> -       " <U4E09> ";/
> -       " <U56DB> ";/
> -       " <U4E94> ";/
> -       " <U516D> ";/
> -       " <U4E03> ";/
> -       " <U516B> ";/
> -       " <U4E5D> ";/
> -       " <U5341> ";/
> +% 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, 九月, 十月, 十一, 十二
> +abmon         "<U4E00><U6708>";/
> +       "<U4E8C><U6708>";/
> +       "<U4E09><U6708>";/
> +       "<U56DB><U6708>";/
> +       "<U4E94><U6708>";/
> +       "<U516D><U6708>";/
> +       "<U4E03><U6708>";/
> +       "<U516B><U6708>";/
> +       "<U4E5D><U6708>";/
> +       "<U5341><U6708>";/
>         "<U5341><U4E00>";/
>         "<U5341><U4E8C>"
>  % 週日, 週一, 週二, 週三, 週四, 週五, 週六
> @@ -101,19 +100,22 @@ abday         "<U65E5>";/
>         "<U56DB>";/
>         "<U4E94>";/
>         "<U516D>"
> -% %OC%Oy年%B%Od日 (%A) %OH時%OM分%OS秒
> -d_t_fmt       "%OC%Oy<U5E74>%B%Od<U65E5> (%A) %OH<U6642>%OM<U5206>%OS<U79D2>"
> -% %OC%Oy年%B%Od日
> -d_fmt         "%OC%Oy<U5E74>%B%Od<U65E5>"
> +% %Y年%B%Od (%A) %OH時%OM分%OS秒
> +d_t_fmt       "%Y<U5E74>%B%Od (%A) %OH<U6642>%OM<U5206>%OS<U79D2>"
> +% %Y年%B%Od
> +d_fmt         "%Y<U5E74>%B%Od"
>  % %OH時%OM分%OS秒
>  t_fmt         "%OH<U6642>%OM<U5206>%OS<U79D2>"
>  % 朝, 暮
> -am_pm         "<U671D>";"<U66AE>"
> +am_pm         "<U671D>";/
> +       "<U66AE>"
>  % %p %OI時%OM分%OS秒
>  t_fmt_ampm    "%p %OI<U6642>%OM<U5206>%OS<U79D2>"
> -% 公曆 %C%Oy年 %B %Oe日 %A %OH時%OM分%OS秒
> -date_fmt      "<U516C><U66C6> %C%Oy<U5E74> %B %Oe<U65E5> %A %OH<U6642>%OM<U5206>%OS<U79D2>"
> -% 〇, 一, 二, 三, 四, 五, 六, 七, 八, 九, 十, 十一, 十二, 十三, 十四, 十五, 十六, 十七, 十八, 十九, 廿, 廿一, 廿二, 廿三, 廿四, 廿五, 廿六, 廿七, 廿八, 廿九, 卅, 卅一
> +% 公曆 %Y年 %B %Oe %A %OH時%OM分%OS秒
> +date_fmt      "<U516C><U66C6> %Y<U5E74> %B %Oe %A %OH<U6642>%OM<U5206>%OS<U79D2>"
> +% 〇, 一, 二, 三, 四, 五, 六, 七, 八, 九, 十, 十一, 十二, 十三, 十四, 十五, 十六, 十七, 十八, 十九, 二十, 廿一, 廿二, 廿三, 廿四, 廿五, 廿六, 廿七, 廿八, 廿九, 三十, 卅一,
> +% 卅二, 卅三, 卅四, 卅五, 卅六, 卅七, 卅八, 卅九, 四十, 四十一, 四十二, 四十三, 四十四, 四十五, 四十六, 四十七, 四十八, 四十九, 五十, 五十一, 五十二, 五十三, 五十四, 五十五, 五十六, 五十七, 五十八, 五十九,
> +% 六十, 六十一, 六十二, 六十三, 六十四, 六十五, 六十六, 六十七, 六十八, 六十九, 七十, 七十一, 七十二, 七十三, 七十四, 七十五, 七十六, 七十七, 七十八, 七十九, 八十, 八十一, 八十二, 八十三, 八十四, 八十五, 八十六, 八十七, 八十八, 八十九, 九十, 九十一, 九十二, 九十三, 九十四, 九十五, 九十六, 九十七, 九十八, 九十九
>  alt_digits    "<U3007>";/
>              "<U4E00>";/
>              "<U4E8C>";/
> @@ -134,7 +136,7 @@ alt_digits    "<U3007>";/
>              "<U5341><U4E03>";/
>              "<U5341><U516B>";/
>              "<U5341><U4E5D>";/
> -            "<U5EFF>";/
> +            "<U4E8C><U5341>";/
>              "<U5EFF><U4E00>";/
>              "<U5EFF><U4E8C>";/
>              "<U5EFF><U4E09>";/
> @@ -144,10 +146,79 @@ alt_digits    "<U3007>";/
>              "<U5EFF><U4E03>";/
>              "<U5EFF><U516B>";/
>              "<U5EFF><U4E5D>";/
> -            "<U5345>";/
> -            "<U5345><U4E00>"
> +            "<U4E09><U5341>";/
> +            "<U5345><U4E00>";/
> +            "<U5345><U4E8C>";/
> +            "<U5345><U4E09>";/
> +            "<U5345><U56DB>";/
> +            "<U5345><U4E94>";/
> +            "<U5345><U516D>";/
> +            "<U5345><U4E03>";/
> +            "<U5345><U516B>";/
> +            "<U5345><U4E5D>";/
> +            "<U56DB><U5341>";/
> +            "<U56DB><U5341><U4E00>";/
> +            "<U56DB><U5341><U4E8C>";/
> +            "<U56DB><U5341><U4E09>";/
> +            "<U56DB><U5341><U56DB>";/
> +            "<U56DB><U5341><U4E94>";/
> +            "<U56DB><U5341><U516D>";/
> +            "<U56DB><U5341><U4E03>";/
> +            "<U56DB><U5341><U516B>";/
> +            "<U56DB><U5341><U4E5D>";/
> +            "<U4E94><U5341>";/
> +            "<U4E94><U5341><U4E00>";/
> +            "<U4E94><U5341><U4E8C>";/
> +            "<U4E94><U5341><U4E09>";/
> +            "<U4E94><U5341><U56DB>";/
> +            "<U4E94><U5341><U4E94>";/
> +            "<U4E94><U5341><U516D>";/
> +            "<U4E94><U5341><U4E03>";/
> +            "<U4E94><U5341><U516B>";/
> +            "<U4E94><U5341><U4E5D>";/
> +            "<U516D><U5341>";/
> +            "<U516D><U5341><U4E00>";/
> +            "<U516D><U5341><U4E8C>";/
> +            "<U516D><U5341><U4E09>";/
> +            "<U516D><U5341><U56DB>";/
> +            "<U516D><U5341><U4E94>";/
> +            "<U516D><U5341><U516D>";/
> +            "<U516D><U5341><U4E03>";/
> +            "<U516D><U5341><U516B>";/
> +            "<U516D><U5341><U4E5D>";/
> +            "<U4E03><U5341>";/
> +            "<U4E03><U5341><U4E00>";/
> +            "<U4E03><U5341><U4E8C>";/
> +            "<U4E03><U5341><U4E09>";/
> +            "<U4E03><U5341><U56DB>";/
> +            "<U4E03><U5341><U4E94>";/
> +            "<U4E03><U5341><U516D>";/
> +            "<U4E03><U5341><U4E03>";/
> +            "<U4E03><U5341><U516B>";/
> +            "<U4E03><U5341><U4E5D>";/
> +            "<U516B><U5341>";/
> +            "<U516B><U5341><U4E00>";/
> +            "<U516B><U5341><U4E8C>";/
> +            "<U516B><U5341><U4E09>";/
> +            "<U516B><U5341><U56DB>";/
> +            "<U516B><U5341><U4E94>";/
> +            "<U516B><U5341><U516D>";/
> +            "<U516B><U5341><U4E03>";/
> +            "<U516B><U5341><U516B>";/
> +            "<U516B><U5341><U4E5D>";/
> +            "<U4E5D><U5341>";/
> +            "<U4E5D><U5341><U4E00>";/
> +            "<U4E5D><U5341><U4E8C>";/
> +            "<U4E5D><U5341><U4E09>";/
> +            "<U4E5D><U5341><U56DB>";/
> +            "<U4E5D><U5341><U4E94>";/
> +            "<U4E5D><U5341><U516D>";/
> +            "<U4E5D><U5341><U4E03>";/
> +            "<U4E5D><U5341><U516B>";/
> +            "<U4E5D><U5341><U4E5D>"
>  %
>  week 7;19971130;1
> +first_weekday 2
>  
>  era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
>      "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
> @@ -156,7 +227,7 @@ END LC_TIME
>  
>  LC_NUMERIC
>  decimal_point "."
> -thousands_sep ","
> +thousands_sep "<U2009>"
>  grouping      4
>  END LC_NUMERIC
>  
> @@ -164,7 +235,7 @@ LC_MONETARY
>  currency_symbol    "NT$"
>  int_curr_symbol    "TWD "
>  mon_decimal_point  "."
> -mon_thousands_sep  ","
> +mon_thousands_sep  "<U2009>"
>  mon_grouping       4
>  positive_sign      ""
>  negative_sign      "-"
> @@ -185,18 +256,22 @@ int_n_sign_posn    1
>  END LC_MONETARY
>  
>  LC_PAPER
> -copy "i18n"
> +height 297
> +width  210
>  END LC_PAPER
>  
>  LC_MEASUREMENT
> -copy "i18n"
> +% metric
> +measurement 1
>  END LC_MEASUREMENT
>  
>  LC_MESSAGES
> -% ^[+1yYyY是]
>  yesexpr "^[+1yY<UFF59><UFF39><U662F>]"
> -% ^[-0nNnN非]
> -noexpr  "^[-0nN<UFF4E><UFF2E><U975E>]"
> +noexpr  "^[-0nN<UFF4E><UFF2E><U4E0D><U5426>]"
> +% 是
> +yesstr  "<U662F>"
> +% 否
> +nostr   "<U5426>"
>  END LC_MESSAGES
>  
>  LC_NAME
> diff --git a/localedata/locales/nan_TW b/localedata/locales/nan_TW
> index d59295fd12..432ba6ac4a 100644
> --- a/localedata/locales/nan_TW
> +++ b/localedata/locales/nan_TW
> @@ -8,13 +8,9 @@ escape_char /
>  % exempt you from the conditions of the license if your use would
>  % otherwise be governed by that license.
>  
> -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> -%
>  % Min Nan Chinese locale for the Republic of China
> -%
> +% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
>  % build with: localedef -f UTF-8 -i nan_TW nan_TW
> -%
> -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>  
>  LC_IDENTIFICATION
>  title        "Min Nan Chinese locale for the Republic of China"
> @@ -26,8 +22,8 @@ tel          ""
>  fax          ""
>  language     "Min Nan Chinese"
>  territory    "Taiwan"
> -revision     "0.1"
> -date         "2013-06-02"
> +revision     "0.2"
> +date         "2021-11-19"
>  
>  category "i18n:2012";LC_IDENTIFICATION
>  category "i18n:2012";LC_CTYPE
> @@ -45,17 +41,20 @@ END LC_IDENTIFICATION
>  
>  LC_CTYPE
>  copy "i18n"
> +translit_start
> +include "translit_combining";""
> +translit_end
> +
>  class	"hanzi"; /
>  <U3007>;/
>  <U3400>..<U4DBF>;/
>  <U4E00>..<U9FA5>;/
>  <UF900>..<UFA6A>;/
> -<U00020000>..<U0002A6D6>;/
> -<U0002F800>..<U0002FA1D>
> +<U00020000>..<U0002FA1D>
>  END LC_CTYPE
>  
>  LC_COLLATE
> -copy "iso14651_t1"
> +copy "cns11643_stroke"
>  END LC_COLLATE
>  
>  LC_TIME
> @@ -72,7 +71,7 @@ mon           "<U4E00><U6708>";/
>       "<U5341><U6708>";/
>       "<U5341><U4E00><U6708>";/
>       "<U5341><U4E8C><U6708>"
> -%  1月,  2月,  3月,  4月,  5月,  6月,  7月,  8月,  9月, 10月, 11月, 12月
> +% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
>  abmon         " 1<U6708>";/
>         " 2<U6708>";/
>         " 3<U6708>";/
> @@ -101,10 +100,10 @@ abday         "<U65E5>";/
>         "<U56DB>";/
>         "<U4E94>";/
>         "<U516D>"
> -% %Y年%m月%d日 (%A) %H點%M分%S秒
> -d_t_fmt       "%Y<U5E74>%m<U6708>%d<U65E5> (%A) %H<U9EDE>%M<U5206>%S<U79D2>"
> -% %Y年%m月%d日
> -d_fmt         "%Y<U5E74>%m<U6708>%d<U65E5>"
> +% %Y年%m月%d號 (%A) %H點%M分%S秒
> +d_t_fmt       "%Y<U5E74>%m<U6708>%d<U865F> (%A) %H<U9EDE>%M<U5206>%S<U79D2>"
> +% %Y年%m月%d號
> +d_fmt         "%Y<U5E74>%m<U6708>%d<U865F>"
>  % %H點%M分%S秒
>  t_fmt         "%H<U9EDE>%M<U5206>%S<U79D2>"
>  % 頂晡, 下晡
> @@ -112,9 +111,10 @@ am_pm         "<U9802><U6661>";/
>         "<U4E0B><U6661>"
>  % %p %I點%M分%S秒
>  t_fmt_ampm    "%p %I<U9EDE>%M<U5206>%S<U79D2>"
> -% %Y年 %b %e日 %A %H:%M:%S %Z
> -date_fmt      "%Y<U5E74> %b %e<U65E5> %A %H:%M:%S %Z"
> +% %Y年 %b %-d號 %A %H:%M:%S %Z
> +date_fmt      "%Y<U5E74> %b %-d<U865F> %A %H:%M:%S %Z"
>  week 7;19971130;1
> +first_weekday 2
>  
>  era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
>      "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
> @@ -123,7 +123,7 @@ END LC_TIME
>  
>  LC_NUMERIC
>  decimal_point "."
> -thousands_sep ","
> +thousands_sep "<U2009>"
>  grouping      4
>  END LC_NUMERIC
>  
> @@ -131,7 +131,7 @@ LC_MONETARY
>  currency_symbol    "NT$"
>  int_curr_symbol    "TWD "
>  mon_decimal_point  "."
> -mon_thousands_sep  ","
> +mon_thousands_sep  "<U2009>"
>  mon_grouping       4
>  positive_sign      ""
>  negative_sign      "-"
> @@ -152,18 +152,22 @@ int_n_sign_posn    1
>  END LC_MONETARY
>  
>  LC_PAPER
> -copy "i18n"
> +height 297
> +width  210
>  END LC_PAPER
>  
>  LC_MEASUREMENT
> -copy "i18n"
> +% metric
> +measurement 1
>  END LC_MEASUREMENT
>  
>  LC_MESSAGES
> -% ^[+1yYyY是]
>  yesexpr "^[+1yY<UFF59><UFF39><U662F>]"
> -% ^[-0nNnN伓]
> -noexpr  "^[-0nN<UFF4E><UFF2E><U4F13>]"
> +noexpr  "^[-0nN<UFF4E><UFF2E><U4E0D><U5426>]"
> +% 是
> +yesstr  "<U662F>"
> +% 毋是
> +nostr   "<U6BCB><U662F>"
>  END LC_MESSAGES
>  
>  LC_NAME
> @@ -190,8 +194,8 @@ country_ab3  "TWN"
>  country_num  158
>  country_car "RC"
>  country_isbn 957
> -% 閩南語
> -lang_name    "<U95A9><U5357><U8A9E>"
> +% 漢語閩南語
> +lang_name    "<U6F22><U8A9E><U95A9><U5357><U8A9E>"
>  lang_term    "nan"
>  lang_lib     "nan"
>  END LC_ADDRESS
> diff --git a/localedata/locales/yue_TW b/localedata/locales/yue_TW
> new file mode 100644
> index 0000000000..cac0a7137a
> --- /dev/null
> +++ b/localedata/locales/yue_TW
> @@ -0,0 +1,224 @@
> +comment_char %
> +escape_char /
> +
> +% This file is part of the GNU C Library and contains locale data.
> +% The Free Software Foundation does not claim any copyright interest
> +% in the locale data contained in this file.  The foregoing does not
> +% affect the license of the GNU C Library as a whole.  It does not
> +% exempt you from the conditions of the license if your use would
> +% otherwise be governed by that license.
> +
> +% Yue Chinese locale for the Republic of China
> +% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
> +% build with: localedef -f UTF-8 -i yue_TW yue_TW
> +
> +LC_IDENTIFICATION
> +title      "Yue Chinese locale for the Republic of China"
> +source     ""
> +address    ""
> +contact    ""
> +email      "bug-glibc-locales@gnu.org"
> +tel        ""
> +fax        ""
> +language   "Yue Chinese"
> +territory  "Taiwan"
> +revision   "0.1"
> +date       "2021-11-19"
> +
> +category "i18n:2012";LC_IDENTIFICATION
> +category "i18n:2012";LC_CTYPE
> +category "i18n:2012";LC_COLLATE
> +category "i18n:2012";LC_TIME
> +category "i18n:2012";LC_NUMERIC
> +category "i18n:2012";LC_MONETARY
> +category "i18n:2012";LC_MESSAGES
> +category "i18n:2012";LC_PAPER
> +category "i18n:2012";LC_NAME
> +category "i18n:2012";LC_ADDRESS
> +category "i18n:2012";LC_TELEPHONE
> +category "i18n:2012";LC_MEASUREMENT
> +END LC_IDENTIFICATION
> +
> +LC_CTYPE
> +copy "i18n"
> +translit_start
> +include "translit_combining";""
> +translit_end
> +
> +class	"hanzi"; /
> +<U3007>;/
> +<U3400>..<U4DBF>;/
> +<U4E00>..<U9FA5>;/
> +<UF900>..<UFA6A>;/
> +<U00020000>..<U0002FA1D>
> +END LC_CTYPE
> +
> +LC_COLLATE
> +copy "cns11643_stroke"
> +END LC_COLLATE
> +
> +LC_NUMERIC
> +decimal_point "."
> +thousands_sep "<U2009>"
> +grouping      4
> +END LC_NUMERIC
> +
> +LC_MONETARY
> +currency_symbol    "NT$"
> +int_curr_symbol    "TWD "
> +mon_decimal_point  "."
> +mon_thousands_sep  "<U2009>"
> +mon_grouping       4
> +positive_sign      ""
> +negative_sign      "-"
> +frac_digits        2
> +int_frac_digits    2
> +p_cs_precedes      1
> +p_sep_by_space     0
> +n_cs_precedes      1
> +n_sep_by_space     0
> +p_sign_posn        1
> +n_sign_posn        1
> +int_p_cs_precedes  1
> +int_p_sep_by_space 0
> +int_n_cs_precedes  1
> +int_n_sep_by_space 0
> +int_p_sign_posn    1
> +int_n_sign_posn    1
> +END LC_MONETARY
> +
> +LC_TIME
> +% This is the POSIX Locale definition for the LC_TIME category.
> +% These are generated based on XML base Locale difintion file
> +% for IBM Class for Unicode/Java
> +% 日, 一, 二, 三, 四, 五, 六
> +abday       "<U65E5>";"<U4E00>";/
> +            "<U4E8C>";"<U4E09>";/
> +            "<U56DB>";"<U4E94>";/
> +            "<U516D>"
> +%
> +% Full weekday names (%A)
> +% 禮拜日, 禮拜一, 禮拜二, 禮拜三, 禮拜四, 禮拜五, 禮拜六
> +day           "<U79AE><U62DC><U65E5>";/
> +     "<U79AE><U62DC><U4E00>";/
> +     "<U79AE><U62DC><U4E8C>";/
> +     "<U79AE><U62DC><U4E09>";/
> +     "<U79AE><U62DC><U56DB>";/
> +     "<U79AE><U62DC><U4E94>";/
> +     "<U79AE><U62DC><U516D>"
> +%
> +% Abbreviated month names (%b)
> +abmon         " 1<U6708>";/
> +       " 2<U6708>";/
> +       " 3<U6708>";/
> +       " 4<U6708>";/
> +       " 5<U6708>";/
> +       " 6<U6708>";/
> +       " 7<U6708>";/
> +       " 8<U6708>";/
> +       " 9<U6708>";/
> +       "10<U6708>";/
> +       "11<U6708>";/
> +       "12<U6708>"
> +%
> +% Full month names (%B)
> +mon         "<U4E00><U6708>";"<U4E8C><U6708>";/
> +            "<U4E09><U6708>";"<U56DB><U6708>";/
> +            "<U4E94><U6708>";"<U516D><U6708>";/
> +            "<U4E03><U6708>";"<U516B><U6708>";/
> +            "<U4E5D><U6708>";"<U5341><U6708>";/
> +            "<U5341><U4E00><U6708>";"<U5341><U4E8C><U6708>"
> +%
> +% Equivalent of AM PM
> +% 上晝;下晝
> +am_pm       "<U4E0A><U665D>";"<U4E0B><U665D>"
> +%
> +% Appropriate date and time representation
> +% %Y年%m月%d號 %A %H點%M分%S秒
> +d_t_fmt     "%Y<U5E74>%m<U6708>%d<U865F> %A %H<U9EDE>%M<U5206>%S<U79D2>"
> +%
> +% Appropriate date representation
> +% %Y年%m月%d號 %A
> +d_fmt       "%Y<U5E74>%m<U6708>%d<U865F> %A"
> +%
> +% Appropriate time representation
> +% %H點%M分%S秒
> +t_fmt       "%H<U9EDE>%M<U5206>%S<U79D2>"
> +%
> +% Appropriate 12 h time representation
> +% %p%I點%M分%S秒
> +t_fmt_ampm  "%p%I<U9EDE>%M<U5206>/
> +%S<U79D2>"
> +%
> +% Appropriate date representation (date(1))
> +% %Y年 %b %e日 %A %H:%M:%S %Z
> +date_fmt       "%Y<U5E74> %b /
> +%e<U65E5> %A %H/
> +:%M:%S %Z"
> +%  FIXME: found in CLDR
> +week 7;19971130;1
> +first_weekday 2
> +
> +era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
> +    "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
> +    "+:1:1911//12//31:-*:<U6C11><U524D>:%EC%Ey<U5E74>"
> +END LC_TIME
> +
> +LC_MESSAGES
> +yesexpr "^[+1yY<UFF59><UFF39><U662F>]"
> +noexpr  "^[-0nN<UFF4E><UFF2E><U4E0D><U5426>]"
> +yesstr  "<U4FC2>"
> +nostr   "<U6BCB><U4FC2>"
> +END LC_MESSAGES
> +
> +LC_PAPER
> +height 297
> +width  210
> +END LC_PAPER
> +
> +LC_MEASUREMENT
> +% metric
> +measurement 1
> +END LC_MEASUREMENT
> +
> +LC_NAME
> +name_fmt  "%f%t%g%t%d"
> +% 君
> +name_gen  "<U541B>"
> +% 姑娘
> +name_miss "<U59D1><U5A18>"
> +% 生
> +name_mr   "<U751F>"
> +% 太
> +name_mrs  "<U592A>"
> +% 女士
> +name_ms   "<U5973><U58EB>"
> +END LC_NAME
> +
> +LC_ADDRESS
> +% This is the ISO_IEC TR14652 Locale definition for the
> +% LC_ADDRESS
> +% postal_fmt: "%c%T%s%h%N%b%e%r%N%f%N%d%N%a"
> +postal_fmt  "%c%T%s%h/
> +%N%b%e%r%N/
> +%f%N%d%N%a"
> +% 中華民國
> +country_name "<U4E2D><U83EF><U6C11><U570B>"
> +country_post "TW"
> +country_ab2  "TW"
> +country_ab3  "TWN"
> +country_num  158
> +country_car  "RC"
> +country_isbn 957
> +% 漢語粵語
> +lang_name "<U6F22><U8A9E><U7CB5><U8A9E>"
> +lang_term    "yue"
> +lang_lib     "yue"
> +END LC_ADDRESS
> +
> +LC_TELEPHONE
> +tel_int_fmt "+%c-%a-%l"
> +tel_dom_fmt "%A-%l"
> +int_select  "00"
> +int_prefix  "886"
> +END LC_TELEPHONE
> -- 
> 2.35.1
>
  

Patch

From a560b3029ecb060a7ae51205193a433f0f7f9eb7 Mon Sep 17 00:00:00 2001
From: Wei-Lun Chao <bluebat@member.fsf.org>
Date: Fri, 25 Feb 2022 17:30:34 +0800
Subject: [PATCH] localedata: Updates for Taiwanese locales [BZ #24409]

---
 localedata/locales/cmn_TW |  20 ++--
 localedata/locales/hak_TW |  58 +++++-----
 localedata/locales/lzh_TW | 153 +++++++++++++++++++-------
 localedata/locales/nan_TW |  56 +++++-----
 localedata/locales/yue_TW | 224 ++++++++++++++++++++++++++++++++++++++
 5 files changed, 408 insertions(+), 103 deletions(-)
 create mode 100644 localedata/locales/yue_TW

diff --git a/localedata/locales/cmn_TW b/localedata/locales/cmn_TW
index b833543944..a9892eabf1 100644
--- a/localedata/locales/cmn_TW
+++ b/localedata/locales/cmn_TW
@@ -8,13 +8,9 @@  escape_char /
 % exempt you from the conditions of the license if your use would
 % otherwise be governed by that license.
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
 % Mandarin Chinese locale for the Republic of China
-%
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
 % build with: localedef -f UTF-8 -i cmn_TW cmn_TW
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 LC_IDENTIFICATION
 title        "Mandarin Chinese locale for the Republic of China"
@@ -26,8 +22,8 @@  tel          ""
 fax          ""
 language     "Mandarin Chinese"
 territory    "Taiwan"
-revision     "0.2"
-date         "2017-07-20"
+revision     "0.3"
+date         "2021-11-19"
 
 category "i18n:2012";LC_IDENTIFICATION
 category "i18n:2012";LC_CTYPE
@@ -75,7 +71,7 @@  mon           "<U4E00><U6708>";/
      "<U5341><U6708>";/
      "<U5341><U4E00><U6708>";/
      "<U5341><U4E8C><U6708>"
-%  1月,  2月,  3月,  4月,  5月,  6月,  7月,  8月,  9月, 10月, 11月, 12月
+% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
 abmon         " 1<U6708>";/
        " 2<U6708>";/
        " 3<U6708>";/
@@ -117,6 +113,8 @@  am_pm         "<U4E0A><U5348>";/
 t_fmt_ampm    "%p %I<U9EDE>%M<U5206>%S<U79D2>"
 % %Y年 %b %-d號 %A %H:%M:%S %Z
 date_fmt      "%Y<U5E74> %b %-d<U865F> %A %H:%M:%S %Z"
+week 7;19971130;1
+first_weekday 2
 
 era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
     "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
@@ -125,7 +123,7 @@  END LC_TIME
 
 LC_NUMERIC
 decimal_point "."
-thousands_sep ","
+thousands_sep "<U2009>"
 grouping      4
 END LC_NUMERIC
 
@@ -133,7 +131,7 @@  LC_MONETARY
 currency_symbol    "NT$"
 int_curr_symbol    "TWD "
 mon_decimal_point  "."
-mon_thousands_sep  ","
+mon_thousands_sep  "<U2009>"
 mon_grouping       4
 positive_sign      ""
 negative_sign      "-"
@@ -194,7 +192,7 @@  country_post "TW"
 country_ab2  "TW"
 country_ab3  "TWN"
 country_num  158
-country_car "RC"
+country_car  "RC"
 country_isbn 957
 % 漢語官話
 lang_name    "<U6F22><U8A9E><U5B98><U8A71>"
diff --git a/localedata/locales/hak_TW b/localedata/locales/hak_TW
index 77708081bb..67efcb37f7 100644
--- a/localedata/locales/hak_TW
+++ b/localedata/locales/hak_TW
@@ -8,13 +8,9 @@  escape_char /
 % exempt you from the conditions of the license if your use would
 % otherwise be governed by that license.
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
 % Hakka Chinese locale for the Republic of China
-%
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
 % build with: localedef -f UTF-8 -i hak_TW hak_TW
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 LC_IDENTIFICATION
 title        "Hakka Chinese locale for the Republic of China"
@@ -26,8 +22,8 @@  tel          ""
 fax          ""
 language     "Hakka Chinese"
 territory    "Taiwan"
-revision     "0.1"
-date         "2013-06-02"
+revision     "0.2"
+date         "2021-11-19"
 
 category "i18n:2012";LC_IDENTIFICATION
 category "i18n:2012";LC_CTYPE
@@ -45,17 +41,20 @@  END LC_IDENTIFICATION
 
 LC_CTYPE
 copy "i18n"
+translit_start
+include "translit_combining";""
+translit_end
+
 class	"hanzi"; /
 <U3007>;/
 <U3400>..<U4DBF>;/
 <U4E00>..<U9FA5>;/
 <UF900>..<UFA6A>;/
-<U00020000>..<U0002A6D6>;/
-<U0002F800>..<U0002FA1D>
+<U00020000>..<U0002FA1D>
 END LC_CTYPE
 
 LC_COLLATE
-copy "iso14651_t1"
+copy "cns11643_stroke"
 END LC_COLLATE
 
 LC_TIME
@@ -72,7 +71,7 @@  mon           "<U4E00><U6708>";/
      "<U5341><U6708>";/
      "<U5341><U4E00><U6708>";/
      "<U5341><U4E8C><U6708>"
-%  1月,  2月,  3月,  4月,  5月,  6月,  7月,  8月,  9月, 10月, 11月, 12月
+% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
 abmon         " 1<U6708>";/
        " 2<U6708>";/
        " 3<U6708>";/
@@ -101,19 +100,20 @@  abday         "<U65E5>";/
        "<U56DB>";/
        "<U4E94>";/
        "<U516D>"
-% %Y年%m月%d日 (%A) %H點%M分%S秒
-d_t_fmt       "%Y<U5E74>%m<U6708>%d<U65E5> (%A) %H<U9EDE>%M<U5206>%S<U79D2>"
-% %Y年%m月%d日
-d_fmt         "%Y<U5E74>%m<U6708>%d<U65E5>"
+% %Y年%m月%d號 (%A) %H點%M分%S秒
+d_t_fmt       "%Y<U5E74>%m<U6708>%d<U865F> (%A) %H<U9EDE>%M<U5206>%S<U79D2>"
+% %Y年%m月%d號
+d_fmt         "%Y<U5E74>%m<U6708>%d<U865F>"
 % %H點%M分%S秒
 t_fmt         "%H<U9EDE>%M<U5206>%S<U79D2>"
 % 上晝, 下晝
 am_pm         "<U4E0A><U665D>";"<U4E0B><U665D>"
 % %p %I點%M分%S秒
 t_fmt_ampm    "%p %I<U9EDE>%M<U5206>%S<U79D2>"
-% %Y年 %b %e日 %A %H:%M:%S %Z
-date_fmt      "%Y<U5E74> %b %e<U65E5> %A %H:%M:%S %Z"
+% %Y年 %b %-d號 %A %H:%M:%S %Z
+date_fmt      "%Y<U5E74> %b %-d<U865F> %A %H:%M:%S %Z"
 week 7;19971130;1
+first_weekday 2
 
 era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
     "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
@@ -122,7 +122,7 @@  END LC_TIME
 
 LC_NUMERIC
 decimal_point "."
-thousands_sep ","
+thousands_sep "<U2009>"
 grouping      4
 END LC_NUMERIC
 
@@ -130,7 +130,7 @@  LC_MONETARY
 currency_symbol    "NT$"
 int_curr_symbol    "TWD "
 mon_decimal_point  "."
-mon_thousands_sep  ","
+mon_thousands_sep  "<U2009>"
 mon_grouping       4
 positive_sign      ""
 negative_sign      "-"
@@ -151,18 +151,22 @@  int_n_sign_posn    1
 END LC_MONETARY
 
 LC_PAPER
-copy "i18n"
+height 297
+width  210
 END LC_PAPER
 
 LC_MEASUREMENT
-copy "i18n"
+% metric
+measurement 1
 END LC_MEASUREMENT
 
 LC_MESSAGES
-% ^[+1yYyY係]
-yesexpr "^[+1yY<UFF59><UFF39><U4FC2>]"
-% ^[-0nNnN毋]
-noexpr  "^[-0nN<UFF4E><UFF2E><U6BCB>]"
+yesexpr "^[+1yY<UFF59><UFF39><U662F>]"
+noexpr  "^[-0nN<UFF4E><UFF2E><U4E0D><U5426>]"
+% 係
+yesstr  "<U4FC2>"
+% 毋係
+nostr   "<U6BCB><U4FC2>"
 END LC_MESSAGES
 
 LC_NAME
@@ -189,8 +193,8 @@  country_ab3  "TWN"
 country_num  158
 country_car "RC"
 country_isbn 957
-% 客家語
-lang_name    "<U5BA2><U5BB6><U8A71>"
+% 漢語客家語
+lang_name    "<U6F22><U8A9E><U5BA2><U5BB6><U8A9E>"
 lang_term    "hak"
 lang_lib     "hak"
 END LC_ADDRESS
diff --git a/localedata/locales/lzh_TW b/localedata/locales/lzh_TW
index 26f30b8a52..9e5bc0414a 100644
--- a/localedata/locales/lzh_TW
+++ b/localedata/locales/lzh_TW
@@ -8,13 +8,9 @@  escape_char /
 % exempt you from the conditions of the license if your use would
 % otherwise be governed by that license.
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
 % Literary Chinese locale for the Republic of China
-%
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
 % build with: localedef -f UTF-8 -i lzh_TW lzh_TW
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 LC_IDENTIFICATION
 title        "Literary Chinese locale for the Republic of China"
@@ -26,8 +22,8 @@  tel          ""
 fax          ""
 language     "Literary Chinese"
 territory    "Taiwan"
-revision     "0.1"
-date         "2013-06-02"
+revision     "0.2"
+date         "2021-11-19"
 
 category "i18n:2012";LC_IDENTIFICATION
 category "i18n:2012";LC_CTYPE
@@ -45,17 +41,20 @@  END LC_IDENTIFICATION
 
 LC_CTYPE
 copy "i18n"
+translit_start
+include "translit_combining";""
+translit_end
+
 class	"hanzi"; /
 <U3007>;/
 <U3400>..<U4DBF>;/
 <U4E00>..<U9FA5>;/
 <UF900>..<UFA6A>;/
-<U00020000>..<U0002A6D6>;/
-<U0002F800>..<U0002FA1D>
+<U00020000>..<U0002FA1D>
 END LC_CTYPE
 
 LC_COLLATE
-copy "iso14651_t1"
+copy "cns11643_stroke"
 END LC_COLLATE
 
 LC_TIME
@@ -72,17 +71,17 @@  mon           "<U4E00><U6708>";/
      "<U5341><U6708>";/
      "<U5341><U4E00><U6708>";/
      "<U5341><U4E8C><U6708>"
-%  一 ,  二 ,  三 ,  四 ,  五 ,  六 ,  七 ,  八 ,  九 ,  十 , 十一, 十二
-abmon         " <U4E00> ";/
-       " <U4E8C> ";/
-       " <U4E09> ";/
-       " <U56DB> ";/
-       " <U4E94> ";/
-       " <U516D> ";/
-       " <U4E03> ";/
-       " <U516B> ";/
-       " <U4E5D> ";/
-       " <U5341> ";/
+% 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, 九月, 十月, 十一, 十二
+abmon         "<U4E00><U6708>";/
+       "<U4E8C><U6708>";/
+       "<U4E09><U6708>";/
+       "<U56DB><U6708>";/
+       "<U4E94><U6708>";/
+       "<U516D><U6708>";/
+       "<U4E03><U6708>";/
+       "<U516B><U6708>";/
+       "<U4E5D><U6708>";/
+       "<U5341><U6708>";/
        "<U5341><U4E00>";/
        "<U5341><U4E8C>"
 % 週日, 週一, 週二, 週三, 週四, 週五, 週六
@@ -101,19 +100,22 @@  abday         "<U65E5>";/
        "<U56DB>";/
        "<U4E94>";/
        "<U516D>"
-% %OC%Oy年%B%Od日 (%A) %OH時%OM分%OS秒
-d_t_fmt       "%OC%Oy<U5E74>%B%Od<U65E5> (%A) %OH<U6642>%OM<U5206>%OS<U79D2>"
-% %OC%Oy年%B%Od日
-d_fmt         "%OC%Oy<U5E74>%B%Od<U65E5>"
+% %Y年%B%Od (%A) %OH時%OM分%OS秒
+d_t_fmt       "%Y<U5E74>%B%Od (%A) %OH<U6642>%OM<U5206>%OS<U79D2>"
+% %Y年%B%Od
+d_fmt         "%Y<U5E74>%B%Od"
 % %OH時%OM分%OS秒
 t_fmt         "%OH<U6642>%OM<U5206>%OS<U79D2>"
 % 朝, 暮
-am_pm         "<U671D>";"<U66AE>"
+am_pm         "<U671D>";/
+       "<U66AE>"
 % %p %OI時%OM分%OS秒
 t_fmt_ampm    "%p %OI<U6642>%OM<U5206>%OS<U79D2>"
-% 公曆 %C%Oy年 %B %Oe日 %A %OH時%OM分%OS秒
-date_fmt      "<U516C><U66C6> %C%Oy<U5E74> %B %Oe<U65E5> %A %OH<U6642>%OM<U5206>%OS<U79D2>"
-% 〇, 一, 二, 三, 四, 五, 六, 七, 八, 九, 十, 十一, 十二, 十三, 十四, 十五, 十六, 十七, 十八, 十九, 廿, 廿一, 廿二, 廿三, 廿四, 廿五, 廿六, 廿七, 廿八, 廿九, 卅, 卅一
+% 公曆 %Y年 %B %Oe %A %OH時%OM分%OS秒
+date_fmt      "<U516C><U66C6> %Y<U5E74> %B %Oe %A %OH<U6642>%OM<U5206>%OS<U79D2>"
+% 〇, 一, 二, 三, 四, 五, 六, 七, 八, 九, 十, 十一, 十二, 十三, 十四, 十五, 十六, 十七, 十八, 十九, 二十, 廿一, 廿二, 廿三, 廿四, 廿五, 廿六, 廿七, 廿八, 廿九, 三十, 卅一,
+% 卅二, 卅三, 卅四, 卅五, 卅六, 卅七, 卅八, 卅九, 四十, 四十一, 四十二, 四十三, 四十四, 四十五, 四十六, 四十七, 四十八, 四十九, 五十, 五十一, 五十二, 五十三, 五十四, 五十五, 五十六, 五十七, 五十八, 五十九,
+% 六十, 六十一, 六十二, 六十三, 六十四, 六十五, 六十六, 六十七, 六十八, 六十九, 七十, 七十一, 七十二, 七十三, 七十四, 七十五, 七十六, 七十七, 七十八, 七十九, 八十, 八十一, 八十二, 八十三, 八十四, 八十五, 八十六, 八十七, 八十八, 八十九, 九十, 九十一, 九十二, 九十三, 九十四, 九十五, 九十六, 九十七, 九十八, 九十九
 alt_digits    "<U3007>";/
             "<U4E00>";/
             "<U4E8C>";/
@@ -134,7 +136,7 @@  alt_digits    "<U3007>";/
             "<U5341><U4E03>";/
             "<U5341><U516B>";/
             "<U5341><U4E5D>";/
-            "<U5EFF>";/
+            "<U4E8C><U5341>";/
             "<U5EFF><U4E00>";/
             "<U5EFF><U4E8C>";/
             "<U5EFF><U4E09>";/
@@ -144,10 +146,79 @@  alt_digits    "<U3007>";/
             "<U5EFF><U4E03>";/
             "<U5EFF><U516B>";/
             "<U5EFF><U4E5D>";/
-            "<U5345>";/
-            "<U5345><U4E00>"
+            "<U4E09><U5341>";/
+            "<U5345><U4E00>";/
+            "<U5345><U4E8C>";/
+            "<U5345><U4E09>";/
+            "<U5345><U56DB>";/
+            "<U5345><U4E94>";/
+            "<U5345><U516D>";/
+            "<U5345><U4E03>";/
+            "<U5345><U516B>";/
+            "<U5345><U4E5D>";/
+            "<U56DB><U5341>";/
+            "<U56DB><U5341><U4E00>";/
+            "<U56DB><U5341><U4E8C>";/
+            "<U56DB><U5341><U4E09>";/
+            "<U56DB><U5341><U56DB>";/
+            "<U56DB><U5341><U4E94>";/
+            "<U56DB><U5341><U516D>";/
+            "<U56DB><U5341><U4E03>";/
+            "<U56DB><U5341><U516B>";/
+            "<U56DB><U5341><U4E5D>";/
+            "<U4E94><U5341>";/
+            "<U4E94><U5341><U4E00>";/
+            "<U4E94><U5341><U4E8C>";/
+            "<U4E94><U5341><U4E09>";/
+            "<U4E94><U5341><U56DB>";/
+            "<U4E94><U5341><U4E94>";/
+            "<U4E94><U5341><U516D>";/
+            "<U4E94><U5341><U4E03>";/
+            "<U4E94><U5341><U516B>";/
+            "<U4E94><U5341><U4E5D>";/
+            "<U516D><U5341>";/
+            "<U516D><U5341><U4E00>";/
+            "<U516D><U5341><U4E8C>";/
+            "<U516D><U5341><U4E09>";/
+            "<U516D><U5341><U56DB>";/
+            "<U516D><U5341><U4E94>";/
+            "<U516D><U5341><U516D>";/
+            "<U516D><U5341><U4E03>";/
+            "<U516D><U5341><U516B>";/
+            "<U516D><U5341><U4E5D>";/
+            "<U4E03><U5341>";/
+            "<U4E03><U5341><U4E00>";/
+            "<U4E03><U5341><U4E8C>";/
+            "<U4E03><U5341><U4E09>";/
+            "<U4E03><U5341><U56DB>";/
+            "<U4E03><U5341><U4E94>";/
+            "<U4E03><U5341><U516D>";/
+            "<U4E03><U5341><U4E03>";/
+            "<U4E03><U5341><U516B>";/
+            "<U4E03><U5341><U4E5D>";/
+            "<U516B><U5341>";/
+            "<U516B><U5341><U4E00>";/
+            "<U516B><U5341><U4E8C>";/
+            "<U516B><U5341><U4E09>";/
+            "<U516B><U5341><U56DB>";/
+            "<U516B><U5341><U4E94>";/
+            "<U516B><U5341><U516D>";/
+            "<U516B><U5341><U4E03>";/
+            "<U516B><U5341><U516B>";/
+            "<U516B><U5341><U4E5D>";/
+            "<U4E5D><U5341>";/
+            "<U4E5D><U5341><U4E00>";/
+            "<U4E5D><U5341><U4E8C>";/
+            "<U4E5D><U5341><U4E09>";/
+            "<U4E5D><U5341><U56DB>";/
+            "<U4E5D><U5341><U4E94>";/
+            "<U4E5D><U5341><U516D>";/
+            "<U4E5D><U5341><U4E03>";/
+            "<U4E5D><U5341><U516B>";/
+            "<U4E5D><U5341><U4E5D>"
 %
 week 7;19971130;1
+first_weekday 2
 
 era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
     "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
@@ -156,7 +227,7 @@  END LC_TIME
 
 LC_NUMERIC
 decimal_point "."
-thousands_sep ","
+thousands_sep "<U2009>"
 grouping      4
 END LC_NUMERIC
 
@@ -164,7 +235,7 @@  LC_MONETARY
 currency_symbol    "NT$"
 int_curr_symbol    "TWD "
 mon_decimal_point  "."
-mon_thousands_sep  ","
+mon_thousands_sep  "<U2009>"
 mon_grouping       4
 positive_sign      ""
 negative_sign      "-"
@@ -185,18 +256,22 @@  int_n_sign_posn    1
 END LC_MONETARY
 
 LC_PAPER
-copy "i18n"
+height 297
+width  210
 END LC_PAPER
 
 LC_MEASUREMENT
-copy "i18n"
+% metric
+measurement 1
 END LC_MEASUREMENT
 
 LC_MESSAGES
-% ^[+1yYyY是]
 yesexpr "^[+1yY<UFF59><UFF39><U662F>]"
-% ^[-0nNnN非]
-noexpr  "^[-0nN<UFF4E><UFF2E><U975E>]"
+noexpr  "^[-0nN<UFF4E><UFF2E><U4E0D><U5426>]"
+% 是
+yesstr  "<U662F>"
+% 否
+nostr   "<U5426>"
 END LC_MESSAGES
 
 LC_NAME
diff --git a/localedata/locales/nan_TW b/localedata/locales/nan_TW
index d59295fd12..432ba6ac4a 100644
--- a/localedata/locales/nan_TW
+++ b/localedata/locales/nan_TW
@@ -8,13 +8,9 @@  escape_char /
 % exempt you from the conditions of the license if your use would
 % otherwise be governed by that license.
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
 % Min Nan Chinese locale for the Republic of China
-%
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
 % build with: localedef -f UTF-8 -i nan_TW nan_TW
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 LC_IDENTIFICATION
 title        "Min Nan Chinese locale for the Republic of China"
@@ -26,8 +22,8 @@  tel          ""
 fax          ""
 language     "Min Nan Chinese"
 territory    "Taiwan"
-revision     "0.1"
-date         "2013-06-02"
+revision     "0.2"
+date         "2021-11-19"
 
 category "i18n:2012";LC_IDENTIFICATION
 category "i18n:2012";LC_CTYPE
@@ -45,17 +41,20 @@  END LC_IDENTIFICATION
 
 LC_CTYPE
 copy "i18n"
+translit_start
+include "translit_combining";""
+translit_end
+
 class	"hanzi"; /
 <U3007>;/
 <U3400>..<U4DBF>;/
 <U4E00>..<U9FA5>;/
 <UF900>..<UFA6A>;/
-<U00020000>..<U0002A6D6>;/
-<U0002F800>..<U0002FA1D>
+<U00020000>..<U0002FA1D>
 END LC_CTYPE
 
 LC_COLLATE
-copy "iso14651_t1"
+copy "cns11643_stroke"
 END LC_COLLATE
 
 LC_TIME
@@ -72,7 +71,7 @@  mon           "<U4E00><U6708>";/
      "<U5341><U6708>";/
      "<U5341><U4E00><U6708>";/
      "<U5341><U4E8C><U6708>"
-%  1月,  2月,  3月,  4月,  5月,  6月,  7月,  8月,  9月, 10月, 11月, 12月
+% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
 abmon         " 1<U6708>";/
        " 2<U6708>";/
        " 3<U6708>";/
@@ -101,10 +100,10 @@  abday         "<U65E5>";/
        "<U56DB>";/
        "<U4E94>";/
        "<U516D>"
-% %Y年%m月%d日 (%A) %H點%M分%S秒
-d_t_fmt       "%Y<U5E74>%m<U6708>%d<U65E5> (%A) %H<U9EDE>%M<U5206>%S<U79D2>"
-% %Y年%m月%d日
-d_fmt         "%Y<U5E74>%m<U6708>%d<U65E5>"
+% %Y年%m月%d號 (%A) %H點%M分%S秒
+d_t_fmt       "%Y<U5E74>%m<U6708>%d<U865F> (%A) %H<U9EDE>%M<U5206>%S<U79D2>"
+% %Y年%m月%d號
+d_fmt         "%Y<U5E74>%m<U6708>%d<U865F>"
 % %H點%M分%S秒
 t_fmt         "%H<U9EDE>%M<U5206>%S<U79D2>"
 % 頂晡, 下晡
@@ -112,9 +111,10 @@  am_pm         "<U9802><U6661>";/
        "<U4E0B><U6661>"
 % %p %I點%M分%S秒
 t_fmt_ampm    "%p %I<U9EDE>%M<U5206>%S<U79D2>"
-% %Y年 %b %e日 %A %H:%M:%S %Z
-date_fmt      "%Y<U5E74> %b %e<U65E5> %A %H:%M:%S %Z"
+% %Y年 %b %-d號 %A %H:%M:%S %Z
+date_fmt      "%Y<U5E74> %b %-d<U865F> %A %H:%M:%S %Z"
 week 7;19971130;1
+first_weekday 2
 
 era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
     "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
@@ -123,7 +123,7 @@  END LC_TIME
 
 LC_NUMERIC
 decimal_point "."
-thousands_sep ","
+thousands_sep "<U2009>"
 grouping      4
 END LC_NUMERIC
 
@@ -131,7 +131,7 @@  LC_MONETARY
 currency_symbol    "NT$"
 int_curr_symbol    "TWD "
 mon_decimal_point  "."
-mon_thousands_sep  ","
+mon_thousands_sep  "<U2009>"
 mon_grouping       4
 positive_sign      ""
 negative_sign      "-"
@@ -152,18 +152,22 @@  int_n_sign_posn    1
 END LC_MONETARY
 
 LC_PAPER
-copy "i18n"
+height 297
+width  210
 END LC_PAPER
 
 LC_MEASUREMENT
-copy "i18n"
+% metric
+measurement 1
 END LC_MEASUREMENT
 
 LC_MESSAGES
-% ^[+1yYyY是]
 yesexpr "^[+1yY<UFF59><UFF39><U662F>]"
-% ^[-0nNnN伓]
-noexpr  "^[-0nN<UFF4E><UFF2E><U4F13>]"
+noexpr  "^[-0nN<UFF4E><UFF2E><U4E0D><U5426>]"
+% 是
+yesstr  "<U662F>"
+% 毋是
+nostr   "<U6BCB><U662F>"
 END LC_MESSAGES
 
 LC_NAME
@@ -190,8 +194,8 @@  country_ab3  "TWN"
 country_num  158
 country_car "RC"
 country_isbn 957
-% 閩南語
-lang_name    "<U95A9><U5357><U8A9E>"
+% 漢語閩南語
+lang_name    "<U6F22><U8A9E><U95A9><U5357><U8A9E>"
 lang_term    "nan"
 lang_lib     "nan"
 END LC_ADDRESS
diff --git a/localedata/locales/yue_TW b/localedata/locales/yue_TW
new file mode 100644
index 0000000000..cac0a7137a
--- /dev/null
+++ b/localedata/locales/yue_TW
@@ -0,0 +1,224 @@ 
+comment_char %
+escape_char /
+
+% This file is part of the GNU C Library and contains locale data.
+% The Free Software Foundation does not claim any copyright interest
+% in the locale data contained in this file.  The foregoing does not
+% affect the license of the GNU C Library as a whole.  It does not
+% exempt you from the conditions of the license if your use would
+% otherwise be governed by that license.
+
+% Yue Chinese locale for the Republic of China
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
+% build with: localedef -f UTF-8 -i yue_TW yue_TW
+
+LC_IDENTIFICATION
+title      "Yue Chinese locale for the Republic of China"
+source     ""
+address    ""
+contact    ""
+email      "bug-glibc-locales@gnu.org"
+tel        ""
+fax        ""
+language   "Yue Chinese"
+territory  "Taiwan"
+revision   "0.1"
+date       "2021-11-19"
+
+category "i18n:2012";LC_IDENTIFICATION
+category "i18n:2012";LC_CTYPE
+category "i18n:2012";LC_COLLATE
+category "i18n:2012";LC_TIME
+category "i18n:2012";LC_NUMERIC
+category "i18n:2012";LC_MONETARY
+category "i18n:2012";LC_MESSAGES
+category "i18n:2012";LC_PAPER
+category "i18n:2012";LC_NAME
+category "i18n:2012";LC_ADDRESS
+category "i18n:2012";LC_TELEPHONE
+category "i18n:2012";LC_MEASUREMENT
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+translit_start
+include "translit_combining";""
+translit_end
+
+class	"hanzi"; /
+<U3007>;/
+<U3400>..<U4DBF>;/
+<U4E00>..<U9FA5>;/
+<UF900>..<UFA6A>;/
+<U00020000>..<U0002FA1D>
+END LC_CTYPE
+
+LC_COLLATE
+copy "cns11643_stroke"
+END LC_COLLATE
+
+LC_NUMERIC
+decimal_point "."
+thousands_sep "<U2009>"
+grouping      4
+END LC_NUMERIC
+
+LC_MONETARY
+currency_symbol    "NT$"
+int_curr_symbol    "TWD "
+mon_decimal_point  "."
+mon_thousands_sep  "<U2009>"
+mon_grouping       4
+positive_sign      ""
+negative_sign      "-"
+frac_digits        2
+int_frac_digits    2
+p_cs_precedes      1
+p_sep_by_space     0
+n_cs_precedes      1
+n_sep_by_space     0
+p_sign_posn        1
+n_sign_posn        1
+int_p_cs_precedes  1
+int_p_sep_by_space 0
+int_n_cs_precedes  1
+int_n_sep_by_space 0
+int_p_sign_posn    1
+int_n_sign_posn    1
+END LC_MONETARY
+
+LC_TIME
+% This is the POSIX Locale definition for the LC_TIME category.
+% These are generated based on XML base Locale difintion file
+% for IBM Class for Unicode/Java
+% 日, 一, 二, 三, 四, 五, 六
+abday       "<U65E5>";"<U4E00>";/
+            "<U4E8C>";"<U4E09>";/
+            "<U56DB>";"<U4E94>";/
+            "<U516D>"
+%
+% Full weekday names (%A)
+% 禮拜日, 禮拜一, 禮拜二, 禮拜三, 禮拜四, 禮拜五, 禮拜六
+day           "<U79AE><U62DC><U65E5>";/
+     "<U79AE><U62DC><U4E00>";/
+     "<U79AE><U62DC><U4E8C>";/
+     "<U79AE><U62DC><U4E09>";/
+     "<U79AE><U62DC><U56DB>";/
+     "<U79AE><U62DC><U4E94>";/
+     "<U79AE><U62DC><U516D>"
+%
+% Abbreviated month names (%b)
+abmon         " 1<U6708>";/
+       " 2<U6708>";/
+       " 3<U6708>";/
+       " 4<U6708>";/
+       " 5<U6708>";/
+       " 6<U6708>";/
+       " 7<U6708>";/
+       " 8<U6708>";/
+       " 9<U6708>";/
+       "10<U6708>";/
+       "11<U6708>";/
+       "12<U6708>"
+%
+% Full month names (%B)
+mon         "<U4E00><U6708>";"<U4E8C><U6708>";/
+            "<U4E09><U6708>";"<U56DB><U6708>";/
+            "<U4E94><U6708>";"<U516D><U6708>";/
+            "<U4E03><U6708>";"<U516B><U6708>";/
+            "<U4E5D><U6708>";"<U5341><U6708>";/
+            "<U5341><U4E00><U6708>";"<U5341><U4E8C><U6708>"
+%
+% Equivalent of AM PM
+% 上晝;下晝
+am_pm       "<U4E0A><U665D>";"<U4E0B><U665D>"
+%
+% Appropriate date and time representation
+% %Y年%m月%d號 %A %H點%M分%S秒
+d_t_fmt     "%Y<U5E74>%m<U6708>%d<U865F> %A %H<U9EDE>%M<U5206>%S<U79D2>"
+%
+% Appropriate date representation
+% %Y年%m月%d號 %A
+d_fmt       "%Y<U5E74>%m<U6708>%d<U865F> %A"
+%
+% Appropriate time representation
+% %H點%M分%S秒
+t_fmt       "%H<U9EDE>%M<U5206>%S<U79D2>"
+%
+% Appropriate 12 h time representation
+% %p%I點%M分%S秒
+t_fmt_ampm  "%p%I<U9EDE>%M<U5206>/
+%S<U79D2>"
+%
+% Appropriate date representation (date(1))
+% %Y年 %b %e日 %A %H:%M:%S %Z
+date_fmt       "%Y<U5E74> %b /
+%e<U65E5> %A %H/
+:%M:%S %Z"
+%  FIXME: found in CLDR
+week 7;19971130;1
+first_weekday 2
+
+era "+:2:1913//01//01:+*:<U6C11><U570B>:%EC%Ey<U5E74>";/
+    "+:1:1912//01//01:1912//12//31:<U6C11><U570B>:%EC<U5143><U5E74>";/
+    "+:1:1911//12//31:-*:<U6C11><U524D>:%EC%Ey<U5E74>"
+END LC_TIME
+
+LC_MESSAGES
+yesexpr "^[+1yY<UFF59><UFF39><U662F>]"
+noexpr  "^[-0nN<UFF4E><UFF2E><U4E0D><U5426>]"
+yesstr  "<U4FC2>"
+nostr   "<U6BCB><U4FC2>"
+END LC_MESSAGES
+
+LC_PAPER
+height 297
+width  210
+END LC_PAPER
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+LC_NAME
+name_fmt  "%f%t%g%t%d"
+% 君
+name_gen  "<U541B>"
+% 姑娘
+name_miss "<U59D1><U5A18>"
+% 生
+name_mr   "<U751F>"
+% 太
+name_mrs  "<U592A>"
+% 女士
+name_ms   "<U5973><U58EB>"
+END LC_NAME
+
+LC_ADDRESS
+% This is the ISO_IEC TR14652 Locale definition for the
+% LC_ADDRESS
+% postal_fmt: "%c%T%s%h%N%b%e%r%N%f%N%d%N%a"
+postal_fmt  "%c%T%s%h/
+%N%b%e%r%N/
+%f%N%d%N%a"
+% 中華民國
+country_name "<U4E2D><U83EF><U6C11><U570B>"
+country_post "TW"
+country_ab2  "TW"
+country_ab3  "TWN"
+country_num  158
+country_car  "RC"
+country_isbn 957
+% 漢語粵語
+lang_name "<U6F22><U8A9E><U7CB5><U8A9E>"
+lang_term    "yue"
+lang_lib     "yue"
+END LC_ADDRESS
+
+LC_TELEPHONE
+tel_int_fmt "+%c-%a-%l"
+tel_dom_fmt "%A-%l"
+int_select  "00"
+int_prefix  "886"
+END LC_TELEPHONE
-- 
2.35.1