デフォルトのEUCでは,英小文字に相当するものとして使えます. ポータビリティが低いのでおすすめできません.識別子では ありませんが,Hashのキーには当然使えますね.
組込みのtrは,バイトごとに変換します.require "jcode"とすると, 日本語を文字ごとに扱えます.
require "jcode"
a = "ぁぃぅぇぉがぎぐげござじずぜそだぢづでど"
a.concat "ばびぶべぼぱぴぷぺぽゃゅょっゎ"
b = "あいうえおかきくけこさしすせそたちつてと"
b.concat "はひふへほはひふへほやゆよつわ"
ary.filter{|l| [l.tr(a,b), l]}.sort.filter{|e| e[1]}