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]

[PING][RFC][PATCH 0/7][BZ 10871] Month names in genitive case


The previous patch which I have sent on Nov 27 [1] could be considered too
long and too difficult to review so here I split it into 7 parts which
can be reviewed and accepted or rejected individually. Please find the
patches in the following emails:

1. This patch just adds the alternative month names support to nl_langinfo(3)
(the ALTMON_... constants.) I think this change is not questionable except
the question whether the new constants should be considered public or private.
I suggest public.

2. Add tests for the alternative month names. The only reason why this
change has been split out into a separate patch is that the file
tst-langinfo.c belongs to the localedata directory which has its own
ChangeLog. Feel free to merge this patch with the previous one if you think
that splitting it is a bad idea.

3. Support also day_month_order in nl_langinfo(3). If we are going to
implement a smart algorithm which determines whether "%B" in strftime(3)
should generate a nominative or genitive form then we need also a new
parameter which would determine if month should be genitive if it appears
after a day, or before a day, or in both cases, or it does not matter. Feel
free to merge this patch with the previous ones if you think this idea is
OK. Feel free to reject this patch if you think that we should implement
the "%OB" format specifier which would select the genitive case explicitly.

4. Smart algorithm choosing the nominative/genitive month name.
This is the main part: the implementation of the smart algorithm in
strftime(3) which would select the correct form of the month name for the
"%B" format specifier. Note that this patch requires the previous ones,
also it requires some NLS data from the following patches.

5. Alternative month names NLS data (Polish). Feel free to use this patch
only for local tests and reject it from the public repository if you don't
trust me. However, please note that you need some NLS data with the
alternative month names, otherwise you will not see any effect of the
previous patches.

6. Alternative month names NLS data (Russian). The names are taken from
CLDR database [2]. Also I have changed the nominative month names to
lowercase as suggested in the original bug report [3]. Please note that you
don't have to trust my knowledge of Russian, feel free to take this patch
for your local tests only and reject from the public repository.

7. Alternative month names NLS data (Ukrainian). The alternative month names
had been already present so I have only changed the alt_digits label to
alt_mon and removed all remains of the alt_digits hack. However, please
note that you absolutely should not trust my knowledge of Ukrainian language.
Feel free to use this patch for local tests only and reject it from the
public repository.

I'll appreciate your reviews and comments.

Best regards,

Rafal Luzynski

[1] https://sourceware.org/ml/libc-alpha/2015-11/msg00594.html
[2] http://st.unicode.org/cldr-apps/v#/ru/Gregorian/677bb4a72253df63
[3] https://sourceware.org/bugzilla/show_bug.cgi?id=10871


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