WindowsのSassでエラーになる時

Windows で Sass を使おうとすると以下のようなエラーが出ることがある。
Encoding::UndefinedConversionError on line ["NUMBER"] of C: "\x[HEX-CODE]\x[HEX-CODE]" from Windows-31J to UTF-8

この対策として、コマンドプロンプトの文字エンコーディングUTF-8にすることが挙げられている。以下のコマンドを実行することでできる。

> set LANG=ja_JP.UTF-8

しかしこれでも同じエラーが出ることがある。コマンドプロンプト自体のエンコードは変わっていない場合だ。
その時は以下のコマンドを実行しよう。(一時的に画面がおかしくなるが、 compass w するのに支障はない。また、別のコマンドプロンプトを開けばもとの状態になっている。)

> chcp 65001

この問題で4時間ハマってしまった。

結論

compass_watch.batって名前のファイルに次のように書いて使ってる。

chcp 65001
compass w

簡単でしょ?

参考

Sass および Compass については以下の記事が分かりやすかった。

gem を使った Sass のインストールで SSL なんとかってエラーになる時は以下の記事を参考に。