• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Ruby1.9.2でマジックコメントが反映されない)

Ruby1.9.2でマジックコメントが反映されない

このQ&Aのポイント
  • CentOS5.5でRuby1.9.2を利用している場合、マジックコメントを入れても「invalid multibyte char」エラーが返ってくることがあります。追加で設定する情報があるか確認しましょう。
  • Ruby 1.9.2では、マジックコメントが正常に反映されない場合があります。特にCentOS5.5での利用時には「invalid multibyte char」エラーがよく発生します。
  • CentOS5.5でRuby1.9.2を使っていると、マジックコメントをスクリプト中に入れていても「invalid multibyte char」エラーが返ってくることがあります。追加の設定情報が必要な可能性があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

逆でしょう。 マジックコメントが効いてるから、invalid multibyte char (UTF-8)となるのでしょう。 マジックコメントにしても,htmlのcharset=にしても、「そのコードを使っています」と宣言するものであって、「そのコードに変換される」ものではないです。 保存するときにその出力コードを使うように、エディタを設定するとか、nkf等で後で変換するとかして、宣言したものと実際のコードを合せてください。 # 一部には、現在のコードと比較して、宣言されているコードで保存したり、コメント自体をファイルに合せて書き換えたり、警告表示したりするエディタもあります # emacs + ruby-mode.el とか > # cat hello.rb > # -*- encoding: utf-8 -*- > puts 'こんにちは' となってますが、その表示に使った端末がEUC-JPになってないですか? nkf --guess hello.rb 等で文字コードを確認してください

その他の回答 (1)

  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.1

ソースの漢字コードは何でしょうか? puts 'こんにちは'の「こんにちわ」がutf-8で記述されていれば 期待した結果になるかと思いますが、 もし、EUCなどで記述されていれば、期待した結果になりません。 ソースコードを(間違いなく)utf-8で、記述してみてください。