In Turkish and some other languages, there are upper-case and
lower-case variants of both dotted i/İ and dotless ı/I.  If I
understand correctly, Turkish users expect case-insensitive
comparisons to treat "i" as equivalent to "İ", and "ı" as
equivalent to "I".  ELinks does case-insensitive comparisons
in at least these situations:

- searching for text in a document
- comparing a keystroke to an HTML accesskey attribute
- comparing a keystroke to the accelerator key of a BFU widget or
  menu item

Currently, these comparisons try to use towupper() or towlower(),
which in turn use the locale selected for LC_CTYPE.  Because
init_osdep() calls setlocale(LC_ALL, ""), the locale is selected
based on environment variables on POSIX, or based on the user
default ANSI code page on Windows.  (Because all the comparisons
occur in the master ELinks process, the locale environment
variables of slave ELinks processes do not affect them.)

Is this the appropriate behaviour, or should ELinks enable the
Turkish case mappings whenever the user selects Turkish from the
language menu, regardless of environment variables?

Attachment: pgpXzRKkn3VtV.pgp
Description: PGP signature

_______________________________________________
elinks-dev mailing list
[email protected]
http://linuxfromscratch.org/mailman/listinfo/elinks-dev

Reply via email to