[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Возможна ли поддержка тиклем юникода?



Hello!

В продолжение темы "Как правильно сделать поддержку юникода в программе" - обнаружил, что не я один 
не умею это делать, в тикле также пресловутая буква Ё не желает сортироваться:

$ cat collate.tcl
#!/usr/bin/tclsh8.5
proc russian_compare {a b} {
     return [string compare $a $b]
}
proc nocase_compare {a b} {
     return [string compare [string tolower $a] [string tolower $b]]
}
set strings {П Й Ё п а у ы б ь ё ю я е ю я}
puts [lsort -command russian_compare $strings]
puts [lsort -command nocase_compare $strings]
puts [lsort $strings]

$ ./collate.tcl
Ё Й П а б е п у ы ь ю ю я я ё
а б е Й П п у ы ь ю ю я я Ё ё
Ё Й П а б е п у ы ь ю ю я я ё

В tclsh8.4 аналогично.
Поддержка юникода оказывается все большей проблемой...

Best regards, Alexey.


Reply to: