Gary Mills-san wrote (10/10/08 11:12 AM): > Is the bug because LANG is not set, or because `setlocale(LC_ALL, "")' selects > the `C' locale even though all the `LC_*' variables are set? It seems normal > in > Solaris for LANG not to be set. Applications need to select the correct > locale in > this situation.
If the locale has LC_MESSAGES=C, the GUI is English. Some people want the partial locales LANG=foo and LC_MESSAGES=C. European locales have the known issues in the init file in Solaris but Asian locales are no problem at the moment. If applications change the LC_* values, it causes another bug. After Solaris bugs are fixed, We'd like to enhance GDM to support the partial locales fully. The current plan after Solaris bug is fixed: 1. Load /etc/default/init file and setlocale(LC_ALL, "") for GDM locale. 2. Save setlocale(LC_MESSAGES, NULL) as the system locale. 3. When users switch locales on GDM, clear LANG/LC_* values and set the selected LANG and call setlocale (LC_ALL, ""). 4. Load /usr/lib/locale/$LOCALE/locale_map when invoke gnome-session to support partial locales. fujiwara
