Re: Quotation marks: Using =?UTF-8?B?4oCc4oCd?= instead of ""



On Sun, 15 Jun 2008 00:32:05 +0100
> gtk_label_new (_("this is a string with "" in it"));

Well firstly it is no longer C. You should be using \2xx\0xx or \xblah
encoding but that is a trivial side item to fix. Assuming you fix that it
obviously compiles and probably comes out ok in a .po file.

In LANG=C you call gtk_label_new with UTF-8 strings. What happens at that
point depends if gtk_label_new ever calls a single C library function
that is locale dependant (eg strcasecmp).

> Now explain how those problems are not caused by this
> 
> gtk_label_new (_("this is a string with \"\" in it"));
> 
> in the en_GB locale where gettext returns "this is a string with "" in it"

In the en_GB.utf-8 locale (there isn't a meaningful non UTF-8 GB locale)
you get gtk_label_new passing UTF-8 to the C library *but* unlike LANG=C
the library *expects* UTF-8 so will give correct answers for the locale.
Ditto en_US.utf-8.

Perhaps Havoc can definitively state whether than gtk function calls a
locale dependant C function at any point ?

Alan


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]