aboutsummaryrefslogtreecommitdiff
path: root/share/msgdef
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2015-08-08 01:45:53 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2015-08-08 01:45:53 +0000
commit1a41e1f147df55c8c160aa6438408879cf9790e3 (patch)
treef2e72420f89d3e33e7e7bf43de9e16a7d0869aba /share/msgdef
parent78e197d1f941c6848f47b104c4542cfbad19faf8 (diff)
downloadsrc-1a41e1f147df55c8c160aa6438408879cf9790e3.tar.gz
src-1a41e1f147df55c8c160aa6438408879cf9790e3.zip
Add newly generated locales from CLDR 27.0.1
only skip timedef until I figure out how to workaround svn painful mime-type handling
Notes
Notes: svn path=/projects/collation/; revision=286438
Diffstat (limited to 'share/msgdef')
-rw-r--r--share/msgdef/Makefile326
-rw-r--r--share/msgdef/Makefile.depend11
-rw-r--r--share/msgdef/af_ZA.ISO8859-1.src19
-rw-r--r--share/msgdef/am_ET.UTF-8.src19
-rw-r--r--share/msgdef/be_BY.CP1131.src18
-rw-r--r--share/msgdef/be_BY.CP1251.src18
-rw-r--r--share/msgdef/be_BY.ISO8859-5.src18
-rw-r--r--share/msgdef/be_BY.UTF-8.src18
-rw-r--r--share/msgdef/bg_BG.CP1251.src19
-rw-r--r--share/msgdef/bg_BG.UTF-8.src19
-rw-r--r--share/msgdef/ca_AD.ISO8859-1.src17
-rw-r--r--share/msgdef/ca_AD.UTF-8.src17
-rw-r--r--share/msgdef/ca_ES.ISO8859-1.src10
-rw-r--r--share/msgdef/cs_CZ.ISO8859-2.src19
-rw-r--r--share/msgdef/da_DK.ISO8859-1.src19
-rw-r--r--share/msgdef/de_AT.ISO8859-1.src17
-rw-r--r--share/msgdef/de_DE.ISO8859-1.src10
-rw-r--r--share/msgdef/el_GR.ISO8859-7.src19
-rw-r--r--share/msgdef/el_GR.UTF-8.src19
-rw-r--r--share/msgdef/en_AU.ISO8859-1.src17
-rw-r--r--share/msgdef/en_CA.ISO8859-1.src10
-rw-r--r--share/msgdef/en_GB.ISO8859-1.src10
-rw-r--r--share/msgdef/en_US.ISO8859-1.src10
-rw-r--r--share/msgdef/es_ES.ISO8859-1.src10
-rw-r--r--share/msgdef/et_EE.ISO8859-15.src19
-rw-r--r--share/msgdef/eu_ES.ISO8859-1.src19
-rw-r--r--share/msgdef/fi_FI.ISO8859-1.src19
-rw-r--r--share/msgdef/fi_FI.UTF-8.src17
-rw-r--r--share/msgdef/fr_BE.ISO8859-1.src19
-rw-r--r--share/msgdef/fr_CH.ISO8859-1.src10
-rw-r--r--share/msgdef/fr_FR.ISO8859-1.src10
-rw-r--r--share/msgdef/he_IL.UTF-8.src19
-rw-r--r--share/msgdef/hi_IN.ISCII-DEV.src19
-rw-r--r--share/msgdef/hi_IN.UTF-8.src17
-rw-r--r--share/msgdef/hr_HR.ISO8859-2.src19
-rw-r--r--share/msgdef/hu_HU.ISO8859-2.src19
-rw-r--r--share/msgdef/hy_AM.ARMSCII-8.src22
-rw-r--r--share/msgdef/hy_AM.UTF-8.src22
-rw-r--r--share/msgdef/is_IS.ISO8859-1.src19
-rw-r--r--share/msgdef/is_IS.UTF-8.src17
-rw-r--r--share/msgdef/it_CH.ISO8859-1.src17
-rw-r--r--share/msgdef/it_CH.UTF-8.src17
-rw-r--r--share/msgdef/it_IT.ISO8859-1.src10
-rw-r--r--share/msgdef/ja_JP.SJIS.src22
-rw-r--r--share/msgdef/ja_JP.UTF-8.src19
-rw-r--r--share/msgdef/ja_JP.eucJP.src19
-rw-r--r--share/msgdef/kk_Cyrl_KZ.UTF-8.src17
-rw-r--r--share/msgdef/kk_KZ.PT154.src14
-rw-r--r--share/msgdef/kk_KZ.UTF-8.src14
-rw-r--r--share/msgdef/ko_KR.UTF-8.src19
-rw-r--r--share/msgdef/ko_KR.eucKR.src19
-rw-r--r--share/msgdef/lt_LT.ISO8859-13.src19
-rw-r--r--share/msgdef/lv_LV.ISO8859-13.src19
-rw-r--r--share/msgdef/lv_LV.UTF-8.src19
-rw-r--r--share/msgdef/mn_Cyrl_MN.UTF-8.src17
-rw-r--r--share/msgdef/mn_MN.UTF-8.src14
-rw-r--r--share/msgdef/nb_NO.ISO8859-1.src17
-rw-r--r--share/msgdef/nl_NL.ISO8859-1.src10
-rw-r--r--share/msgdef/nn_NO.ISO8859-1.src17
-rw-r--r--share/msgdef/no_NO.ISO8859-1.src10
-rw-r--r--share/msgdef/pl_PL.ISO8859-2.src19
-rw-r--r--share/msgdef/pt_BR.ISO8859-1.src17
-rw-r--r--share/msgdef/pt_BR.UTF-8.src17
-rw-r--r--share/msgdef/pt_PT.ISO8859-1.src10
-rw-r--r--share/msgdef/ro_RO.ISO8859-2.src19
-rw-r--r--share/msgdef/ru_RU.CP1251.src19
-rw-r--r--share/msgdef/ru_RU.CP866.src19
-rw-r--r--share/msgdef/ru_RU.ISO8859-5.src19
-rw-r--r--share/msgdef/ru_RU.KOI8-R.src19
-rw-r--r--share/msgdef/ru_RU.UTF-8.src19
-rw-r--r--share/msgdef/se_FI.UTF-8.src17
-rw-r--r--share/msgdef/sk_SK.ISO8859-2.src17
-rw-r--r--share/msgdef/sk_SK.UTF-8.src17
-rw-r--r--share/msgdef/sl_SI.ISO8859-2.src10
-rw-r--r--share/msgdef/sr_Cyrl_RS.ISO8859-5.src17
-rw-r--r--share/msgdef/sr_Cyrl_RS.UTF-8.src17
-rw-r--r--share/msgdef/sr_Latn_RS.ISO8859-2.src17
-rw-r--r--share/msgdef/sr_YU.ISO8859-2.src10
-rw-r--r--share/msgdef/sr_YU.ISO8859-5.src14
-rw-r--r--share/msgdef/sr_YU.UTF-8.src14
-rw-r--r--share/msgdef/sv_SE.ISO8859-1.src10
-rw-r--r--share/msgdef/tr_TR.ISO8859-9.src20
-rw-r--r--share/msgdef/tr_TR.UTF-8.src17
-rw-r--r--share/msgdef/uk_UA.CP1251.src19
-rw-r--r--share/msgdef/uk_UA.ISO8859-5.src19
-rw-r--r--share/msgdef/uk_UA.KOI8-U.src19
-rw-r--r--share/msgdef/uk_UA.UTF-8.src19
-rw-r--r--share/msgdef/zh_CN.GB18030.src14
-rw-r--r--share/msgdef/zh_CN.GB2312.src14
-rw-r--r--share/msgdef/zh_CN.UTF-8.src14
-rw-r--r--share/msgdef/zh_CN.eucCN.src14
-rw-r--r--share/msgdef/zh_Hans_CN.GB18030.src17
-rw-r--r--share/msgdef/zh_Hans_CN.GB2312.src17
-rw-r--r--share/msgdef/zh_Hans_CN.UTF-8.src17
-rw-r--r--share/msgdef/zh_Hant_HK.Big5HKSCS.src17
-rw-r--r--share/msgdef/zh_Hant_HK.UTF-8.src17
-rw-r--r--share/msgdef/zh_Hant_TW.Big5.src17
-rw-r--r--share/msgdef/zh_Hant_TW.UTF-8.src17
-rw-r--r--share/msgdef/zh_TW.Big5.src14
-rw-r--r--share/msgdef/zh_TW.UTF-8.src14
100 files changed, 1191 insertions, 766 deletions
diff --git a/share/msgdef/Makefile b/share/msgdef/Makefile
index 3f2232579d0c..29ce821a0618 100644
--- a/share/msgdef/Makefile
+++ b/share/msgdef/Makefile
@@ -1,144 +1,212 @@
# $FreeBSD$
-
-LOCALES= af_ZA.ISO8859-1 \
- am_ET.UTF-8 \
- be_BY.CP1131 \
- be_BY.CP1251 \
- be_BY.ISO8859-5 \
- be_BY.UTF-8 \
- bg_BG.CP1251 \
- bg_BG.UTF-8 \
- ca_ES.ISO8859-1 \
- cs_CZ.ISO8859-2 \
- da_DK.ISO8859-1 \
- de_DE.ISO8859-1 \
- el_GR.ISO8859-7 \
- el_GR.UTF-8 \
- en_CA.ISO8859-1 \
- en_GB.ISO8859-1 \
- en_US.ISO8859-1 \
- es_ES.ISO8859-1 \
- et_EE.ISO8859-15 \
- eu_ES.ISO8859-1 \
- fi_FI.ISO8859-1 \
- fr_BE.ISO8859-1 \
- fr_CH.ISO8859-1 \
- fr_FR.ISO8859-1 \
- he_IL.UTF-8 \
- hi_IN.ISCII-DEV \
- hr_HR.ISO8859-2 \
- hu_HU.ISO8859-2 \
- hy_AM.ARMSCII-8 \
- hy_AM.UTF-8 \
- is_IS.ISO8859-1 \
- it_IT.ISO8859-1 \
- ja_JP.eucJP \
- ja_JP.SJIS \
- ja_JP.UTF-8 \
- kk_KZ.PT154 \
- kk_KZ.UTF-8 \
- ko_KR.UTF-8 \
- ko_KR.eucKR \
- lt_LT.ISO8859-13 \
- lv_LV.ISO8859-13 \
- lv_LV.UTF-8 \
- mn_MN.UTF-8 \
- nl_NL.ISO8859-1 \
- no_NO.ISO8859-1 \
- pl_PL.ISO8859-2 \
- pt_PT.ISO8859-1 \
- ro_RO.ISO8859-2 \
- ru_RU.CP1251 \
- ru_RU.CP866 \
- ru_RU.ISO8859-5 \
- ru_RU.KOI8-R \
- ru_RU.UTF-8 \
- sl_SI.ISO8859-2 \
- sr_YU.ISO8859-2 \
- sr_YU.ISO8859-5 \
- sr_YU.UTF-8 \
- sv_SE.ISO8859-1 \
- tr_TR.ISO8859-9 \
- uk_UA.CP1251 \
- uk_UA.ISO8859-5 \
- uk_UA.KOI8-U \
- uk_UA.UTF-8 \
- zh_CN.eucCN \
- zh_CN.GB18030 \
- zh_CN.GB2312 \
- zh_CN.UTF-8 \
- zh_TW.Big5 \
- zh_TW.UTF-8
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale.
LOCALEDIR= /usr/share/locale
-
-.SUFFIXES: .src .out
+FILESNAME= LC_MESSAGES
+.SUFFIXES: .src .out
.src.out:
- grep -v '^#' < ${.IMPSRC} > ${.TARGET}
+ grep -v -E '^(#$$|#[ ])' < ${.IMPSRC} > ${.TARGET}
-FILES= ${LOCALES:S/$/.out/}
-FILESNAME= LC_MESSAGES
+LOCALES+= af_ZA.ISO8859-1
+LOCALES+= am_ET.UTF-8
+LOCALES+= be_BY.CP1131
+LOCALES+= be_BY.CP1251
+LOCALES+= be_BY.ISO8859-5
+LOCALES+= be_BY.UTF-8
+LOCALES+= bg_BG.CP1251
+LOCALES+= bg_BG.UTF-8
+LOCALES+= ca_AD.ISO8859-1
+LOCALES+= ca_AD.UTF-8
+LOCALES+= cs_CZ.ISO8859-2
+LOCALES+= da_DK.ISO8859-1
+LOCALES+= de_AT.ISO8859-1
+LOCALES+= el_GR.ISO8859-7
+LOCALES+= el_GR.UTF-8
+LOCALES+= en_AU.ISO8859-1
+LOCALES+= et_EE.ISO8859-15
+LOCALES+= eu_ES.ISO8859-1
+LOCALES+= fi_FI.ISO8859-1
+LOCALES+= fi_FI.UTF-8
+LOCALES+= fr_BE.ISO8859-1
+LOCALES+= he_IL.UTF-8
+LOCALES+= hi_IN.ISCII-DEV
+LOCALES+= hi_IN.UTF-8
+LOCALES+= hr_HR.ISO8859-2
+LOCALES+= hu_HU.ISO8859-2
+LOCALES+= hy_AM.ARMSCII-8
+LOCALES+= hy_AM.UTF-8
+LOCALES+= is_IS.ISO8859-1
+LOCALES+= is_IS.UTF-8
+LOCALES+= it_CH.ISO8859-1
+LOCALES+= it_CH.UTF-8
+LOCALES+= ja_JP.SJIS
+LOCALES+= ja_JP.UTF-8
+LOCALES+= ja_JP.eucJP
+LOCALES+= kk_Cyrl_KZ.UTF-8
+LOCALES+= ko_KR.UTF-8
+LOCALES+= ko_KR.eucKR
+LOCALES+= lt_LT.ISO8859-13
+LOCALES+= lv_LV.ISO8859-13
+LOCALES+= lv_LV.UTF-8
+LOCALES+= mn_Cyrl_MN.UTF-8
+LOCALES+= nb_NO.ISO8859-1
+LOCALES+= nn_NO.ISO8859-1
+LOCALES+= pl_PL.ISO8859-2
+LOCALES+= pt_BR.ISO8859-1
+LOCALES+= pt_BR.UTF-8
+LOCALES+= ro_RO.ISO8859-2
+LOCALES+= ru_RU.CP1251
+LOCALES+= ru_RU.CP866
+LOCALES+= ru_RU.ISO8859-5
+LOCALES+= ru_RU.KOI8-R
+LOCALES+= ru_RU.UTF-8
+LOCALES+= se_FI.UTF-8
+LOCALES+= sk_SK.ISO8859-2
+LOCALES+= sk_SK.UTF-8
+LOCALES+= sr_Cyrl_RS.ISO8859-5
+LOCALES+= sr_Cyrl_RS.UTF-8
+LOCALES+= sr_Latn_RS.ISO8859-2
+LOCALES+= tr_TR.ISO8859-9
+LOCALES+= tr_TR.UTF-8
+LOCALES+= uk_UA.CP1251
+LOCALES+= uk_UA.ISO8859-5
+LOCALES+= uk_UA.KOI8-U
+LOCALES+= uk_UA.UTF-8
+LOCALES+= zh_Hans_CN.GB18030
+LOCALES+= zh_Hans_CN.GB2312
+LOCALES+= zh_Hans_CN.UTF-8
+LOCALES+= zh_Hant_HK.Big5HKSCS
+LOCALES+= zh_Hant_HK.UTF-8
+LOCALES+= zh_Hant_TW.Big5
+LOCALES+= zh_Hant_TW.UTF-8
-.for locale in ${LOCALES}
-FILESDIR_${locale}.out= ${LOCALEDIR}/${locale}
-.endfor
+SAME+= af_ZA.ISO8859-1:af_ZA.ISO8859-15
+SAME+= af_ZA.ISO8859-1:af_ZA.UTF-8
+SAME+= af_ZA.ISO8859-1:nl_BE.ISO8859-1
+SAME+= af_ZA.ISO8859-1:nl_BE.ISO8859-15
+SAME+= af_ZA.ISO8859-1:nl_BE.UTF-8
+SAME+= af_ZA.ISO8859-1:nl_NL.ISO8859-1
+SAME+= af_ZA.ISO8859-1:nl_NL.ISO8859-15
+SAME+= af_ZA.ISO8859-1:nl_NL.UTF-8
+SAME+= ca_AD.ISO8859-1:ca_AD.ISO8859-15
+SAME+= ca_AD.ISO8859-1:ca_ES.ISO8859-1
+SAME+= ca_AD.ISO8859-1:ca_ES.ISO8859-15
+SAME+= ca_AD.ISO8859-1:ca_FR.ISO8859-1
+SAME+= ca_AD.ISO8859-1:ca_FR.ISO8859-15
+SAME+= ca_AD.ISO8859-1:ca_IT.ISO8859-1
+SAME+= ca_AD.ISO8859-1:ca_IT.ISO8859-15
+SAME+= ca_AD.ISO8859-1:es_AR.ISO8859-1
+SAME+= ca_AD.ISO8859-1:es_CR.ISO8859-1
+SAME+= ca_AD.ISO8859-1:es_ES.ISO8859-1
+SAME+= ca_AD.ISO8859-1:es_ES.ISO8859-15
+SAME+= ca_AD.ISO8859-1:es_MX.ISO8859-1
+SAME+= ca_AD.UTF-8:ca_ES.UTF-8
+SAME+= ca_AD.UTF-8:ca_FR.UTF-8
+SAME+= ca_AD.UTF-8:ca_IT.UTF-8
+SAME+= ca_AD.UTF-8:es_AR.UTF-8
+SAME+= ca_AD.UTF-8:es_CR.UTF-8
+SAME+= ca_AD.UTF-8:es_ES.UTF-8
+SAME+= ca_AD.UTF-8:es_MX.UTF-8
+SAME+= cs_CZ.ISO8859-2:cs_CZ.UTF-8
+SAME+= da_DK.ISO8859-1:da_DK.ISO8859-15
+SAME+= da_DK.ISO8859-1:da_DK.UTF-8
+SAME+= da_DK.ISO8859-1:sv_FI.ISO8859-1
+SAME+= da_DK.ISO8859-1:sv_FI.ISO8859-15
+SAME+= da_DK.ISO8859-1:sv_FI.UTF-8
+SAME+= da_DK.ISO8859-1:sv_SE.ISO8859-1
+SAME+= da_DK.ISO8859-1:sv_SE.ISO8859-15
+SAME+= da_DK.ISO8859-1:sv_SE.UTF-8
+SAME+= de_AT.ISO8859-1:de_AT.ISO8859-15
+SAME+= de_AT.ISO8859-1:de_AT.UTF-8
+SAME+= de_AT.ISO8859-1:de_CH.ISO8859-1
+SAME+= de_AT.ISO8859-1:de_CH.ISO8859-15
+SAME+= de_AT.ISO8859-1:de_CH.UTF-8
+SAME+= de_AT.ISO8859-1:de_DE.ISO8859-1
+SAME+= de_AT.ISO8859-1:de_DE.ISO8859-15
+SAME+= de_AT.ISO8859-1:de_DE.UTF-8
+SAME+= en_AU.ISO8859-1:en_AU.ISO8859-15
+SAME+= en_AU.ISO8859-1:en_AU.US-ASCII
+SAME+= en_AU.ISO8859-1:en_AU.UTF-8
+SAME+= en_AU.ISO8859-1:en_CA.ISO8859-1
+SAME+= en_AU.ISO8859-1:en_CA.ISO8859-15
+SAME+= en_AU.ISO8859-1:en_CA.US-ASCII
+SAME+= en_AU.ISO8859-1:en_CA.UTF-8
+SAME+= en_AU.ISO8859-1:en_GB.ISO8859-1
+SAME+= en_AU.ISO8859-1:en_GB.ISO8859-15
+SAME+= en_AU.ISO8859-1:en_GB.US-ASCII
+SAME+= en_AU.ISO8859-1:en_GB.UTF-8
+SAME+= en_AU.ISO8859-1:en_HK.ISO8859-1
+SAME+= en_AU.ISO8859-1:en_HK.UTF-8
+SAME+= en_AU.ISO8859-1:en_IE.UTF-8
+SAME+= en_AU.ISO8859-1:en_NZ.ISO8859-1
+SAME+= en_AU.ISO8859-1:en_NZ.ISO8859-15
+SAME+= en_AU.ISO8859-1:en_NZ.US-ASCII
+SAME+= en_AU.ISO8859-1:en_NZ.UTF-8
+SAME+= en_AU.ISO8859-1:en_PH.ISO8859-1
+SAME+= en_AU.ISO8859-1:en_PH.UTF-8
+SAME+= en_AU.ISO8859-1:en_SG.ISO8859-1
+SAME+= en_AU.ISO8859-1:en_SG.UTF-8
+SAME+= en_AU.ISO8859-1:en_US.ISO8859-1
+SAME+= en_AU.ISO8859-1:en_US.ISO8859-15
+SAME+= en_AU.ISO8859-1:en_US.US-ASCII
+SAME+= en_AU.ISO8859-1:en_US.UTF-8
+SAME+= en_AU.ISO8859-1:en_ZA.ISO8859-1
+SAME+= en_AU.ISO8859-1:en_ZA.ISO8859-15
+SAME+= en_AU.ISO8859-1:en_ZA.US-ASCII
+SAME+= en_AU.ISO8859-1:en_ZA.UTF-8
+SAME+= et_EE.ISO8859-15:et_EE.UTF-8
+SAME+= eu_ES.ISO8859-1:eu_ES.ISO8859-15
+SAME+= eu_ES.ISO8859-1:eu_ES.UTF-8
+SAME+= fi_FI.ISO8859-1:fi_FI.ISO8859-15
+SAME+= fr_BE.ISO8859-1:fr_BE.ISO8859-15
+SAME+= fr_BE.ISO8859-1:fr_BE.UTF-8
+SAME+= fr_BE.ISO8859-1:fr_CA.ISO8859-1
+SAME+= fr_BE.ISO8859-1:fr_CA.ISO8859-15
+SAME+= fr_BE.ISO8859-1:fr_CA.UTF-8
+SAME+= fr_BE.ISO8859-1:fr_CH.ISO8859-1
+SAME+= fr_BE.ISO8859-1:fr_CH.ISO8859-15
+SAME+= fr_BE.ISO8859-1:fr_CH.UTF-8
+SAME+= fr_BE.ISO8859-1:fr_FR.ISO8859-1
+SAME+= fr_BE.ISO8859-1:fr_FR.ISO8859-15
+SAME+= fr_BE.ISO8859-1:fr_FR.UTF-8
+SAME+= hr_HR.ISO8859-2:hr_HR.UTF-8
+SAME+= hr_HR.ISO8859-2:sl_SI.ISO8859-2
+SAME+= hr_HR.ISO8859-2:sl_SI.UTF-8
+SAME+= hu_HU.ISO8859-2:hu_HU.UTF-8
+SAME+= is_IS.ISO8859-1:is_IS.ISO8859-15
+SAME+= it_CH.ISO8859-1:it_CH.ISO8859-15
+SAME+= it_CH.ISO8859-1:it_IT.ISO8859-1
+SAME+= it_CH.ISO8859-1:it_IT.ISO8859-15
+SAME+= it_CH.UTF-8:it_IT.UTF-8
+SAME+= lt_LT.ISO8859-13:lt_LT.ISO8859-4
+SAME+= lt_LT.ISO8859-13:lt_LT.UTF-8
+SAME+= nb_NO.ISO8859-1:nb_NO.ISO8859-15
+SAME+= nb_NO.ISO8859-1:nb_NO.UTF-8
+SAME+= nn_NO.ISO8859-1:nn_NO.ISO8859-15
+SAME+= nn_NO.ISO8859-1:nn_NO.UTF-8
+SAME+= pl_PL.ISO8859-2:pl_PL.UTF-8
+SAME+= pt_BR.ISO8859-1:pt_BR.ISO8859-15
+SAME+= pt_BR.ISO8859-1:pt_PT.ISO8859-1
+SAME+= pt_BR.ISO8859-1:pt_PT.ISO8859-15
+SAME+= pt_BR.UTF-8:pt_PT.UTF-8
+SAME+= ro_RO.ISO8859-2:ro_RO.UTF-8
+SAME+= se_FI.UTF-8:se_NO.UTF-8
+SAME+= sr_Cyrl_RS.UTF-8:sr_Latn_RS.UTF-8
+SAME+= zh_Hans_CN.GB18030:zh_Hans_CN.GBK
+SAME+= zh_Hans_CN.GB18030:zh_Hans_CN.eucCN
+SAME+= ko_KR.eucKR:ko_KR.CP949 # legacy (same charset)
+FILES= ${LOCALES:S/$/.out/}
CLEANFILES= ${FILES}
-CA_LINKS= ca_ES:ca_AD ca_ES:ca_FR ca_ES:ca_IT
-CZ_LINKS= cs_CZ:sk_SK
-DE_LINKS= de_DE:de_AT de_DE:de_CH
-FR_LINKS= fr_FR:fr_CA
-GB_LINKS= en_GB:en_AU en_GB:en_NZ
-IT_LINKS= it_IT:it_CH
-NL_LINKS= nl_NL:nl_BE
-NO_LINKS= no_NO:nb_NO no_NO:nn_NO
-PT_LINKS= pt_PT:pt_BR
-
-ENCODINGS= Big5 Big5HKSCS CP949 eucKR GB2312 GBK \
- ISO8859-1 ISO8859-2 ISO8859-4 ISO8859-9 ISO8859-13 ISO8859-15 \
- US-ASCII UTF-8
-
-Big5_Big5HKSCS= zh_TW:zh_HK
-eucKR_CP949= ko_KR
-GB2312_GBK= zh_CN
-ISO8859-1_ISO8859-1= ${CA_LINKS} ${DE_LINKS} ${FR_LINKS} ${GB_LINKS} \
- ${IT_LINKS} ${NL_LINKS} ${NO_LINKS} ${PT_LINKS}
-ISO8859-1_ISO8859-15= af_ZA ca_ES da_DK de_DE en_CA en_GB en_US es_ES \
- eu_ES fi_FI fr_BE fr_CH fr_FR is_IS it_IT nl_NL no_NO \
- pt_PT sv_SE \
- ${CA_LINKS} ${DE_LINKS} ${FR_LINKS} ${GB_LINKS} ${IT_LINKS} \
- ${NL_LINKS} ${NO_LINKS}
-ISO8859-1_US-ASCII= ${GB_LINKS} en_CA en_GB en_US
-ISO8859-1_UTF-8= af_ZA ca_ES da_DK de_DE en_CA en_GB en_US es_ES eu_ES \
- fi_FI fr_BE fr_CH fr_FR is_IS it_IT nl_NL no_NO \
- pt_PT sv_SE
-ISO8859-2_ISO8859-2= ${CZ_LINKS}
-ISO8859-2_UTF-8= cs_CZ hr_HR hu_HU pl_PL ro_RO sl_SI
-ISO8859-9_UTF-8= tr_TR
-ISO8859-13_ISO8859-4= lt_LT
-ISO8859-13_UTF-8= lt_LT
-ISO8859-15_UTF-8= et_EE
-UTF-8_UTF-8= ${CA_LINKS} ${CZ_LINKS} ${DE_LINKS} ${FR_LINKS} ${GB_LINKS} \
- en_GB:en_IE \
- ${IT_LINKS} ${NL_LINKS} ${NO_LINKS} ${PT_LINKS} zh_TW:zh_HK
-
-SYMLINKS=
-.for enc1 in ${ENCODINGS}
-.for enc2 in ${ENCODINGS}
-.for lang_terr in ${${enc1}_${enc2}}
-SYMLINKS+= ../${lang_terr:C/:.*$//}.${enc1}/${FILESNAME} \
- ${LOCALEDIR}/${lang_terr:C/^.*://}.${enc2}/${FILESNAME}
-.endfor
-.endfor
+.for f in ${SAME}
+SYMLINKS+= ../${f:C/:.*$//}/${FILESNAME} ${LOCALEDIR}/${f:C/^.*://}
.endfor
-beforeinstall:
-.for locale in ${LOCALES}
-.if exists(${DESTDIR}${LOCALEDIR}/${locale}/LC_MESSAGES/)
- rm -rf ${DESTDIR}${LOCALEDIR}/${locale}/LC_MESSAGES
-.endif
+.for f in ${LOCALES}
+FILESDIR_${f}.out= ${LOCALEDIR}/${f}
.endfor
.include <bsd.prog.mk>
diff --git a/share/msgdef/Makefile.depend b/share/msgdef/Makefile.depend
deleted file mode 100644
index f80275d86ab1..000000000000
--- a/share/msgdef/Makefile.depend
+++ /dev/null
@@ -1,11 +0,0 @@
-# $FreeBSD$
-# Autogenerated - do NOT edit!
-
-DIRDEPS = \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif
diff --git a/share/msgdef/af_ZA.ISO8859-1.src b/share/msgdef/af_ZA.ISO8859-1.src
index a87da07feee2..d8cc8d99024d 100644
--- a/share/msgdef/af_ZA.ISO8859-1.src
+++ b/share/msgdef/af_ZA.ISO8859-1.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[jJyY].*
+^(([jJ]([aA])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([eE][eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+ja:j:JA:J:yes:y:YES:Y
+#
+# nostr
+nee:n:NEE:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/am_ET.UTF-8.src b/share/msgdef/am_ET.UTF-8.src
index a2b25ed14958..dd648f9693c2 100644
--- a/share/msgdef/am_ET.UTF-8.src
+++ b/share/msgdef/am_ET.UTF-8.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[ይሁንyY].*
+^((አዎን)|(ዎ)|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[አይሁንnN].*
+^((አይ)|(ይ)|([nN]([oO])?)|([nN]))
+#
# yesstr
-ይሁን
+አዎን:ዎ:yes:y:YES:Y
+#
# nostr
-አይሁን
+አይ:ይ:no:n:NO:N
# EOF
diff --git a/share/msgdef/be_BY.CP1131.src b/share/msgdef/be_BY.CP1131.src
index ed0a05eea079..be90ba4bcf42 100644
--- a/share/msgdef/be_BY.CP1131.src
+++ b/share/msgdef/be_BY.CP1131.src
@@ -1,13 +1,17 @@
-# $FreeBSD$
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([][])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-⠪
+⠪::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/be_BY.CP1251.src b/share/msgdef/be_BY.CP1251.src
index a401228e58b2..bd3acf16d823 100644
--- a/share/msgdef/be_BY.CP1251.src
+++ b/share/msgdef/be_BY.CP1251.src
@@ -1,13 +1,17 @@
-# $FreeBSD$
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([][])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/be_BY.ISO8859-5.src b/share/msgdef/be_BY.ISO8859-5.src
index a36e12673ee1..ba47a68340ef 100644
--- a/share/msgdef/be_BY.ISO8859-5.src
+++ b/share/msgdef/be_BY.ISO8859-5.src
@@ -1,13 +1,17 @@
-# $FreeBSD$
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([а][ں])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[ݽnN].*
+^(([ݽ]([յ])?)|([ݽ])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::°::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/be_BY.UTF-8.src b/share/msgdef/be_BY.UTF-8.src
index 8d23237784f7..8e0b9076b3f5 100644
--- a/share/msgdef/be_BY.UTF-8.src
+++ b/share/msgdef/be_BY.UTF-8.src
@@ -1,13 +1,17 @@
-# $FreeBSD$
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[тТyY].*
+^(([тТ]([аА][кК])?)|([тТ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[нНnN].*
+^(([нН]([еЕ])?)|([нН])|([nN]([oO])?)|([nN]))
+#
# yesstr
-так
+так:т:ТАК:Т:yes:y:YES:Y
+#
# nostr
-не
+не:н:НЕ:Н:no:n:NO:N
# EOF
diff --git a/share/msgdef/bg_BG.CP1251.src b/share/msgdef/bg_BG.CP1251.src
index e52d30d64cf3..bef2b0071813 100644
--- a/share/msgdef/bg_BG.CP1251.src
+++ b/share/msgdef/bg_BG.CP1251.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/bg_BG.UTF-8.src b/share/msgdef/bg_BG.UTF-8.src
index 72dca12b49a9..1e4662cff11a 100644
--- a/share/msgdef/bg_BG.UTF-8.src
+++ b/share/msgdef/bg_BG.UTF-8.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[дДyY].*
+^(([дД]([аА])?)|([дД])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[нНnN].*
+^(([нН]([еЕ])?)|([нН])|([nN]([oO])?)|([nN]))
+#
# yesstr
-да
+да:д:ДА:Д:yes:y:YES:Y
+#
# nostr
-не
+не:н:НЕ:Н:no:n:NO:N
# EOF
diff --git a/share/msgdef/ca_AD.ISO8859-1.src b/share/msgdef/ca_AD.ISO8859-1.src
new file mode 100644
index 000000000000..3b728b69a332
--- /dev/null
+++ b/share/msgdef/ca_AD.ISO8859-1.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([sS]([])?)|([sS])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([oO])?)|([nN]))
+#
+# yesstr
+s:s:S:S:yes:y:YES:Y
+#
+# nostr
+no:n:NO:N
+# EOF
diff --git a/share/msgdef/ca_AD.UTF-8.src b/share/msgdef/ca_AD.UTF-8.src
new file mode 100644
index 000000000000..c6fb81359a01
--- /dev/null
+++ b/share/msgdef/ca_AD.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([sS]([íÍ])?)|([sS])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([oO])?)|([nN]))
+#
+# yesstr
+sí:s:SÍ:S:yes:y:YES:Y
+#
+# nostr
+no:n:NO:N
+# EOF
diff --git a/share/msgdef/ca_ES.ISO8859-1.src b/share/msgdef/ca_ES.ISO8859-1.src
deleted file mode 100644
index e839a0a217ba..000000000000
--- a/share/msgdef/ca_ES.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[sSyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/cs_CZ.ISO8859-2.src b/share/msgdef/cs_CZ.ISO8859-2.src
index a6fc83634397..ca21a9e139e5 100644
--- a/share/msgdef/cs_CZ.ISO8859-2.src
+++ b/share/msgdef/cs_CZ.ISO8859-2.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[aAyY].*
+^(([aA]([nN][oO])?)|([aA])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
# yesstr
-ano
+ano:a:ANO:A:yes:y:YES:Y
+#
# nostr
-ne
+ne:n:NE:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/da_DK.ISO8859-1.src b/share/msgdef/da_DK.ISO8859-1.src
index a87da07feee2..4ba2316ac238 100644
--- a/share/msgdef/da_DK.ISO8859-1.src
+++ b/share/msgdef/da_DK.ISO8859-1.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[jJyY].*
+^(([jJ]([aA])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([eE][jJ])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+ja:j:JA:J:yes:y:YES:Y
+#
+# nostr
+nej:n:NEJ:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/de_AT.ISO8859-1.src b/share/msgdef/de_AT.ISO8859-1.src
new file mode 100644
index 000000000000..63c5a780f528
--- /dev/null
+++ b/share/msgdef/de_AT.ISO8859-1.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([jJ]([aA])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([eE][iI][nN])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+ja:j:JA:J:yes:y:YES:Y
+#
+# nostr
+nein:n:NEIN:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/de_DE.ISO8859-1.src b/share/msgdef/de_DE.ISO8859-1.src
deleted file mode 100644
index a87da07feee2..000000000000
--- a/share/msgdef/de_DE.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[jJyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/el_GR.ISO8859-7.src b/share/msgdef/el_GR.ISO8859-7.src
index 85d433e990cf..a49f34bf56dc 100644
--- a/share/msgdef/el_GR.ISO8859-7.src
+++ b/share/msgdef/el_GR.ISO8859-7.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([][])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([][])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/el_GR.UTF-8.src b/share/msgdef/el_GR.UTF-8.src
index 560675e005c0..1ebac72be819 100644
--- a/share/msgdef/el_GR.UTF-8.src
+++ b/share/msgdef/el_GR.UTF-8.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[νΝyY].*
+^(([νΝ]([αΑ][ιΙ])?)|([νΝ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[οΟnN].*
+^(([όΌ]([χΧ][ιΙ])?)|([όΌ])|([nN]([oO])?)|([nN]))
+#
# yesstr
-ΝΑΙ
+ναι:ν:ΝΑΙ:Ν:yes:y:YES:Y
+#
# nostr
-ΟΧΙ
+όχι:ό:ΌΧΙ:Ό:no:n:NO:N
# EOF
diff --git a/share/msgdef/en_AU.ISO8859-1.src b/share/msgdef/en_AU.ISO8859-1.src
new file mode 100644
index 000000000000..1385b93b3abe
--- /dev/null
+++ b/share/msgdef/en_AU.ISO8859-1.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([oO])?)|([nN]))
+#
+# yesstr
+yes:y:YES:Y
+#
+# nostr
+no:n:NO:N
+# EOF
diff --git a/share/msgdef/en_CA.ISO8859-1.src b/share/msgdef/en_CA.ISO8859-1.src
deleted file mode 100644
index 7a66f558ef57..000000000000
--- a/share/msgdef/en_CA.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yYoO].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/en_GB.ISO8859-1.src b/share/msgdef/en_GB.ISO8859-1.src
deleted file mode 100644
index f80c8facd17b..000000000000
--- a/share/msgdef/en_GB.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/en_US.ISO8859-1.src b/share/msgdef/en_US.ISO8859-1.src
deleted file mode 100644
index bc2594ded3df..000000000000
--- a/share/msgdef/en_US.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yYsS].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/es_ES.ISO8859-1.src b/share/msgdef/es_ES.ISO8859-1.src
deleted file mode 100644
index e839a0a217ba..000000000000
--- a/share/msgdef/es_ES.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[sSyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/et_EE.ISO8859-15.src b/share/msgdef/et_EE.ISO8859-15.src
index 0d31afd0a2ec..9ecf590cdff4 100644
--- a/share/msgdef/et_EE.ISO8859-15.src
+++ b/share/msgdef/et_EE.ISO8859-15.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[1JjYy].*
+^(([jJ]([aA][hH])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[0EeNn].*
+^(([eE]([iI])?)|([eE])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+jah:j:JAH:J:yes:y:YES:Y
+#
+# nostr
+ei:e:EI:E:no:n:NO:N
# EOF
diff --git a/share/msgdef/eu_ES.ISO8859-1.src b/share/msgdef/eu_ES.ISO8859-1.src
index 8eaba389694b..9d473826df09 100644
--- a/share/msgdef/eu_ES.ISO8859-1.src
+++ b/share/msgdef/eu_ES.ISO8859-1.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[bByY].*
+^(([bB]([aA][iI])?)|([bB])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[eEnN].*
+^(([eE]([zZ])?)|([eE])|([nN]([oO])?)|([nN]))
+#
# yesstr
-bai
+bai:b:BAI:B:yes:y:YES:Y
+#
# nostr
-ez
+ez:e:EZ:E:no:n:NO:N
# EOF
diff --git a/share/msgdef/fi_FI.ISO8859-1.src b/share/msgdef/fi_FI.ISO8859-1.src
index ac0092a84b3f..abb984d3bbe1 100644
--- a/share/msgdef/fi_FI.ISO8859-1.src
+++ b/share/msgdef/fi_FI.ISO8859-1.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[kKjJyY].*
+^(([kK]([yY][lL][lL][])?)|([kK])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nNeE].*
+^(([eE]([iI])?)|([eE])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+kyll:k:KYLL:K:yes:y:YES:Y
+#
+# nostr
+ei:e:EI:E:no:n:NO:N
# EOF
diff --git a/share/msgdef/fi_FI.UTF-8.src b/share/msgdef/fi_FI.UTF-8.src
new file mode 100644
index 000000000000..96db59c38cf8
--- /dev/null
+++ b/share/msgdef/fi_FI.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([kK]([yY][lL][lL][äÄ])?)|([kK])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([eE]([iI])?)|([eE])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+kyllä:k:KYLLÄ:K:yes:y:YES:Y
+#
+# nostr
+ei:e:EI:E:no:n:NO:N
+# EOF
diff --git a/share/msgdef/fr_BE.ISO8859-1.src b/share/msgdef/fr_BE.ISO8859-1.src
index 14f8e236ee4a..b3105af86fd8 100644
--- a/share/msgdef/fr_BE.ISO8859-1.src
+++ b/share/msgdef/fr_BE.ISO8859-1.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[oOyYjJ1].*
+^(([oO]([uU][iI])?)|([oO])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([oO][nN])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+oui:o:OUI:O:yes:y:YES:Y
+#
+# nostr
+non:n:NON:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/fr_CH.ISO8859-1.src b/share/msgdef/fr_CH.ISO8859-1.src
deleted file mode 100644
index 4af763873c0d..000000000000
--- a/share/msgdef/fr_CH.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[oOjJsSyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/fr_FR.ISO8859-1.src b/share/msgdef/fr_FR.ISO8859-1.src
deleted file mode 100644
index 80d0218e78e6..000000000000
--- a/share/msgdef/fr_FR.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[oOyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/he_IL.UTF-8.src b/share/msgdef/he_IL.UTF-8.src
index ef87399e0769..a712045f9e48 100644
--- a/share/msgdef/he_IL.UTF-8.src
+++ b/share/msgdef/he_IL.UTF-8.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yYכ].*
+^((כן)|(כ)|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nNל].*
+^((לא)|(ל)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+כן:כ:yes:y:YES:Y
+#
+# nostr
+לא:ל:no:n:NO:N
# EOF
diff --git a/share/msgdef/hi_IN.ISCII-DEV.src b/share/msgdef/hi_IN.ISCII-DEV.src
index f9ec934117f4..2ceb5d61fc8e 100644
--- a/share/msgdef/hi_IN.ISCII-DEV.src
+++ b/share/msgdef/hi_IN.ISCII-DEV.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^((ڡ)|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^((ܢ)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+ڡ:yes:y:YES:Y
+#
+# nostr
+ܢ:no:n:NO:N
# EOF
diff --git a/share/msgdef/hi_IN.UTF-8.src b/share/msgdef/hi_IN.UTF-8.src
new file mode 100644
index 000000000000..00b25babbe5b
--- /dev/null
+++ b/share/msgdef/hi_IN.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^((हाँ)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^((नहीं)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+हाँ:yes:y:YES:Y
+#
+# nostr
+नहीं:no:n:NO:N
+# EOF
diff --git a/share/msgdef/hr_HR.ISO8859-2.src b/share/msgdef/hr_HR.ISO8859-2.src
index a711ff76db9d..cc22eaa3564b 100644
--- a/share/msgdef/hr_HR.ISO8859-2.src
+++ b/share/msgdef/hr_HR.ISO8859-2.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[dDyY].*
+^(([dD]([aA])?)|([dD])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+da:d:DA:D:yes:y:YES:Y
+#
+# nostr
+ne:n:NE:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/hu_HU.ISO8859-2.src b/share/msgdef/hu_HU.ISO8859-2.src
index 4f009c700567..dbdc77577509 100644
--- a/share/msgdef/hu_HU.ISO8859-2.src
+++ b/share/msgdef/hu_HU.ISO8859-2.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[iIyY].*
+^(([iI]([gG][eE][nN])?)|([iI])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([eE][mM])?)|([nN])|([nN]([oO])?)|([nN]))
+#
# yesstr
-igen
+igen:i:IGEN:I:yes:y:YES:Y
+#
# nostr
-nem
+nem:n:NEM:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/hy_AM.ARMSCII-8.src b/share/msgdef/hy_AM.ARMSCII-8.src
index c11b38e51caf..ccc714c9b240 100644
--- a/share/msgdef/hy_AM.ARMSCII-8.src
+++ b/share/msgdef/hy_AM.ARMSCII-8.src
@@ -1,17 +1,17 @@
-# $FreeBSD$
-#
-# msgdef source for ARMSCII-8 locale for FreeBSD
-# Made available by Vahe Khachikyan <vahe@khachikyan.de>
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([][])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/hy_AM.UTF-8.src b/share/msgdef/hy_AM.UTF-8.src
index 749637de33c3..24fdf8e424d9 100644
--- a/share/msgdef/hy_AM.UTF-8.src
+++ b/share/msgdef/hy_AM.UTF-8.src
@@ -1,17 +1,17 @@
-# $FreeBSD$
-#
-# msgdef source for ARMSCII-8 locale for FreeBSD
-# Made available by Vahe Khachikyan <vahe@khachikyan.de>
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[աԱyY].*
+^(([աԱ]([յՅ][ոՈ])?)|([աԱ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[ոՈnN].*
+^(([ոՈ]([չՉ])?)|([ոՈ])|([nN]([oO])?)|([nN]))
+#
# yesstr
-Այո
+այո:ա:ԱՅՈ:Ա:yes:y:YES:Y
+#
# nostr
-Ոչ
+ոչ:ո:ՈՉ:Ո:no:n:NO:N
# EOF
diff --git a/share/msgdef/is_IS.ISO8859-1.src b/share/msgdef/is_IS.ISO8859-1.src
index a87da07feee2..3a3510e3e675 100644
--- a/share/msgdef/is_IS.ISO8859-1.src
+++ b/share/msgdef/is_IS.ISO8859-1.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[jJyY].*
+^(([jJ]([])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([eE][iI])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+j:j:J:J:yes:y:YES:Y
+#
+# nostr
+nei:n:NEI:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/is_IS.UTF-8.src b/share/msgdef/is_IS.UTF-8.src
new file mode 100644
index 000000000000..e8cd5d767620
--- /dev/null
+++ b/share/msgdef/is_IS.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([jJ]([áÁ])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([eE][iI])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+já:j:JÁ:J:yes:y:YES:Y
+#
+# nostr
+nei:n:NEI:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/it_CH.ISO8859-1.src b/share/msgdef/it_CH.ISO8859-1.src
new file mode 100644
index 000000000000..9b963dae155c
--- /dev/null
+++ b/share/msgdef/it_CH.ISO8859-1.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([sS]([])?)|([sS])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([oO])?)|([nN]))
+#
+# yesstr
+s:s:S:S:yes:y:YES:Y
+#
+# nostr
+no:n:NO:N
+# EOF
diff --git a/share/msgdef/it_CH.UTF-8.src b/share/msgdef/it_CH.UTF-8.src
new file mode 100644
index 000000000000..e0ae7fcb5aac
--- /dev/null
+++ b/share/msgdef/it_CH.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([sS]([ìÌ])?)|([sS])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([oO])?)|([nN]))
+#
+# yesstr
+sì:s:SÌ:S:yes:y:YES:Y
+#
+# nostr
+no:n:NO:N
+# EOF
diff --git a/share/msgdef/it_IT.ISO8859-1.src b/share/msgdef/it_IT.ISO8859-1.src
deleted file mode 100644
index e839a0a217ba..000000000000
--- a/share/msgdef/it_IT.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[sSyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/ja_JP.SJIS.src b/share/msgdef/ja_JP.SJIS.src
index 8a209e5b8526..9cc35beb01fd 100644
--- a/share/msgdef/ja_JP.SJIS.src
+++ b/share/msgdef/ja_JP.SJIS.src
@@ -1,13 +1,17 @@
-# $FreeBSD$
-#
-# XXX: ja_JP.SJIS contains english messages only. Someone familiar with
-# this locale is wanted to complete it!
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^((͂)|(nC)|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(()|(CCG)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+͂:nC:yes:y:YES:Y
+#
+# nostr
+:CCG:no:n:NO:N
# EOF
diff --git a/share/msgdef/ja_JP.UTF-8.src b/share/msgdef/ja_JP.UTF-8.src
index 476ef44b3d62..840726c2997e 100644
--- a/share/msgdef/ja_JP.UTF-8.src
+++ b/share/msgdef/ja_JP.UTF-8.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yYyYはハ].*
+^((はい)|(ハイ)|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nNnNいイ].*
+^((いいえ)|(イイエ)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+はい:ハイ:yes:y:YES:Y
+#
+# nostr
+いいえ:イイエ:no:n:NO:N
# EOF
diff --git a/share/msgdef/ja_JP.eucJP.src b/share/msgdef/ja_JP.eucJP.src
index 2f06e015abae..2b41065e0267 100644
--- a/share/msgdef/ja_JP.eucJP.src
+++ b/share/msgdef/ja_JP.eucJP.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY٤ϥ].*
+^((Ϥ)|(ϥ)|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nNΤ].*
+^(()|()|([nN]([oO])?)|([nN]))
+#
+# yesstr
+Ϥ:ϥ:yes:y:YES:Y
+#
+# nostr
+::no:n:NO:N
# EOF
diff --git a/share/msgdef/kk_Cyrl_KZ.UTF-8.src b/share/msgdef/kk_Cyrl_KZ.UTF-8.src
new file mode 100644
index 000000000000..80f5bfaf9b7d
--- /dev/null
+++ b/share/msgdef/kk_Cyrl_KZ.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([иИ]([әӘ])?)|([иИ])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([жЖ]([оО][қҚ])?)|([жЖ])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+иә:и:ИӘ:И:yes:y:YES:Y
+#
+# nostr
+жоқ:ж:ЖОҚ:Ж:no:n:NO:N
+# EOF
diff --git a/share/msgdef/kk_KZ.PT154.src b/share/msgdef/kk_KZ.PT154.src
deleted file mode 100644
index 583096f3ef5e..000000000000
--- a/share/msgdef/kk_KZ.PT154.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yY].*
-# noexpr
-^[nN].*
-# yesstr
-
-# nostr
-
-# EOF
diff --git a/share/msgdef/kk_KZ.UTF-8.src b/share/msgdef/kk_KZ.UTF-8.src
deleted file mode 100644
index 23cd9cbb88a7..000000000000
--- a/share/msgdef/kk_KZ.UTF-8.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[иИyY].*
-# noexpr
-^[жЖnN].*
-# yesstr
-ия
-# nostr
-жок
-# EOF
diff --git a/share/msgdef/ko_KR.UTF-8.src b/share/msgdef/ko_KR.UTF-8.src
index 7921ba0f9e0d..3b6ab61af675 100644
--- a/share/msgdef/ko_KR.UTF-8.src
+++ b/share/msgdef/ko_KR.UTF-8.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yYyY예].*
+^((예)|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nNnN아].*
+^((아니요)|([nN]([oO])?)|([nN]))
+#
# yesstr
-예
+예:yes:y:YES:Y
+#
# nostr
-아니오
+아니요:no:n:NO:N
# EOF
diff --git a/share/msgdef/ko_KR.eucKR.src b/share/msgdef/ko_KR.eucKR.src
index 097d4ddf7b39..f6fcc056b420 100644
--- a/share/msgdef/ko_KR.eucKR.src
+++ b/share/msgdef/ko_KR.eucKR.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yYٿ].*
+^(()|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nNξ].*
+^((ƴϿ)|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+:yes:y:YES:Y
+#
# nostr
-ƴϿ
+ƴϿ:no:n:NO:N
# EOF
diff --git a/share/msgdef/lt_LT.ISO8859-13.src b/share/msgdef/lt_LT.ISO8859-13.src
index 296f1584c1b0..f9d450cc6a7c 100644
--- a/share/msgdef/lt_LT.ISO8859-13.src
+++ b/share/msgdef/lt_LT.ISO8859-13.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[tTyY].*
+^(([tT]([aA][iI][pP])?)|([tT])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
# yesstr
-taip
+taip:t:TAIP:T:yes:y:YES:Y
+#
# nostr
-ne
+ne:n:NE:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/lv_LV.ISO8859-13.src b/share/msgdef/lv_LV.ISO8859-13.src
index d744ad86b30c..758c84eb83e1 100644
--- a/share/msgdef/lv_LV.ISO8859-13.src
+++ b/share/msgdef/lv_LV.ISO8859-13.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[jJyY].*
+^(([jJ]([])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([])?)|([nN])|([nN]([oO])?)|([nN]))
+#
# yesstr
-j
+j:j:J:J:yes:y:YES:Y
+#
# nostr
-n
+n:n:N:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/lv_LV.UTF-8.src b/share/msgdef/lv_LV.UTF-8.src
index 85f1a73fc1ed..2f93a0bd2096 100644
--- a/share/msgdef/lv_LV.UTF-8.src
+++ b/share/msgdef/lv_LV.UTF-8.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[jJyY].*
+^(([jJ]([āĀ])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([ēĒ])?)|([nN])|([nN]([oO])?)|([nN]))
+#
# yesstr
-jā
+jā:j:JĀ:J:yes:y:YES:Y
+#
# nostr
-nē
+nē:n:NĒ:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/mn_Cyrl_MN.UTF-8.src b/share/msgdef/mn_Cyrl_MN.UTF-8.src
new file mode 100644
index 000000000000..40510256de0c
--- /dev/null
+++ b/share/msgdef/mn_Cyrl_MN.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([тТ]([иИ][йЙ][мМ])?)|([тТ])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([үҮ]([гГ][үҮ][йЙ])?)|([үҮ])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+тийм:т:ТИЙМ:Т:yes:y:YES:Y
+#
+# nostr
+үгүй:ү:ҮГҮЙ:Ү:no:n:NO:N
+# EOF
diff --git a/share/msgdef/mn_MN.UTF-8.src b/share/msgdef/mn_MN.UTF-8.src
deleted file mode 100644
index 8851f6a04361..000000000000
--- a/share/msgdef/mn_MN.UTF-8.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[тТyY].*
-# noexpr
-^[үҮnN].*
-# yesstr
-тийм
-# nostr
-үгүй
-# EOF
diff --git a/share/msgdef/nb_NO.ISO8859-1.src b/share/msgdef/nb_NO.ISO8859-1.src
new file mode 100644
index 000000000000..330ec24d14ea
--- /dev/null
+++ b/share/msgdef/nb_NO.ISO8859-1.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([jJ]([aA])?)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([eE][iI])?)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+ja:JA:yes:y:YES:Y
+#
+# nostr
+nei:NEI:no:n:NO:N
+# EOF
diff --git a/share/msgdef/nl_NL.ISO8859-1.src b/share/msgdef/nl_NL.ISO8859-1.src
deleted file mode 100644
index a87da07feee2..000000000000
--- a/share/msgdef/nl_NL.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[jJyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/nn_NO.ISO8859-1.src b/share/msgdef/nn_NO.ISO8859-1.src
new file mode 100644
index 000000000000..7fafe93b5180
--- /dev/null
+++ b/share/msgdef/nn_NO.ISO8859-1.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([jJ]([aA])?)|([jJ])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([eE][iI])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+ja:j:JA:J:yes:y:YES:Y
+#
+# nostr
+nei:n:NEI:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/no_NO.ISO8859-1.src b/share/msgdef/no_NO.ISO8859-1.src
deleted file mode 100644
index a87da07feee2..000000000000
--- a/share/msgdef/no_NO.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[jJyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/pl_PL.ISO8859-2.src b/share/msgdef/pl_PL.ISO8859-2.src
index a7acd2adf1f0..ed7f79b6595d 100644
--- a/share/msgdef/pl_PL.ISO8859-2.src
+++ b/share/msgdef/pl_PL.ISO8859-2.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[tTyY].*
+^(([tT]([aA][kK])?)|([tT])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([iI][eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
# yesstr
-tak
+tak:t:TAK:T:yes:y:YES:Y
+#
# nostr
-nie
+nie:n:NIE:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/pt_BR.ISO8859-1.src b/share/msgdef/pt_BR.ISO8859-1.src
new file mode 100644
index 000000000000..091ce48cf171
--- /dev/null
+++ b/share/msgdef/pt_BR.ISO8859-1.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([sS]([iI][mM])?)|([sS])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([][oO])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+sim:s:SIM:S:yes:y:YES:Y
+#
+# nostr
+no:n:NO:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/pt_BR.UTF-8.src b/share/msgdef/pt_BR.UTF-8.src
new file mode 100644
index 000000000000..be36b8247a4b
--- /dev/null
+++ b/share/msgdef/pt_BR.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([sS]([iI][mM])?)|([sS])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([ãÃ][oO])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+sim:s:SIM:S:yes:y:YES:Y
+#
+# nostr
+não:n:NÃO:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/pt_PT.ISO8859-1.src b/share/msgdef/pt_PT.ISO8859-1.src
deleted file mode 100644
index e839a0a217ba..000000000000
--- a/share/msgdef/pt_PT.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[sSyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/ro_RO.ISO8859-2.src b/share/msgdef/ro_RO.ISO8859-2.src
index a711ff76db9d..eadfa2e6c4de 100644
--- a/share/msgdef/ro_RO.ISO8859-2.src
+++ b/share/msgdef/ro_RO.ISO8859-2.src
@@ -1,10 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[dDyY].*
+^(([dD]([aA])?)|([dD])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([nN]([uU])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+da:d:DA:D:yes:y:YES:Y
+#
+# nostr
+nu:n:NU:N:no:n:NO:N
# EOF
diff --git a/share/msgdef/ru_RU.CP1251.src b/share/msgdef/ru_RU.CP1251.src
index 5774d94f6f54..ac835cd4ec52 100644
--- a/share/msgdef/ru_RU.CP1251.src
+++ b/share/msgdef/ru_RU.CP1251.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([][])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/ru_RU.CP866.src b/share/msgdef/ru_RU.CP866.src
index df2b035bb4b6..0da200f02562 100644
--- a/share/msgdef/ru_RU.CP866.src
+++ b/share/msgdef/ru_RU.CP866.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([][])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/ru_RU.ISO8859-5.src b/share/msgdef/ru_RU.ISO8859-5.src
index 360485e980e4..4ec157532a7c 100644
--- a/share/msgdef/ru_RU.ISO8859-5.src
+++ b/share/msgdef/ru_RU.ISO8859-5.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[ԴyY].*
+^(([Դ]([а])?)|([Դ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[ݽnN].*
+^(([ݽ]([յ][])?)|([ݽ])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/ru_RU.KOI8-R.src b/share/msgdef/ru_RU.KOI8-R.src
index 465cfa69f259..82892e6b8222 100644
--- a/share/msgdef/ru_RU.KOI8-R.src
+++ b/share/msgdef/ru_RU.KOI8-R.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([][])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/ru_RU.UTF-8.src b/share/msgdef/ru_RU.UTF-8.src
index 21882ca80b38..7da8e6998a28 100644
--- a/share/msgdef/ru_RU.UTF-8.src
+++ b/share/msgdef/ru_RU.UTF-8.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[дДyY].*
+^(([дД]([аА])?)|([дД])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[нНnN].*
+^(([нН]([еЕ][тТ])?)|([нН])|([nN]([oO])?)|([nN]))
+#
# yesstr
-да
+да:д:ДА:Д:yes:y:YES:Y
+#
# nostr
-нет
+нет:н:НЕТ:Н:no:n:NO:N
# EOF
diff --git a/share/msgdef/se_FI.UTF-8.src b/share/msgdef/se_FI.UTF-8.src
new file mode 100644
index 000000000000..135331a028d5
--- /dev/null
+++ b/share/msgdef/se_FI.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([jJ]([oO])?)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([iI]([iI])?)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+jo:JO:yes:y:YES:Y
+#
+# nostr
+ii:II:no:n:NO:N
+# EOF
diff --git a/share/msgdef/sk_SK.ISO8859-2.src b/share/msgdef/sk_SK.ISO8859-2.src
new file mode 100644
index 000000000000..b4d621589652
--- /dev/null
+++ b/share/msgdef/sk_SK.ISO8859-2.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([]([nN][oO])?)|([aA])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([iI][eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+no:a:NO:A:yes:y:YES:Y
+#
+# nostr
+nie:n:NIE:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/sk_SK.UTF-8.src b/share/msgdef/sk_SK.UTF-8.src
new file mode 100644
index 000000000000..352b758a98ce
--- /dev/null
+++ b/share/msgdef/sk_SK.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([áÁ]([nN][oO])?)|([aA])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([nN]([iI][eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+áno:a:ÁNO:A:yes:y:YES:Y
+#
+# nostr
+nie:n:NIE:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/sl_SI.ISO8859-2.src b/share/msgdef/sl_SI.ISO8859-2.src
deleted file mode 100644
index 9686b4f232fc..000000000000
--- a/share/msgdef/sl_SI.ISO8859-2.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[YyJj].*
-# noexpr
-^[Nn].*
-# EOF
diff --git a/share/msgdef/sr_Cyrl_RS.ISO8859-5.src b/share/msgdef/sr_Cyrl_RS.ISO8859-5.src
new file mode 100644
index 000000000000..51560e8f733d
--- /dev/null
+++ b/share/msgdef/sr_Cyrl_RS.ISO8859-5.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([Դ]([а])?)|([Դ])|([yY]([eE][sS])?)|([yY]))""^(([dD]([aA])?)|([dD])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([ݽ]([յ])?)|([ݽ])|([nN]([oO])?)|([nN]))""^(([nN]([eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+::::yes:y:YES:Y""da:d:DA:D:yes:y:YES:Y
+#
+# nostr
+::::no:n:NO:N""ne:n:NE:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/sr_Cyrl_RS.UTF-8.src b/share/msgdef/sr_Cyrl_RS.UTF-8.src
new file mode 100644
index 000000000000..34ab3ebd23e0
--- /dev/null
+++ b/share/msgdef/sr_Cyrl_RS.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([дД]([аА])?)|([дД])|([yY]([eE][sS])?)|([yY]))""^(([dD]([aA])?)|([dD])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([нН]([еЕ])?)|([нН])|([nN]([oO])?)|([nN]))""^(([nN]([eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+да:д:ДА:Д:yes:y:YES:Y""da:d:DA:D:yes:y:YES:Y
+#
+# nostr
+не:н:НЕ:Н:no:n:NO:N""ne:n:NE:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/sr_Latn_RS.ISO8859-2.src b/share/msgdef/sr_Latn_RS.ISO8859-2.src
new file mode 100644
index 000000000000..00c3eae0841a
--- /dev/null
+++ b/share/msgdef/sr_Latn_RS.ISO8859-2.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([dD]([aA])?)|([dD])|([yY]([eE][sS])?)|([yY]))""^(([dD]([aA])?)|([dD])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([hH]([eE])?)|([hH])|([nN]([oO])?)|([nN]))""^(([nN]([eE])?)|([nN])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+da:d:DA:D:yes:y:YES:Y""da:d:DA:D:yes:y:YES:Y
+#
+# nostr
+he:h:HE:H:no:n:NO:N""ne:n:NE:N:no:n:NO:N
+# EOF
diff --git a/share/msgdef/sr_YU.ISO8859-2.src b/share/msgdef/sr_YU.ISO8859-2.src
deleted file mode 100644
index a711ff76db9d..000000000000
--- a/share/msgdef/sr_YU.ISO8859-2.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[dDyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/sr_YU.ISO8859-5.src b/share/msgdef/sr_YU.ISO8859-5.src
deleted file mode 100644
index 24ec0c74090d..000000000000
--- a/share/msgdef/sr_YU.ISO8859-5.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[ԴyY].*
-# noexpr
-^[ݽnN].*
-# yesstr
-
-# nostr
-
-# EOF
diff --git a/share/msgdef/sr_YU.UTF-8.src b/share/msgdef/sr_YU.UTF-8.src
deleted file mode 100644
index 72dca12b49a9..000000000000
--- a/share/msgdef/sr_YU.UTF-8.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[дДyY].*
-# noexpr
-^[нНnN].*
-# yesstr
-да
-# nostr
-не
-# EOF
diff --git a/share/msgdef/sv_SE.ISO8859-1.src b/share/msgdef/sv_SE.ISO8859-1.src
deleted file mode 100644
index a87da07feee2..000000000000
--- a/share/msgdef/sv_SE.ISO8859-1.src
+++ /dev/null
@@ -1,10 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[jJyY].*
-# noexpr
-^[nN].*
-# EOF
diff --git a/share/msgdef/tr_TR.ISO8859-9.src b/share/msgdef/tr_TR.ISO8859-9.src
index 47329944b040..3b355457544b 100644
--- a/share/msgdef/tr_TR.ISO8859-9.src
+++ b/share/msgdef/tr_TR.ISO8859-9.src
@@ -1,11 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-# XXX: I with dot above also should be included to yesexpr
-^[IiYy].*
+^(([eE]([vV][eE][tT])?)|([eE])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([hH]([aA][yY][I][rR])?)|([hH]([aA][yY][iI][rR])?)|([hH])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+evet:e:EVET:E:yes:y:YES:Y
+#
+# nostr
+hayr:hayir:h:HAYIR:HAYR:H:no:n:NO:N
# EOF
diff --git a/share/msgdef/tr_TR.UTF-8.src b/share/msgdef/tr_TR.UTF-8.src
new file mode 100644
index 000000000000..0dffd4119850
--- /dev/null
+++ b/share/msgdef/tr_TR.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^(([eE]([vV][eE][tT])?)|([eE])|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(([hH]([aA][yY][ıI][rR])?)|([hH]([aA][yY][iI][rR])?)|([hH])|([nN]([oO])?)|([nN]))
+#
+# yesstr
+evet:e:EVET:E:yes:y:YES:Y
+#
+# nostr
+hayır:hayir:h:HAYIR:HAYİR:H:no:n:NO:N
+# EOF
diff --git a/share/msgdef/uk_UA.CP1251.src b/share/msgdef/uk_UA.CP1251.src
index f3fd7765ad95..b0de3dd0087a 100644
--- a/share/msgdef/uk_UA.CP1251.src
+++ b/share/msgdef/uk_UA.CP1251.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([][])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
-
+::Ͳ::no:n:NO:N
# EOF
diff --git a/share/msgdef/uk_UA.ISO8859-5.src b/share/msgdef/uk_UA.ISO8859-5.src
index cc508146e827..420adeb40a0b 100644
--- a/share/msgdef/uk_UA.ISO8859-5.src
+++ b/share/msgdef/uk_UA.ISO8859-5.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([а][ں])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[ݽnN].*
+^(([ݽ]([])?)|([ݽ])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::°::yes:y:YES:Y
+#
# nostr
-
+::::no:n:NO:N
# EOF
diff --git a/share/msgdef/uk_UA.KOI8-U.src b/share/msgdef/uk_UA.KOI8-U.src
index 5eec97264d5d..f870d939aff2 100644
--- a/share/msgdef/uk_UA.KOI8-U.src
+++ b/share/msgdef/uk_UA.KOI8-U.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[yY].*
+^(([]([][])?)|([])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[nN].*
+^(([]([])?)|([])|([nN]([oO])?)|([nN]))
+#
# yesstr
-
+::::yes:y:YES:Y
+#
# nostr
+Φ::::no:n:NO:N
# EOF
diff --git a/share/msgdef/uk_UA.UTF-8.src b/share/msgdef/uk_UA.UTF-8.src
index cfc5a2e64bc0..fd8a1676f023 100644
--- a/share/msgdef/uk_UA.UTF-8.src
+++ b/share/msgdef/uk_UA.UTF-8.src
@@ -1,14 +1,17 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
#
# yesexpr
-^[тТyY].*
+^(([тТ]([аА][кК])?)|([тТ])|([yY]([eE][sS])?)|([yY]))
+#
# noexpr
-^[нНnN].*
+^(([нН]([іІ])?)|([нН])|([nN]([oO])?)|([nN]))
+#
# yesstr
-так
+так:т:ТАК:Т:yes:y:YES:Y
+#
# nostr
-ні
+ні:н:НІ:Н:no:n:NO:N
# EOF
diff --git a/share/msgdef/zh_CN.GB18030.src b/share/msgdef/zh_CN.GB18030.src
deleted file mode 100644
index 6e9cd83e04e3..000000000000
--- a/share/msgdef/zh_CN.GB18030.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yY].*
-# noexpr
-^[nNβ].*
-# yesstr
-
-# nostr
-
-# EOF
diff --git a/share/msgdef/zh_CN.GB2312.src b/share/msgdef/zh_CN.GB2312.src
deleted file mode 100644
index 6e9cd83e04e3..000000000000
--- a/share/msgdef/zh_CN.GB2312.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yY].*
-# noexpr
-^[nNβ].*
-# yesstr
-
-# nostr
-
-# EOF
diff --git a/share/msgdef/zh_CN.UTF-8.src b/share/msgdef/zh_CN.UTF-8.src
deleted file mode 100644
index 975134e8173e..000000000000
--- a/share/msgdef/zh_CN.UTF-8.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yYyY是].*
-# noexpr
-^[nNnN不否].*
-# yesstr
-是
-# nostr
-否
-# EOF
diff --git a/share/msgdef/zh_CN.eucCN.src b/share/msgdef/zh_CN.eucCN.src
deleted file mode 100644
index 6e9cd83e04e3..000000000000
--- a/share/msgdef/zh_CN.eucCN.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yY].*
-# noexpr
-^[nNβ].*
-# yesstr
-
-# nostr
-
-# EOF
diff --git a/share/msgdef/zh_Hans_CN.GB18030.src b/share/msgdef/zh_Hans_CN.GB18030.src
new file mode 100644
index 000000000000..c81391c14c63
--- /dev/null
+++ b/share/msgdef/zh_Hans_CN.GB18030.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^((ȷ)|()|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^(()|()|([nN]([oO])?)|([nN]))
+#
+# yesstr
+ȷ::yes:y:YES:Y
+#
+# nostr
+::no:n:NO:N
+# EOF
diff --git a/share/msgdef/zh_Hans_CN.GB2312.src b/share/msgdef/zh_Hans_CN.GB2312.src
new file mode 100644
index 000000000000..0dcd3e2028b5
--- /dev/null
+++ b/share/msgdef/zh_Hans_CN.GB2312.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^((H76()|(JG)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^((7q6()|(7q)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+H76(:JG:yes:y:YES:Y
+#
+# nostr
+7q6(:7q:no:n:NO:N
+# EOF
diff --git a/share/msgdef/zh_Hans_CN.UTF-8.src b/share/msgdef/zh_Hans_CN.UTF-8.src
new file mode 100644
index 000000000000..14f5b1ad7a7e
--- /dev/null
+++ b/share/msgdef/zh_Hans_CN.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^((确定)|(是)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^((否定)|(否)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+确定:是:yes:y:YES:Y
+#
+# nostr
+否定:否:no:n:NO:N
+# EOF
diff --git a/share/msgdef/zh_Hant_HK.Big5HKSCS.src b/share/msgdef/zh_Hant_HK.Big5HKSCS.src
new file mode 100644
index 000000000000..3b684bd12b33
--- /dev/null
+++ b/share/msgdef/zh_Hant_HK.Big5HKSCS.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^((O)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^((_)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+O:yes:y:YES:Y
+#
+# nostr
+_:no:n:NO:N
+# EOF
diff --git a/share/msgdef/zh_Hant_HK.UTF-8.src b/share/msgdef/zh_Hant_HK.UTF-8.src
new file mode 100644
index 000000000000..53c58af3fcbd
--- /dev/null
+++ b/share/msgdef/zh_Hant_HK.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^((是)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^((否)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+是:yes:y:YES:Y
+#
+# nostr
+否:no:n:NO:N
+# EOF
diff --git a/share/msgdef/zh_Hant_TW.Big5.src b/share/msgdef/zh_Hant_TW.Big5.src
new file mode 100644
index 000000000000..964f9ed31e30
--- /dev/null
+++ b/share/msgdef/zh_Hant_TW.Big5.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^((O)|(Tw)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^((_)|()|([nN]([oO])?)|([nN]))
+#
+# yesstr
+O:Tw:yes:y:YES:Y
+#
+# nostr
+_::no:n:NO:N
+# EOF
diff --git a/share/msgdef/zh_Hant_TW.UTF-8.src b/share/msgdef/zh_Hant_TW.UTF-8.src
new file mode 100644
index 000000000000..40deaafba8cd
--- /dev/null
+++ b/share/msgdef/zh_Hant_TW.UTF-8.src
@@ -0,0 +1,17 @@
+# Warning: Do not edit. This file is automatically generated from the
+# tools in /usr/src/tools/tools/locale. The data is obtained from the
+# CLDR project, obtained from http://cldr.unicode.org/
+# -----------------------------------------------------------------------------
+#
+# yesexpr
+^((是)|(確定)|([yY]([eE][sS])?)|([yY]))
+#
+# noexpr
+^((否)|(不)|([nN]([oO])?)|([nN]))
+#
+# yesstr
+是:確定:yes:y:YES:Y
+#
+# nostr
+否:不:no:n:NO:N
+# EOF
diff --git a/share/msgdef/zh_TW.Big5.src b/share/msgdef/zh_TW.Big5.src
deleted file mode 100644
index cc1bfce72027..000000000000
--- a/share/msgdef/zh_TW.Big5.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yYBO].*
-# noexpr
-^[nNܤ_].*
-# yesstr
-O
-# nostr
-_
-# EOF
diff --git a/share/msgdef/zh_TW.UTF-8.src b/share/msgdef/zh_TW.UTF-8.src
deleted file mode 100644
index 975134e8173e..000000000000
--- a/share/msgdef/zh_TW.UTF-8.src
+++ /dev/null
@@ -1,14 +0,0 @@
-# $FreeBSD$
-#
-# WARNING: spaces may be essential at the end of lines
-# WARNING: empty lines are essential too
-#
-# yesexpr
-^[yYyY是].*
-# noexpr
-^[nNnN不否].*
-# yesstr
-是
-# nostr
-否
-# EOF