いまは、rubyで開発をしています。
演劇感想文リンクのページは、毎週1万5千ページにわたる全コンテンツの再作成を行っており、そのプログラムをrubyで開発しています
開発初期は、マックユーザーであったもののMac Book Airが諸般の事情によりおしゃかになって、急遽Windowsでの開発環境を用意しました。
とはいえ、IDE(統合開発環境)の類にはあまりいい思い出がないので、結局vimを使うという方向で落ち着きました
もともとmacで開発していたこともあり、プログラムファイルがUTF-8で作成しています。それが、実は厄介事のはじまりでした。
勿論 windowsの標準はS-JISで、結果として普通にvimから!rubyでrubyを実行しても、コマンドプロンプトに表示されるメッセージやプログラム上で記載したデバッグ用の文字列が文字化けする。だからといって、SJISにソースコードを治すことにも抵抗があり…なんとか文字化けしない方法を探しあぐねていました。
それで、秀丸+exec_ruby_macというマクロで実行する事にしています。これだと実行時に、UTF-8からSJISへの変換をかけてくれているらしく、結果を見やすい。(特にRspecの結果が文字化けしないのが嬉しい)
ですが、今度はこちらのような障害にぶつかってしまいました。
こちらは、開発者の方からコメントをいただき、マクロの不具合が解消されたらしい(まが確認できていない)
一方で、vimの場合、実行結果をパイプでnkfに渡せばいいのだということに気づいた。
nkfを以下のサイトからダウンロードして解答。
ネットワーク用漢字コード変換フィルタ シフトJIS,EUC-JP,ISO-2022-JP,UTF-8,UTF-16 nkf.exe nkf32.dll Windows用の詳細情報 : Vector ソフトを探す! - |
色々はいっていたが、
\nkfwin \vc2005\win32(98,Me,NT,2000,XP,Vista,7)Windows-31J\nkf32.exe
をソースコードと同じフォルダに入れてvimで対象ファイルを開いた状態で
:!ruby % |nkf32
とか
:!rspec % |nkf32
でとりあえず化けないで結果が確認できるようになった。ただこの方法だとrspecの-c でカラーモードにしても、nkf32で色がなくなってしまうみたい。ま、色ついてるのは、少し読みにくいしいいのだけど。
秀丸のマクロがうまく動けばそっちに戻ろうかなぁと思っています。