Help us understand the problem. What is going on with this article?

VSCode WindowsでRubyの文字化け 対処法 pメソッド編

More than 1 year has passed since last update.

追記 2019/03/28
VSCodeを新たにインストール。

PowerShell 6.2
Ruby 2.6
をインストールするとデフォルトで普通に表示された。
(UTF-8を利用できる設定にすること。)

Release v6.2.0-rc.1 Release of PowerShell Core · PowerShell/PowerShell
ダウンロードファイル
PowerShell-6.2.0-rc.1-win-x64.msi

Ruby Downloads
ダウンロードファイル
Ruby+Devkit 2.6.1-1 (x64)

結論

pをputsに変更する。

環境

Windows7 64bit
VSCode 1.19.1
Ruby 2.4.0p0 (2016-12-24 revision 57164) [x64-mingw32]
UTF-8

症状

putsメソッドなら正常だが、pメソッドだと文字化けして見える


puts 'あいうえお' #正常に見える
p 'あいうえお' #文字化け

実行
> ruby .\実行ファイル名.rb
結果
あいうえお
"\u3042\u3044\u3046\u3048\u304A"

対処方法

ターミナルから
-U オプションを付けて実行する

実行
> ruby -U .\実行ファイル名.rb
結果
あいうえお
"あいうえお"

半永久的に設定しておきたい場合

コントロールパネル>システム>システムの詳細設計
システムのプロパティウィンドウが表示される
環境変数>XXXのユーザー環境変数
新規

変数名 RUBYOPT
変数値 -U

VSCodeを再起動
※再起動必須
※PCの再起動は必要ない

処方結果
ターミナルから
実行
> ruby .\実行ファイル名.rb
結果
あいうえお
"あいうえお"

その後

ターミナルからなら綺麗に表示されるようになったが、
Run Codeからは別の新たな文字化けが・・・

Run Codeから実行する。
結果
"����������"
����������

疲れたよ・・・
なので元に戻した。

その後の対処方法
pをputsに変更する。

Rubyの文字コード設定ってどうなっているの???
Windowsのシステム環境変数だったり
ターミナルのオプションだったり
ファイルの上の Shebangだったり

WindowsやめてMac使いたいよ・・・

masakinihirota
Webapp masakinihirota
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away