From 568ee718bb217f4ecbebc962557ef659b9f6e624 Mon Sep 17 00:00:00 2001 From: Mihkel Tõnnov Date: Mon, 21 Sep 2020 19:56:30 +0200 Subject: tdf#136951: Add Võro (vro-EE) locale data and rudimentary autocorrect list MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Id5a5d71b7f457d18b9d0982f9b4df95566c09be9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103122 Tested-by: Jenkins Reviewed-by: Eike Rathke --- i18npool/source/collator/collator_unicode.cxx | 10 + i18npool/source/collator/data/vro_alphanumeric.txt | 73 ++++ i18npool/source/localedata/data/vro_EE.xml | 448 +++++++++++++++++++++ i18npool/source/localedata/localedata.cxx | 1 + 4 files changed, 532 insertions(+) create mode 100644 i18npool/source/collator/data/vro_alphanumeric.txt create mode 100644 i18npool/source/localedata/data/vro_EE.xml (limited to 'i18npool/source') diff --git a/i18npool/source/collator/collator_unicode.cxx b/i18npool/source/collator/collator_unicode.cxx index 39037cf2e77b..c05a9cb025c6 100644 --- a/i18npool/source/collator/collator_unicode.cxx +++ b/i18npool/source/collator/collator_unicode.cxx @@ -80,6 +80,7 @@ const sal_uInt8* get_collator_data_ln_charset(); const sal_uInt8* get_collator_data_my_dictionary(); const sal_uInt8* get_collator_data_ne_charset(); const sal_uInt8* get_collator_data_sid_charset(); +const sal_uInt8* get_collator_data_vro_alphanumeric(); const sal_uInt8* get_collator_data_zh_TW_charset(); const sal_uInt8* get_collator_data_zh_TW_radical(); const sal_uInt8* get_collator_data_zh_TW_stroke(); @@ -102,6 +103,7 @@ size_t get_collator_data_ln_charset_length(); size_t get_collator_data_my_dictionary_length(); size_t get_collator_data_ne_charset_length(); size_t get_collator_data_sid_charset_length(); +size_t get_collator_data_vro_alphanumeric_length(); size_t get_collator_data_zh_TW_charset_length(); size_t get_collator_data_zh_TW_radical_length(); size_t get_collator_data_zh_TW_stroke_length(); @@ -300,6 +302,14 @@ Collator_Unicode::loadCollatorAlgorithm(const OUString& rAlgorithm, const lang:: funclen = get_collator_data_sid_charset_length; } #endif +#if WITH_LOCALE_ALL || WITH_LOCALE_vro + } else if ( rLocale.Language == "vro" ) { + if ( rAlgorithm == "alphanumeric" ) + { + func = get_collator_data_vro_alphanumeric; + funclen = get_collator_data_vro_alphanumeric_length; + } +#endif #if WITH_LOCALE_ALL || WITH_LOCALE_zh } else if ( rLocale.Language == "zh" && (rLocale.Country == "TW" || rLocale.Country == "HK" || rLocale.Country == "MO") ) { if ( rAlgorithm == "charset" ) diff --git a/i18npool/source/collator/data/vro_alphanumeric.txt b/i18npool/source/collator/data/vro_alphanumeric.txt new file mode 100644 index 000000000000..203e3765d666 --- /dev/null +++ b/i18npool/source/collator/data/vro_alphanumeric.txt @@ -0,0 +1,73 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Võro sort order + +# There is notable inconsistency between publications/users concerning: +# palatalisation marker: +# a) acute above (or slightly after) the letter (preferred) +# b) apostrophe (or non-combining acute) after the letter +# c) nothing +# glottal stop letter: +# a) q +# b) apostrophe +# c) nothing +# d) in dictionaries also ˀ or ʔ (usually superscripted to look like ˀ) + +# Some typographical notes +# +# Several letters don't have precomposed glyphs: B́, D́, F́, H́, T́, V́. +# The online Võro-Estonian dictionary uses a font where dot-above is +# rendered as acute for b, f, h; combining acute accent is used for v. +# +# Lowercase ď, ľ, ť and uppercase Ľ are in principle composed with +# caron, not acute, however those forms are used more than d́, ĺ, t́, Ĺ +# (uppercase Ď and Ť with obvious caron are not used, but are included +# here for case insensitivity's sake). +# +# Non-combining acute accent ´ (\u00b4) after the letter makes the text +# look jagged, so those combinations are not included in the collation +# rules below - instead, we provide autocorrect rules to replace them +# with precomposed glyphs (if available) or with letter plus combining +# acute accent. + +# Palatalized consonants +# +# Precomposed letter (with either acute or dot-above (see notes above), +# or in case of L, with acute and caron (see notes above); +# with combining acute accent ́ (\u0301) if there's no precomposed glyph; +# with apostrophe ' (straight/ASCII; \u0027; NB: has to be escaped: ''); +# with right single quotation mark ’ (typographic apostrophe; \u2019). + +& b << ḃ = b́ = b'' = b’ <<< B << Ḃ = B́ = B'' = B’ +& d << ď = d́ = d'' = d’ <<< D << Ď = D́ = D'' = D’ +& f << ḟ = f́ = f'' = f’ <<< F << Ḟ = F́ = F'' = F’ +& g << ǵ = g'' = g’ <<< G << Ǵ = G'' = G’ +& h << ḣ = h́ = h'' = h’ <<< H << Ḣ = H́ = H'' = H’ +& k << ḱ = k'' = k’ <<< K << Ḱ = K'' = K’ +& l << ĺ = ľ = l'' = l’ <<< L << Ĺ = Ľ = L'' = L’ +& m << ḿ = m'' = m’ <<< M << Ḿ = M'' = M’ +& n << ń = n'' = n’ <<< N << Ń = N'' = N’ +& p << ṕ = p'' = p’ <<< P << Ṕ = P'' = P’ +& r << ŕ = r'' = r’ <<< R << Ŕ = R'' = R’ +& s << ś = s'' = s’ <<< S << Ś = S'' = S’ < š <<< Š +& t << ť = t́ = t'' = t’ <<< T << Ť = T́ = T'' = T’ +& v << v́ = v'' = v’ <<< V << V́ = V'' = V’ + +# Glottal stop +# +# After a vowel, apostrophe is used as a glottal stop marker, as is Q. +# NB: straight/ASCII apostrophe has to be escaped: '' + +& q = ˀ = a|'' = a|’ = e|'' = e|’ = i|'' = i|’ = o|'' = o|’ = u|'' = u|’ = õ|'' = õ|’ = ä|'' = ä|’ = ö|'' = ö|’ = ü|'' = ü|’ = y|'' = y|’ <<< Q = ʔ = A|'' = A|’ = E|'' = E|’ = I|'' = I|’ = O|'' = O|’ = U|'' = U|’ = Õ|'' = Õ|’ = Ä|'' = Ä|’ = Ö|'' = Ö|’ = Ü|'' = Ü|’ = Y|'' = Y|’ + +# Final letters of the alphabet +# +# Just like in Estonian (et), except that Z & Ž are at the very end + +& W < õ <<< Õ < ä <<< Ä < ö <<< Ö < ü <<< Ü +& Z < ž <<< Ž diff --git a/i18npool/source/localedata/data/vro_EE.xml b/i18npool/source/localedata/data/vro_EE.xml new file mode 100644 index 000000000000..88885e20b41b --- /dev/null +++ b/i18npool/source/localedata/data/vro_EE.xml @@ -0,0 +1,448 @@ + + + + + + + vro + Võro + + + EE + Estonia + + + + + . +   + , + : + , + ; + , + . + + + + + + + + + + i.l + p.l + metric + + + D.M + D. M + D.M. + D. M. + + General + + + 0 + + + 0,00 + + + # ##0 + + + # ##0,00 + + + # ###,00 + + + 0,00E+000 + + + 0,00E+00 + + + ##0,00E+00 + + + 0% + + + 0,00% + + + # ##0 [$kr-675];-# ##0 [$kr-675] + + + # ##0,00 [$kr-675];-# ##0,00 [$kr-675] + + + # ##0 [$kr-675];[RED]-# ##0 [$kr-675] + + + # ##0,00 [$kr-675];[RED]-# ##0,00 [$kr-675] + + + # ##0,00 CCC + + + # ##0,-- [$kr-675];[RED]-# ##0,-- [$kr-675] + + + DD.MM.YY + + + NNNND. MMMM" päiv "YYYY". a" + + + D.M.YYYY + + + DD.MM.YYYY + + + D. MMMMM YYYY + + + D. MMM" p "YYYY". a" + + + D. MMM" p "YYYY + + + D. MMMM" päiv "YYYY". a" + + + D. MMMM" päiv "YYYY + + + NN, D. MMMMM YYYY + + + NN, D. MMM" p "YYYY + + + NN, D. MMMM" päiv "YYYY". a" + + + NNNNDD. MMMM" päiv "YYYY". a" + + + MM-DD + + + YY-MM-DD + + + YYYY-MM-DD + ISO 8601 + + + MMMMM YYYY + + + D. MMM" p" + + + MMMM + + + QQ YYYY + + + WW + + + WW". nätäľ" + + + WW". nätäľ "YYYY + + + D. MMMM"d "YYYY + + + D. MMMM"d" + + + D. MMMM YYYY + + + D. MMMM + + + MMMM D". päiv "YYYY + + + MMMM D". päiv" + + + MMM D". p "YYYY + + + MMM D". p" + + + NN, D. MMMM" päiv "YYYY + + + D.MM.YYYY + + + D.M.YY + + + D. MMMM" päiv" + + + DD.MM + + + D.MM + + + MMMM YYYY + + + MMM YYYY + + + YYYY Q + + + Q YY + + + HH:MM + + + HH:MM:SS + + + HH:MM AM/PM + + + HH:MM:SS AM/PM + + + [HH]:MM:SS + + + MM:SS,00 + + + [HH]:MM:SS,00 + + + HH:MM DD.MM.YY + + + DD.MM.YYYY HH:MM:SS + + + DD.MM.YYYY HH:MM + + + + + + IGNORE_CASE + + + + + A-S Š T U V W Õ Ä Ö Ü X Y Z Ž + 0 + 1 + 2 + 3 + 37 + jj + jj + + + + + + sun + + pühäpäiv + + + mon + I + iispäiv + + + tue + T + tõsõpäiv + + + wed + K + kolmapäiv + + + thu + N + neläpäiv + + + fri + R + riidi + + + sat + Pu + puuľpäiv + + + + + jan + vahtsk + vahtsõaastagakuu + I + + + feb + radok + radokuu + II + + + mar + urbõk + urbõkuu + III + + + apr + mahlak + mahlakuu + IV + + + may + lehek + lehekuu + V + + + jun + piimäk + piimäkuu + VI + + + jul + hainak + hainakuu + VII + + + aug + põimuk + põimukuu + VIII + + + sep + süküsk + süküskuu + IX + + + oct + rehek + rehekuu + X + + + nov + märtek + märtekuu + XI + + + dec + jouluk + joulukuu + XII + + + + + bc + i.m.a + inne miiq aigo + + + ad + m.a.p + miiq ao perrä + + + + mon + + 4 + + + + + EUR + + EUR + Euro + 2 + + + EEK + kr + EEK + kruuń + 2 + + + + + + tõtõ + võlsś + 1. aastagaveerändik + 2. aastagaveerändik + 3. aastagaveerändik + 4. aastagaveerändik + iinpuul + allpuul + AV1 + AV2 + AV3 + AV4 + + + + + diff --git a/i18npool/source/localedata/localedata.cxx b/i18npool/source/localedata/localedata.cxx index 193d8eeb4f7c..076c12767136 100644 --- a/i18npool/source/localedata/localedata.cxx +++ b/i18npool/source/localedata/localedata.cxx @@ -148,6 +148,7 @@ const struct { { "tr_TR", lcl_DATA_EURO }, { "tt_RU", lcl_DATA_EURO }, { "et_EE", lcl_DATA_EURO }, + { "vro_EE", lcl_DATA_EURO }, { "lb_LU", lcl_DATA_EURO }, { "lt_LT", lcl_DATA_EURO }, { "lv_LV", lcl_DATA_EURO }, -- cgit