[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-i18n-doc
Subject:    Improving ISO Codes in KDE
From:       John Layt <john () layt ! net>
Date:       2011-04-18 17:40:05
Message-ID: 201104181840.05385.john () layt ! net
[Download RAW message or body]

Hi guys,

I raised this idea about a year ago without a result, but I'd like to have 
another go at it.

We use ISO Country, Language and Currency Codes in kdelibs and kde-runtime 
which we also provide translations for.  I've also been wanting to use the 
country subdivision code as well but haven't as it requires over 4500 strings 
to be translated.

We've discussed in the past using the iso-codes project [1] to replace our 
Country, Currency and Language code files and translations.  This seems a good 
idea as it would produce one high-quality data source for the entire Linux 
community to share and hopefully save our translators some work.

I've done some more research which I've detailed at [2] and come to the 
conclusion that iso-codes is not as advanced in their support as KDE and it 
will take a lot of work to bring it up to an acceptable level, assuming they 
are even interested in doing so.  

In particular, there would be extensive work required from our translators to 
ensure iso-codes supports all our required languages.  KDE 4.6 shipped 53 
languages which we would expect to be fully supported, and there are a further 
17 languages that have been shipped with KDE4 at some stage that should also 
be supported:

* In ISO 3166-1 Country Codes iso-codes is missing 11 languages, and has none 
less than 75% complete, so only 59/70 languages acceptable
* In ISO 4217 Currency Codes iso-codes is missing 34 languages, and has 14 
less than 75% complete, so only 22/70 languages acceptable
* In ISO 639 Language Codes iso-codes is missing 15 languages, and has 22 less 
than 75% complete, so only 33/70 languages acceptable
* In ISO 3166-2 Subdivisions iso-codes is missing 38 languages, and has 26 
less than 75% complete, so only 6/70 languages acceptable

Furthermore, the iso-codes data is not of a high enough quality or detail and 
would need work:
* The Country Names are not always in a format we can use
* The Currency Codes do not have consistent format names and none of the extra 
data we provide like symbols or decimal places
* The Language Codes do not have any modifiers or names for variations, i.e. 
en_GB or sr@latin

In short, adopting iso-codes would be a major step backwards without a major 
data and translation donation from KDE, including setting up new translation 
teams on TP for iso-codes.  I don't think this is an option.

An alternative approach has occured to me.  We actually have almost all the 
data and translations we need within KDE to develop our own solution within 
kde-runtime (even for Subdivisions from KGeography), we just need to suffle 
what we already have around a bit and merge in some stuff from iso-codes.  

I'm suggesting we remove our Country and Currency Codes, Names and 
translations from the .desktop files we currently have and split them into 
.xml and .po files using some scripting, leaving the locale settings still in 
separate files.  In theory this could even reduce the installed footprint of 
KDE as you would have only the translations you need.  Once in this format it 
would be eaiser to either donate the files to iso-codes or move them to 
kdesupport or fd.o as a new project.

As I mentioned, the Subdivisions Code has 4551 strings to translate and iso-
codes has few complete translations.  However KGeography has 6825 strings for 
Countries, Subdivisions and Capitals which should contain most of those 
strings, even better all shipping KDE languages are at or near 100% complete.  
A bit of smart scripting could see a near complete implementation.

What would be the best way for me to script such a migration so that the 
translators don't have to manually copy the existing strings?  I presume I can 
just take the current .po file created by scripty for the  .desktop files, 
edit it to remove the line references and other .desktop file translations and 
add in new strings from iso-codes, rename it and save to the new location and 
just wait for it to be merged with the .pot from the new xml file?

Cheers!

John.

[1] http://pkg-isocodes.alioth.debian.org/
[2] http://community.kde.org/KDE_Core/ISO_Codes
[3] https://projects.kde.org/projects/kde/kdebase/kde-
runtime/repository/revisions/master/raw/l10n/entities.ods
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic