> On June 6, 2014, 11:53 a.m., Sebastian Kügler wrote:
> > I'd like to hear John's take on this. IIRC, bcp47Name() is the correct one 
> > to use here. (Which leaves questions indeed.)
> 
> Luca Beltrame wrote:
>     Indeed. But for some reason, at least on my system, bcp47Name() returns 
> "it" only, and that breaks everything. Hence the reason for this patch.
>     Also I wanted indeed to wait till the "pros" gave their answers. ;)

Please don't make me read the BCP47 standard again: it's long and complicated 
and ambiguous and I read it three times and still didn't understand it :-) What 
I do remember with BCP47 is that the standard states it should always return 
the minimal code required to identify a locale.  For example, if your locale 
fully expressed is "it_IT@Latn" then bcp47name() returns just "it" as Italy and 
Latin are the default country and script values for Italian and so are 
unneeded.  This compares to name() which will always return the form 
language_COUNTRY regardless of the locale (unless country is explicitly set to 
AnyCountry) but will always leave off the script for backwards compatibility 
reasons.  I need to go back to the POSIX standard to check, but I think it 
expects to have the country explicitly included, but the script only if not the 
default (or not Latn?).  If so Qt needs a posixName() which we'd need to 
simulate for now.  I also need to look into the .UTF-8 stuff as well.


- John


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/118584/#review59407
-----------------------------------------------------------


On June 6, 2014, 7:45 a.m., Luca Beltrame wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/118584/
> -----------------------------------------------------------
> 
> (Updated June 6, 2014, 7:45 a.m.)
> 
> 
> Review request for Plasma, John Layt and Sebastian Kügler.
> 
> 
> Repository: plasma-desktop
> 
> 
> Description
> -------
> 
> Currently the Formats KCM writes its configuration file using the selected 
> locale's bcp47Name(). This, at least on my distro, breaks locale loading as 
> locales are in the form "foo_FOO" (e.g., "it_IT" for my own locale) and 
> instead the Formats KCM exports LANG as "foo" (e.g. "it").
> 
> This causes a bunch of runtime warnings and locales don't get actually 
> loaded. This patch's approach is naive and likely needs more pairs of eyes on 
> it, as I can't test with other distros.
> 
> Also we might need "UTF-8" suffix for distros that use UTF-8 locales: or so I 
> think, but I'm not knowledgeable enough to tell if this is needed or not.
> 
> 
> Diffs
> -----
> 
>   kcms/formats/kcmformats.cpp 4169244 
> 
> Diff: https://git.reviewboard.kde.org/r/118584/diff/
> 
> 
> Testing
> -------
> 
> Compiled, ran the Formats KCM, selected my country, inspected the generated 
> files.
> 
> 
> Thanks,
> 
> Luca Beltrame
> 
>

_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to