[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [HEADS UP] Changes in date formatting (strftime, nl_langinfo)



On Tue, Jan 23, 2018 at 04:31:42PM +0100, Rafal Luzynski wrote:
> 23.01.2018 06:49 vics@fsfe.org wrote:
> >
> > On Jan 23, 2018, at 1:58 AM, Rafal Luzynski <digitalfreak@lingonborough.com>
> > wrote:
> > >
> > > you want this feature to be supported in your
> > > language please notify me ASAP
> >
> > I would like this feature be supported in Belarusian. I am going to
> > look at the po file at translationproject.org, what should I do in
> > addition for that to happen?
> 
> Thank you for responding. Indeed, Belarusian language is a special
> case because with Russian they are the only languages which actually
> need the %Ob feature. [1] The short answer to the question how you
> can help is: just tell me that you want this feature in your language
> and I will push the trigger, that's all. Belarusian patches are
> waiting here, [2] you must search for the commit titled "Genitive
> month names imported from CLDR (bug 10871)." and be_BY is there
> along with other languages.

Is there an easy way to convert strings like
"<U0441><U0442><U0443><U0434><U0437><U0435><U043D><U044C>" to readable UTF?


> However, the Belarusian language is more tricky. Although be_BY
> (Cyrillic) is in CLDR [3] so I can copy/paste/import/whatever,
> be_BY@latin is not there but it is supported by glibc [4] and should
> be updated. Could you please send me a list of Belarusian month names
> in genitive case in Latin script so I can fix them? Something like
> "studzenia", "lutaga" and so on, I am not sure if my transcription
> is correct. This should also include the abbreviated month names
> but I guess there will be no difference between abbreviated month
> names in genitive case and in nominative case in be_BY@latin: "maj"
> in genitive case is "maja" which will be abbreviated to "maj"; this
> is different from the Cyrillic where the genitive case "мая" will
> remain "мая" even in the abbreviated version.

As for "Maj" there is a distinction. Belarusian latin script uses a different
name for month may: 

$ LANG=be_BY@latin date -d 20180501 +%B
Travień


Thus the list of Belarusian month names in genitive case in Latin script is
the following:

studzienia
lutaha
sakavika
krasavika
traŭnia
červienia
lipienia
žniŭnia
vierasnia
kastryčnika
listapada
śniežnia

AFAIK there is no "official" abbreviated names for months in Belarusian, and
CLDR [2] provides the initial 3 letters as abbreviated names so should we use for
the Latin script.


> What else you can do: you can contact other Belarusian translators
> and ask for their opinion. However, you may skip this step if you
> are the only translator or if you think they will all agree.

CCing the related mailing lists.


> Also please explain the uppercase/lowercase issue: in be_BY@latin
> all month names start with the uppercase. I guess this looks nice
> if the month name is standalone so I'd rather leave it as is;
> OTOH I guess that the genitive month names (as used in dates)
> should start with a lowercase letter.

You are totally right.


> Actually, the sooner they are pushed the better; glibc is about
> to be released on February 1.
> 
> One more thing: since you have mentioned the translationproject.org,
> please grep over all files (which I hope you have as a local
> copy) and find all occurrences of %B or %b or %h without
> the day number (%e or %d). Please verify that they are arguments
> of strftime() or anything similar. They all should be replaced with
> %OB, %Ob, and %Oh, respectively. I think that someone already did
> this on libc-alpha list and found about 2 or 3 occurrences.
> But that belongs to the general programming, not limited to
> Belarusian language.

You mean .po files? I was only translating libc po for Belarusion at the
translationproject.org, I am not familiar with the libc sources.


Best regards,

Viktar


 [1] https://en.wikipedia.org/wiki/Belarusian_Latin_alphabet
 [2] http://st.unicode.org/cldr-apps/v#/be/Gregorian/


Reply to: