padre.exe

padre.exe

 Windows2000インストーラーが使えんのなあとか思ってcpanから入れてみたら依存モジュールが1つ足りないだけで*1、それだけ別に入れたら普通にインストールできたんで拍子抜け。もっとめんどくさいかと思ってたので。これならそのうちppmで公開されても不思議じゃない、かも。

 でまあちょっと見たら、インストーラー版(0.45)にはなかったpadre.exeが作られるようになってた。これで余計なコマンドプロンプトが開かなくなっていい感じ。

 Changesからすると0.47でWin32向けの修正が結構入ってるみたい。

 プログラム書く時はViのほうがいいよなー、ってことでPadre::Plugin::Viを使おうと思ったら動かなくなってる。

 これはPadre::UtilにあったWin32/Mac/Unixの判定用定数がPadre::Constantに変わったからだった。

(なのでPadre::Util::WXGTKを参照してる部分をPadre::Constant::UNIXに変更すれば動く)

 む、フォント名がマルチバイトだと問題があるっぽい。例えば「MS ゴシック」を指定しても次回起動時に適用されないけど、フォント名がシングルバイト(例えば「MS UI Gothic」)なら適用される。

 0.45の時は大丈夫だった気がするので、0.46か0.47の修正で何かあったのかもしれない。

 レポートはどこに出せばいいんでしょうかね?

 これはWindows2000側の問題のようでした。

追記

 フォントの件ですが、コードを追いかけてみた感じではもしかするとPadreではなくWx側の問題かもしれません。

(config.ymlのeditor_fontにutf8で保存されてるのをcp932で保存してみたら大丈夫だったので……。ひょっとするとWindows2000だけの問題かもしれない)

 この辺はもうちょっと追いかけて原因を特定してみます。

追記(2009-10-13)

 Windows XPであれば問題ありませんでした。なので、Windows2000でフォント名をutf-8で渡した時の問題っぽいです。

 まあそれはそれとしてconfig.ymlを保存するときに

Wide character in print at C:/strawberry/perl/site/lib/YAML/Tiny.pm line 376.

――とか出てました。

(ので、こちらはそのうち報告するかもしれません)

*1:確かORLiteかORLite::Migrate。META.ymlには記載がある。なんで自動で入らなかったんだろ?