Bug 525 - russian locale: month names with the correct casing
Summary: russian locale: month names with the correct casing
Status: RESOLVED FIXED
Alias: None
Product: glibc
Classification: Unclassified
Component: localedata (show other bugs)
Version: 2.3.3
: P2 normal
Target Milestone: ---
Assignee: Petter Reinholdtsen
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-08 19:44 UTC by Roman Shiryaev
Modified: 2014-05-28 19:45 UTC (History)
3 users (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments
fix case endings of month names in russian ( from the genitive to the nominative) (323 bytes, patch)
2004-11-08 19:48 UTC, Roman Shiryaev
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Roman Shiryaev 2004-11-08 19:44:02 UTC
There is one annoying problem with genetive case of full month 
names in russian. Particularly it can be noticed when using gnu 
cal program from util-linux package. `cal` or `cal 2004` outputs 
month names in the genitive -- it is not true. These names 
should be in the nominative.

Proposed patch (it's against cvs) fixes this issue.
Comment 1 Roman Shiryaev 2004-11-08 19:48:01 UTC
Created attachment 266 [details]
fix case endings of month names in russian ( from the genitive to the nominative)
Comment 2 Alexander E. Patrakov 2005-07-06 14:24:53 UTC
This would break printing of dates in xfce which (correctly) uses "%A, %d %B %Y"
for strftime argument, so both the existing and the proposed implementations are
wrong. There is just no way to implement that right without extending the
existing standard.

Summary: for "%d %B %Y" genitive case should be used (as the existing
implementation does), while for "%B %Y" (without "%d") the right case is nominative.

This is in fact a defect in the standard that imprecisely defines "%B" to mean
"the locale's full month name" without stating the relevant use case (i.e.
together with the day number or without it). Please document this defect in
glibc texinfo documentation, like this: "use of %B without a preceding %d
produces gramatically incorrect results for some locales".

In fact, both use cases are needed. Maybe a GNU extension like "%EB"?
Comment 3 Alexander E. Patrakov 2005-07-07 11:05:03 UTC
In my previous comment, the summary is correct, and the proposed doc update is
wrong.

Other Cyrillic locales (e.g uk_UA, be_BY) use nominative case here, so "%B %Y"
works, "%d %B %Y" produces gramatically incorrect result in those locales. So
the proposed patch at least makes the behaviour consistent across Cyrillic
locales (but still not perfect). If you apply the patch, please add to texinfo
documentation for %B:

"use of %B together with %d produces grammatically incorrect results for some
locales".

If you don't apply the patch, please add this to documentation (sorry for the tone):

"use of %B together with %d produces grammatically incorrect results for some
locales (e.g. be_BY.UTF-8) and use of %B without %d produces grammatically
incorrect results in other locales (e.g. ru_RU.UTF-8). Thus, please don't use %B
if you want the program's output to be grammatically correct in all locales."
Comment 4 Ulrich Drepper 2005-09-24 16:21:35 UTC
I made the change in the CVS trunk.  Consistency is good and I mentioned the
problem in the manual.
Comment 5 Jackie Rosen 2014-02-16 19:22:45 UTC Comment hidden (spam)