> > I just made a change to all the DateDisplay classes
> that will affect the translation of months. Previously, the
> DateDisplay classes used the localized months detected by
> GrampsLocale. This prohibits us from using a DateDisplay
> class for translating to languages other than the language
> Gramps is currently running in.
> > I have added two new string arrays to each DateDisplay
> class. Those strings need to be translated in the code (we
> don't use gettext for those).
> > At your leisure, please open your respective
> _Date_xx.py file and edit the following lines:
> > # TODO: Translate these month
> > long_months = ( u"January",
> u"February", u"March", u"April", u"May",
> u"June", u"July", u"August", u"September",
> u"November", u"December" )
> > short_months = (
> u"Jan", u"Feb", u"Mar", u"Apr", u"May", u"Jun",
> u"Aug", u"Sep", u"Oct", u"Nov",
> u"Dec" )
> > Please remove the #TODO comment when you are done.
> > Whomever translates Spanish: I translated _Date_es.py
> for testing purposes. Please double check my work and remove
> the "# TODO" comment if you are satisfied.
> > Thanks everyone! This change will lead us to be able
> to have user selectable report translations.
> May i ask how this will be used? (so to know how to
> My language do declination of months, so in enumerations of
> months they are in nominative case (October-listopad) but in
> dates they stand in genitive case (28. listopada). They are
> writen in small letters but can be writen in caps if they
> are independent of rest of text, like titles and subtitles
The DateDisplay class is used to build date strings that can be used in either reports or the UI. In the preferences you can change the date format. Depending on your language, there are various options.
That format is used in the "date" columns of the user interface (birth, death in people view, for example). If you choose a date format that spells out the month, then these strings will be used. So, for example, in English, I can choose the format: "Month Day, Year" in the preferences. Then, Christmas would be displayed in the person view as "December 25, 2009".
The DateDisplay class is also used to get date strings for sentences in reports. For example, in the Detailed Descendant Report, you would see a sentences like this: "Edwin was born on October 28, 2009". The "October 28, 2009" part of that sentence comes from the DateDisplay class (assuming that is the date format selected in the preferences).
The strings in the new arrays previously came from GrampsLocale.long_months and GrampsLocale.short_months respectively. Those definitions are still in GrampsLocale if you would like to see what they are for your language.
I hope that helps,