<stderr>: commitAndReleaseBuffer: invalid argument (invalid character)で動かないぞ- 文字コードが悪いらしいぞ
- chcp 65001でutf8にするぞ
- 動くようになったけど文字化けするぞ
- powershellでエンコーディングの設定するぞ
- 直ったぞ
という話。
app\Main.hs:36:27: error:
<stderr>: commitAndReleaseBuffer: invalid argument (invalid character)
とかなんとか言われて動かない場合にターミナルの文字コードをUTF-8に変えようと、
chcp 65001
とするも、
app\Main.hs:27:8: error:
窶「 No instance for (Control.Monad.Reader.Class.MonadReader GB IO)
arising from a use of 窶・iew窶・[0m
窶「 In a stmt of a 'do' block: m <- view mem
In the expression:
do m <- view mem
pure 10
In an equation for 窶腕eadMem窶・
readMem
= do m <- view mem
pure 10
|
27 | m <- view mem
| ^^^^^^^^
みたいな感じで文字化けする場合、
[System.Console]::OutputEncoding = [System.Text.Encoding]::GetEncoding("utf-8")
[System.Console]::InputEncoding = [System.Text.Encoding]::GetEncoding("utf-8")
$env:LESSCHARSET = "utf-8"
とやると、
app\Main.hs:27:8: error:
• No instance for (Control.Monad.Reader.Class.MonadReader GB IO)
arising from a use of ‘view’
• In a stmt of a 'do' block: m <- view mem
In the expression:
do m <- view mem
pure 10
In an equation for ‘readMem’:
readMem
= do m <- view mem
pure 10
|
27 | m <- view mem
| ^^^^^^^^
みたいな感じになっていい感じ。