cygwin1.7x対応
HDDが逝ってしまいOSから何からインストールする羽目になったわけですが、cygwinが大幅アップデートされており、以前のrubyプログラムが上手く動かなくなってしまいました。
調べたところ、文字コードがUTF-8になっているそうです。なので対応としては
$KCODE = "UTF8"
としておけば概ね問題ないです。しかしながら、
conv_name.gsub!(/,/, ',')
conv_name.gsub!(/\./, '.')
と、半角を全角に置換する部分が正常に動いていませんでした。
原因は、ソースの文字コードがS-JISだったから。つまり'.'という文字列リテラルがS-SJISのバイナリになっており、それがUTF-8で解釈されたため不具合を引き起こしていたのでした。