<i18n dev> Short month name values for ru locale

Steven R. Loomis srl at icu-project.org
Thu Jan 9 17:48:40 UTC 2020


Hi, I can confirm that the abbreviated months are “окт.” and “дек.” in Russian for CLDR. I think this specific string been stable for some time (since about 2012), recently re-confirmed by multiple linguist participants.

--
Steven R. Loomis | @srl295 | git.io/srl295



> El ene. 9, 2020, a las 9:18 a. m., naoto.sato at oracle.com escribió:
> 
> Hi Gennady,
> 
> I must've overlooked your original question. As to the Russian abbreviated month names, they all come from CLDR. For example, CLDR's abbreviated formatting month name for October in Russian is "окт." as in (look for "·ru·" in that chart):
> 
> http://unicode.org/cldr/charts/36/by_type/date_&_time.gregorian.html#5bea9c642ffb717
> 
> So, even if there is no dot involved in the pattern, formatted text should have dot as a Russian localized text.
> 
> As to th 2020/2021 difference, that comes from the fact that the pattern uses "YYYY" instead of "yyyy", where "Y" designates the week-based-year, where the first week should satisfy minimum number of days. In this case 12/31 belongs to the next week-based-year, thus 2021 is printed as week based year.
> 
> Naoto
> 
> 
> On 1/9/20 2:24 AM, Gennady Gerasimov wrote:
>> Any updates regarding this?
>> Btw, probably I found another one bug which can be easily reproduced using an example below
>> final DateTimeFormatter FORMATTER =
>>         DateTimeFormatter.ofPattern("dd MMM YYYY", new Locale("ru"));
>> final LocalDate startDate = LocalDate.of(2020, 12, 31)
>> final String formatted = FORMATTER.format(startDate)
>> formatted == startDate.toString()
>> Where formatted is 31 дек. 2021
>> Could you please take a look?
>>> On 17 Jun 2019, at 17:42, Gennady Gerasimov <gennady.g.gerasimov.alfa at gmail.com> wrote:
>>> 
>>> Hi
>>> 
>>> I have a question about metaValue_MonthAbbreviations values in FormatData_ru class.
>>> Prior to https://bugs.openjdk.java.net/browse/JDK-8043554 <https://bugs.openjdk.java.net/browse/JDK-8043554> short names of months in ru locale do not contain dot at the end of word.
>>> Since that issue is closed and CLDR is used by default all values in metaValue_MonthAbbreviations have it
>>> 
>>> final String[] metaValue_MonthAbbreviations = new String[] {
>>>        "\u044f\u043d\u0432.",
>>>        "\u0444\u0435\u0432\u0440.",
>>>        "\u043c\u0430\u0440.",
>>>        "\u0430\u043f\u0440.",
>>>        "\u043c\u0430\u044f",
>>>        "\u0438\u044e\u043d.",
>>>        "\u0438\u044e\u043b.",
>>>        "\u0430\u0432\u0433.",
>>>        "\u0441\u0435\u043d\u0442.",
>>>        "\u043e\u043a\u0442.",
>>>        "\u043d\u043e\u044f\u0431.",
>>>        "\u0434\u0435\u043a.",
>>>        "",
>>>     };
>>> 
>>> 
>>> It looks unusual for me. E.g. DateTimeFormatter defined like
>>> DateTimeFormatter.ofPattern("dd MMM YYYY", new Locale("ru"))
>>> applied to some date object returns line like that "Действует c 30 окт. 2018 по 30 окт. 2030” which is unexpected for me because there are no dots in formatter pattern
>>> 
>>> Are these values defined correctly?
>>> 
>>> 
>>> 
>>>  



More information about the i18n-dev mailing list