Re: [gnome-cyr] GNOME2
- From: "Dmitry G. Mastrukov" =?koi8-r?q?=E4=CD=C9=D4=D2=C9=CA_?==?koi8-r?q?=E7=C5=CE=CE=C1=C4=D8=C5=D7=C9=DE_?==?koi8-r?q?=ED=C1=D3=D4=D2=C0=CB=CF=D7?= <dmitry taurussoft org>
- To: =?koi8-r?q?=F3=D0=C9=D3=CF=CB_?==?koi8-r?q?=D2=C1=D3=D3=D9=CC=CB=C9?= gnome-cyr <gnome-cyr gnome org>
- Subject: Re: [gnome-cyr] GNOME2
- Date: 25 Jan 2002 22:57:53 +0300
В Птн, 25.01.2002, в 13:32, Timur I. Bakeyev написал:
> On Fri, Jan 25, 2002 at 01:39:14PM +0300, Valek Filippov wrote:
>
> > > IMHO, это они ламернулись :) По-идее, LC_ALL "нэ нада" :)
> > Может пнёшь багрепортом?
>
> Ну, проявляется не у меня - трудно описать проблему, которую не видел... Дима, может
> ты пнешь :)?
>
Вот чего я обнаружил. В libgnomeui в файле libgnomeui/gnome-ui-init.c в
функции libgnomeui_pre_args_parse есть такой кусок
--- код
/* Begin hack to propogate an en_US locale into Gtk+ if
LC_CTYPE=C, so that non-ASCII
characters will display for as many people as possible.
Related to bug #1979 */
ctype = setlocale (LC_CTYPE, NULL);
if (strcmp (ctype, "C") == 0) {
old_ctype = g_strdup (g_getenv ("LC_CTYPE"));
gnome_setenv ("LC_CTYPE", "en_US", TRUE);
ctype_set = TRUE;
} else {
ctype_set = FALSE;
}
gsl=gtk_set_locale ();
g_print("Set locale: %s\n", gsl);
if (ctype_set) {
if (old_ctype) {
gnome_setenv ("LC_CTYPE", old_ctype, TRUE);
g_free (old_ctype);
} else {
gnome_unsetenv ("LC_CTYPE");
}
}
/* End hack */
--- код
Здесь все прибамбасы, связанные с переменной gsl - мои, я хотел
проверить, что получается при вызове gtk_set_locale(). Оказалось, локаль
устанавливается в C. Других вызовов gtk_set_locale() в libgnomeui нет.
Чего-то тут не всё гладко. Хак он всегда хак.
Хорошо бы это дело Влад посмотрел.
Дмитрий
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]