There is one gotcha in Ruby UTF-8 support.
String method downcase is local insensitive, meaning it ignores UTF-8 characters not in standard ASCII character set.
Example below will give you expected results:
Next example will not behave as desired as non standard characters remain in uppercase:
It is supposed to be fixed in Ruby 2.0. Until then you’ll need some monkey patching:
Risky business, I know. But it’s the only only solution that I know of.