View Single Post
Old 01-17-2012, 08:31 PM   #110
eureka
but forgot what it's like
eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.eureka ought to be getting tired of karma fortunes by now.
 
Posts: 741
Karma: 2345678
Join Date: Dec 2011
Location: north (by northwest)
Device: Kindle Touch
Quote:
Originally Posted by ixtab View Post
It's not as easy as that, because there are some quirks with the Kindle. In fact, the KT is extremely picky about those .properties. Nearly everything that I assumed should work did not actually work... and that was only while editing that one file. Here's the usual output if it's not happy with something:

Code:
120117:222533 blanket[1140]: E langpicker:GET_LOCALE_POSIX_ID_FAILED:locale=de:getLocalePosixId() called on a locale ID that isn't installed on the system
120117:222533 blanket[1140]: E langpicker:LOCALE_NOT_INSTALLED:locale=(null):changeLocale to non-installed locale-- locale not changed
... at least, it doesn't crash and burn, but silently stays at en_US

In the last hours, I have thought of a different way, namely of having a special resource on transifex which will allow translators to provide the necessary information. I have temporarily uploaded it (but locked it for translation after making a sample one).

As translators are probably not following this thread closely, and don't need to understand all details, I'll just confront you with my idea: https://www.transifex.net/projects/p.../l/ru_RU/view/

This is essentially what you'd get to see as a translator. A "completed" sample is here: https://www.transifex.net/projects/p...ORE/l/de/view/

Do you think that this makes sense to translators, or is it too confusing? From these files, individual .properties could be extracted.
I'm not objecting to your idea to make manifest (I like this name) available for translations. So if you'll decide to go this way, it's OK for me. The exact format of source file is of no matter for me (though these comments looks pretty useful).

But looking at Russian community of KT users (supposing that translators on Transifex.net are ordinary users) I'm doubting that someone will dare to check validness of translated manifest on his/her KT. So we'll end up with unchecked manifest... OK, Russian manifest will be checked by me. But what about other localized versions? Should it be checked manually by us also?

And I'm seeing the way to generate manifest automatically given localized resources pulled from Transifex.net (with locale code suffix or locale code in a name of directory) and information extracted from that Common Locale Data Repository.
Code:
locale=de
locales.supported=de-DE
display.name.de-DE=Deutsch
posix.id=en_US.UTF-8
  • locale=de -- de is a part of locale code before hyphen
  • locales.supported=de-DE -- de-DE is the whole locale code
  • display.name.de-DE=Deutsch -- Deutsch could be found in CLDR at file common/main/de.xml as a value of XML element by path <ldml> -> <localeDisplayNames> -> <languages> -> <language type="de">
  • posix.id=en_US.UTF-8, as you've said it should stay as-is for all locales. But even if it will be changed, we know all locales existing in KT firmware.

And German could be found at CLDR at file common/main/en.xml as a value of XML element by path <ldml> -> <localeDisplayNames> -> <languages> -> <language type="de">

It could be even possible to pre-generate manifests for all possible locales and check them in a automated manner (by running some script on KT and observing for any errors in log).

So far, I'm still OK with your solution. Just wanted to explain my point of view.
eureka is offline   Reply With Quote