Problem in KConfig with language_territory locale strings

Dr. Juergen Pfennig info at j-pfennig.de
Fri Feb 6 11:50:29 GMT 2004


Caused by the success of KDE it will have to be ported to allmost every 
language in this world and the following kde-core related design problem will 
become evident:

Status: The locale name used in KDE is in the form "language[_territory]" (ISO 
3166). In the current KDE configuration files only a few terrytories are 
used. But this will have to change. Example canadian french still uses 
uppercase accented characters but people in France don't any more. Or in 
Germany Uppercase Umlaut and sz are still used, the Swiss don't use them any 
more. Conclusion: future KDE releases will have to take much more care of 
such territorial differences.

Problem: There are only a few hundred languages currently in use by larger 
groups of people, but for each language there could be several supported 
territories. Examples:

    language: "en"  Territories:   en_GB en_US en_Au
    language: "fr"  Territories:   fr_BE fr_CA fr_CH fr_LU

So finally KDE will end up with several hundreds of supported territories.
Unfortunately the current konfig file parser expects a perfect match for the 
locale string. If the configured locale is "fr_CH" it will ignore entries 
that contain the "fr" language only. Example:

   trouble[de] = "A(umlaut)rgenis"
   trouble[de_CH] = "Aergernis"

No problem you say? But if you try to make the german speaking swiss people 
happy wou would have to add the "de_CH" entries to all config files that 
contain "de" strings. If a "de_CH" entry would be missing the user would get 
an english message - not a german one.

Conclusion: If a territory is not supported, KDE should fallback to the base 
language. For a french canadian it would probably be nicer to have a french 
message instead of an english one. This could also reduce the number of 
locale strings that are required in Desktop (or other) files. My current KDE 
3.2 has 2390 Desktop Files!

Proposed action: Changes in KConfig ? Any suggestions ?

Yours Jürgen




More information about the kde-core-devel mailing list