Luca Olivetti wrote:
En/na Anssi Hannula ha escrit:
Note that KDE does provide the user a list of languages, but it does not use gettext, but instead uses its own glibc-derived implementation for translation, with file format being the same.
[...]
Isn't there perhaps a way to tell gettext *explicitly* which files to use, completely bypassing this whole broken setlocale stuff? In that case VDR could collect it's list of *.mo files and decide by itself which one to use.
I'm not aware of such a way.
I think that in your message there's the solution: do *not* use gettext but use an own implementation. Maybe borrowing kde implementation (which is already C++) it's easier than translating the pascal class I proposed before (or maybe not ;-).
Actually, it seems KDE 4 uses real gettext to do it, and uses the following code:
// Point Gettext to new language. setenv("LANGUAGE", language, 1);
// Locale directories may differ for different languages of same catalog. bindtextdomain(name, localeDir);
Maybe just using 'setenv("LANGUAGE", "de", 1);' will do what we want, without need for setlocale()? :)
I have to go now so I can't check that yet.