ジャズボーカル 松田オリビア圭子

ジャズボーカル 松田オリビア圭子のブログです。主にスケジュールのご案内を掲載します。

コマンドプロンプトでUTF-8を表示させたかったけど

Windows上でRuby on Railsアプリのプログラミングをしていて、
コマンドラインruby script\console でメソッド入出力を確認しようとしてました。
半角英数字の文字列を扱っているときは問題なし。快適。
でも全角、漢字文字列の入出力は確認できない!
アプリの$KCODEがUTF-8だから、コマンドプロンプトSJISだけに対応)は文字化け表示するのだ。


あがいた結果、今後使える情報として以下はわかった。
コマンドプロンプトで以下の手順を取ると、UTF-8を表示できる
 1)コマンドプロンプトウィンドウの左上アイコンを右クリック>プロパティ>フォント で MSゴシックを選択
 2)コマンドプロンプトで chcp 65001 と実行
 情報源:もぎゃろぐ:utf8なテキストをコマンドプロンプトで表示する
   いちおう、ここまではできた。type utf8file.txt なんてすると、
ファイル内容のUTF8のテキストがきちんと表示できた。

・しかし、上記1),2)を実行したあとのコマンドプロンプトでは、
 Ruby on Railsプログラムの script\console が起動しない場合がある
 (原因は不明。少々はまりました orz)


というわけで今回は、プログラミング途中の結果確認をしたいだけなので
コマンドプロンプトの調教を諦めて、Rubyソースを変更することにした。
元のコード例: (name1という変数の内容を表示させたい)
  puts name1

変更後のコード例:
  require "Kconv"
  ...
  puts name1.tosjis
ひとまずの用は足りました。


でもほんとは、コマンドプロンプトのプロパティ指定あたりで、さくっとできたいところだと思う…。