From: TAKANO `takano32' Mitsuhiro Date: 2013-02-27T19:44:54+09:00 Subject: [ruby-list:49218] Re: [ruby-list:49207] Re: ruby1.9でのTkMsgCatalogの振る舞い 高野です。 ::String の挙動ではなくて、 ::Tk::UTF8_String の挙動の話なので、 ja と cat の中身がバグってるかもなーと思いました。 # 実行してみたが、結果がおかしかったので @ ruby 1.9.3p392 @ Darwin ちなみに、Ruby 1.9以降では -K オプションによる文字コードの 指定を行って実行するという手法は稀にみる程度で、 ソースコードにマジックコメントを入れて UTF-8 だよ、 ということを Ruby に知らせる方法(うささんのにばんめの方法)が よく使われています。 今回、わたしが実行時にためしたのもマジックコメントを入れたコードです。 2013年2月27日 11:35 渡邊巌 : > なかむらさん > > ご回答ありがとうございます。 > お!っと思って試してみましたが、残念ながらダメでした。 > > あとコマンドラインから -Ku オプションを指定しても振る舞いは変わりませんでした。 > > $ /usr/local/ruby19/bin/ruby -Ku msgcat.rb |od -c > 0000000 303 243 302 201 302 202 303 243 302 201 302 204 303 243 302 201 > 0000020 302 206 303 243 302 201 302 210 303 243 302 201 302 212 \n > 0000037 > > ひきつづき情報をお待ちしております。 > > # 2.0 は、このあとビルドにチャレンジしてみます! > > > 2013年2月27日 11:19 U.Nakamura : >> こんにちは、なかむら(う)です。 >> >> In message "[ruby-list:49204] ruby1.9でのTkMsgCatalogの振る舞い" >> on Feb.27,2013 10:50:26, wrote: >>> 1.9.2 では何か追加の手続きが必要なのでしょうか? >> >> 1.8で期待通りに動いているように見えるのはたまたまです。 >> 1.8でも1.9でも、rubyにスクリプトがUTF-8で書かれていることを教 >> えてやる必要があります。 >> >> (1) 1.8と1.9の両方で通用する書き方 >> >> スクリプトの先頭に >> >> #!ruby -Ku >> >> という行を入れてください。 >> >> >> (2) 1.8はとりあえずたまたまオッケーなので1.9専用の書き方(1.8 >> で害が生じるわけではありません) >> >> スクリプトの先頭に >> >> # coding: utf-8 >> >> という行を入れてください。 >> >> >> (3) 2.0にしちゃう >> >> 2.0.0から、特に指定が無ければスクリプトがUTF-8で書かれている >> とみなされるようになりました。 >> なので、特に何もしなくても、期待通りに動作します。 >> >> >> それでは。 >> -- >> U.Nakamura >> >> >