This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PING][BZ 10871] Month names in genitive case


On Fri, May 19, 2017 at 4:26 PM, Rafal Luzynski
<digitalfreak@lingonborough.com> wrote:
> It seems to me that most of the translators will
> accept the idea to make strftime("%B") generate the genitive case
> (more precisely: the form correct when using a month with a day
> number) and introduce strftime("%OB") which would generate the
> nominative case (standalone) which is now generated by strftime("%B").

OK, that is a strong argument in favor of the position that we can
just go ahead and introduce %OB and change what %B does for all
binaries - no need for backward compatibility shims.

> I'd like to remind that Zack agreed to introduce my patches only
> if we don't yet define which of MON_x/ALTMON_x and %B/%OB is
> nominative and which is genitive. [4]

That was in the context of trying to get at least _some_ of the patch
into 2.25.  Since we're not trying to do that anymore, it is no longer
a relevant constraint.

> However, there is one problem.  If we let the local communities
> define which is genitive (full date) and which is nominative
> (standalone) it will work except for nl_langinfo() because we have
> no mechanism to let translators decide which base (MON_1 or
> ALTMON_1) to use.  IMO there are two solutions for this problem:
>
> * Stop using (deprecate) nl_langinfo(MON_x) and nl_langinfo(ALTMON_x)
>   as the source of month names, use stftime() with translatable
>   formats instead, even if they are as simple as "%OB". The usage
>   of nl_langinfo() is complex already: it's correct to use ALTMON_x
>   when it is supported and MON_x otherwise to retrieve the nominative
>   case. Retrieving the genitive case is not much useful.  I think
>   that this knowledge is not common because I spot bugs in FreeBSD
>   and even OS X applications.
> * Not to introduce the genitive case in Serbian, Czech, etc.
>   because the use of it is too rare.  One of the translators said
>   that in 99% cases they use the nominative case.  Maybe those
>   languages should be treated same as all other (Western) languages
>   which don't use the genitive case in dates.
> * Implement the genitive and nominative cases in Serbian, Czech etc.
>   the same way as they would be implemented in other Slavic languages
>   and accept that almost every occurrence of %B will be replaced
>   with %OB.  One of the translators has already agreed for this. [5]

I don't think I know enough about the problems in this area to have an
informed opinion on which of these is the least troublesome, but it
seems to me that most of it is not glibc's problem regardless, as we
don't maintain the locale data files.  To put it another way, I don't
think anything in the core of your patches would change no matter
which of those options was selected.

Please repost your patches, rebased against master, without the
backward compatibility shims, and let's try to get them reviewed for
2.26.

zw


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]