2015-01-22 14:43:00 +0000, Stephane Chazelas:
[...]
> Bash Version: 4.3
> Patch Level: 30
> Release Status: release
> 
> (Debian unstable amd64)
> 
> $ LC_ALL=tr_TR.UTF-8 bash -c 'typeset -l a; a=İ; echo $a' | hd
> 00000000  69 b0 0a                                          |i..|
> 00000003
[...]

Hi. While, that particular bug seems to have been fixed in 4.4,
it looks like there's still a problem in those Turkish locales
where uppercase i is İ and lowercase I is ı.

$ X=AEIOU LC_ALL=tr_TR.UTF-8 bash -c 'echo "${X,,}"'
aeIou
$ X=aeiou LC_ALL=tr_TR.UTF-8 bash -c 'echo "${X^^}"'
AEiOU

same issue with typeset -l/u

$ X=aeiou LC_ALL=tr_TR.UTF-8 awk 'BEGIN{print toupper(ENVIRON["X"])}'
AEİOU
$ X=AEIOU LC_ALL=tr_TR.UTF-8 awk 'BEGIN{print tolower(ENVIRON["X"])}'
aeıou

Those ones are OK:

$ X=AEİOU LC_ALL=tr_TR.UTF-8 bash -c 'echo "${X,,}"'
aeiou
$ X=aeıou LC_ALL=tr_TR.UTF-8 bash -c 'echo "${X^^}"'
AEIOU

nocasematch seems to be OK as well.

$ bash --version
GNU bash, version 4.4.12(1)-release (x86_64-pc-linux-gnu)

(on Debian).

-- 
Stephane

Reply via email to