質問: visual code studioにhaskeroを導入して使おうとしていますが、どうしてもメッセージが文字化けします。 ### 発生している問題・エラーメッセージ ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/84ce4309ce2172371988c732201d07c8.png) ### 試したこと に書かれている方法を試しましたが、ダメでした。 ### 補足情報(言語/FW/ツール等のバージョンなど) windows10 Home 日本語版(バージョン1607) vscode 1.10.2 Haskero 0.3.0 Haskell Syntax Highlighting 2.1.0 stack 1.1.2
回答: 自分で試したわけでなく、検索で調べただけなので、解決できるかはわかりませんが。(当方、VSCode初心者の上、Linux環境で使ってます) 文字化けの原因は、HaskellのGHCコンパイラがUTF-8以外のコードページでメッセージを出力してるためだと思います。根本的な解決は、VSCodeのこちらのissueの対応を待つことになりそうです。Tasks should support specifying the output encoding 下の記事によりますと、GHCは`chcp 65001`を実行した環境ですと、メッセージをUTF-8で出力するようです。 * ghcと文字コードとWindowsと の対処も同じ考え方(tasks.jsonに`chcp 65001 > NUL`を追加する)ですが、うまく行かなかったということで、別のやり方を真似てみるのはどうでしょう? * Visual Studio Code で msbuild の出力を UTF-8 で表示する この方はmsbuildの文字化けを直すために、msbuild.batを作ってその中で、`chcp 65001 > NUL`と`msbuild.exe %*`を実行しています。同じように、ghc.batを作って、tasks.jsonから`chcp ...`と`ghc ...`を呼び出してみたらどうでしょう。