[etoys-dev] composition input change

Bert Freudenberg bert at freudenbergs.de
Thu Oct 14 13:47:39 EDT 2010


On 14.10.2010, at 10:20, K. K. Subramaniam wrote:

> On Thursday 14 Oct 2010 9:30:00 pm Bert Freudenberg wrote:
>> On 14.10.2010, at 03:49, K. K. Subramaniam wrote:
>>> Hi Bert,
>>> 
>>> The LANG check you introduced in etoys.sh will break Indic m17n fixes
>>> because most Indic environments leave the locale as en_IN.UTF-8 or
>>> en_US.UTF-8 and then choose the most appropriate language for a given
>>> app. This is why I patched etoys.sh to use compositioninput if .UTF-8
>>> encoding is specified in $LANG. Input encoding does not depend on
>>> language code.
>>> 
>>> Subbu
>> 
>> But every Linux I know uses utf-8 now. E.g. German uses de_DE.UTF-8 and
>> English uses en_US.UTF-8. Since I don't know what compositioninput does, I
>> thought it better to restrict it to the languages you mentioned.
> compositioninput flag is used by vm-display-X11 to use multi-byte input method 
> instead of Latin-1 input method. This allows input method engines in Xlib to 
> switch in different encoders for keyboard input without recompiling an app. It 
> is required for m17n inputs. See XmbLookupString(3) and XLookupString(3) for 
> details.

>> So, how would it affect the other languages?
> It wont. compositioninput uses locale settings and is backward compatible with 
> Latin-1 input methods.

How so? The latin-1 locales use utf32 now, they do not expect multiple utf-8 bytes.

>> I previously thought the encoding part of LANG referred to file names. I
>> was surprised you thought it had anything to do with X11 input.
> Encoding covers characters (LC_CTYPE). Legacy environments don't tack .UTF-8, 
> so I am using it as a hint that the environment is more recent and will 
> support m17n.
> 
> Given that Unicode is now widely accepted and implemented, we could use 
> compositioninput as default and deal with legacy encodings as exceptions.
> 
> Subbu

But that would require more changes on the image side, right? For now your m17n environment is only used by a few locales.

- Bert -




More information about the etoys-dev mailing list