[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gettext binaries for Cygwin
From: |
Brian . Inglis |
Subject: |
Re: gettext binaries for Cygwin |
Date: |
Thu, 5 Dec 2024 10:03:49 -0700 |
User-agent: |
Mozilla Thunderbird |
On 2024-12-04 22:34, Bruno Haible wrote:
Hi Brian,
Previous discussion that I could find:
https://cygwin.com/pipermail/cygwin/2016-August/229324.html
suggests that `locale -iU` might be preferred selection instead of current use
of `locale -uU` in /etc/profile.d/lang.sh.
I think that for the POSIX environment variables LC_CTYPE, LC_MESSAGES
(at least), `locale -uU` is the better choice.
That is the current default choice set in /etc/profile/lang.sh, which is limited
by MS Windows Language pack availability, affecting only system dialogs and
messages, so I could only pick the closest en-GB, as with many packages like
Thunderbird and LibreOffice, whereas regional settings for input language and
formatting (and non-Unicode) reflect my desired locale.
Reasons:
* As can be seen from winsup/utils/locale.cc:
'i' ==> GetLocaleInfoW ((UINT_PTR) GetKeyboardLayout (0) & 0xffff, ...)
'u' ==> GetLocaleInfoW (GetUserDefaultUILanguage (), ...)
's' ==> GetLocaleInfoW (GetSystemDefaultUILanguage (), ...)
* The POSIX environment variables [1] deal with processing of data inside
programs, and LC_MESSAGES in particular with "informative and diagnostic
messages and interactive responses".
POSIX does not have an environment variable for keyboard input or the
input method, since that part is implemented by only the X server or
the kernel (and thus not relevant to programs in general).
[1] https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/V1_chap07.html
$ for o in s u f i n; do echo "locale -$o: `locale -v$o`"; done
locale -s: en_US
locale -u: en_GB
locale -f: en_CA
locale -i: en_CA
locale -n: en_CA
Please note that my actual MS Windows keyboard layout is en-US not en-GB or
en-CA Intl (switchable to fr-CA), and my X kb is generic PC 105 US layout.
My keyboard + mouse is actually a Logitech Wireless Combo with Optical mouse but
none of the X Logitech "Cordless" layouts match my keyboard with numeric keypad.
So that "layout" is now more reflective of the MS Windows IME(s), spell
checking, voice, and speech dictionaries selected, which are reflected in the
above "language" list.
Remember these features were added about 2016 with the available APIs in W2K+,
so we have to deal with how they may have been twisted in recent years, until
some volunteer(s) step up with the interest, knowledge, experience, and time to
update to more modern interfaces, which support process and thread level locales.
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry
- Re: cannot compile under cygwin because of gnulib/uninorm, (continued)
- Re: cannot compile under cygwin because of gnulib/uninorm, Brian Inglis, 2024/12/04
- Re: gettext binaries for Cygwin, Bruno Haible, 2024/12/04
- Re: gettext binaries for Cygwin, Brian Inglis, 2024/12/04
- Re: gettext binaries for Cygwin, Bruno Haible, 2024/12/04
- Re: gettext binaries for Cygwin, Brian Inglis, 2024/12/04
- Re: gettext binaries for Cygwin, Bruno Haible, 2024/12/04
- Re: gettext binaries for Cygwin, Brian Inglis, 2024/12/04
- Re: gettext binaries for Cygwin, Bruno Haible, 2024/12/04
- Re: gettext binaries for Cygwin, Brian . Inglis, 2024/12/04
- Re: gettext binaries for Cygwin, Bruno Haible, 2024/12/05
- Re: gettext binaries for Cygwin,
Brian . Inglis <=
- Re: gettext binaries for Cygwin, Denis Excoffier, 2024/12/05
- Re: gettext binaries for Cygwin, address@hidden, 2024/12/06
- Re: gettext binaries for Cygwin, Denis Excoffier, 2024/12/04
- Re: gettext binaries for Cygwin, Bruno Haible, 2024/12/04
- Re: gettext binaries for Cygwin, Brian Inglis, 2024/12/07
Re: cannot compile under cygwin because of gnulib/uninorm, Denis Excoffier, 2024/12/04