Ruby言語やLinuxのネタが多いです。
May 17, 2006 [おもひで]
■ [Ruby-GNOME2] Ruby/Poppler, Ruby/VTE
須藤さんが2つのライブラリを同時にインポートしてくださいました。いやぁ、これで23個のライブラリ群ですよ。スゲー(ヒトゴト)。
ちなみに、Ruby/Popplerはfreedesktop.orgが提供するPDFレンダリングライブラリです。PDFをGTK+のウィジェットに書き出すなど、GTK+と親和性が高いとのこと。
試してないけど日本語使えるのかな。PDFWriter使おうと思ったら日本語使えなかった(中村さんのパッチなしでは)記憶があるので、日本語使えるのならニーズは結構あるかもしれないですね。まぁ、GTK+との親和性が高い、というのはいづれにせよ強みではありますが。
Ruby/VTEはシンプルなターミナルエミュレータのウィジェットです。GNOMEターミナルにも使われています。
ぜひともお試しくださいませ。
■ 全然話変わるんだけど、誰かRuby-GNOME2 on Ruby on Railsっていう記事書いてくれません?(とこちらも人任せ)。GUIの無いライブラリ関係(画像処理、PDF、SVG等々)はLinuxなんかで結構便利に使えると思うんだよね。Pure Rubyじゃなくても良いなら性能面でもアドバンテージがあると思うし。
■ [Ruby] Ruby-GetText-Packageバグ
MS Windowsな環境で、developmentモードなのにrake makemoした後に変更が反映されない(キャッシュされたままになる)ことがわかりました。
これは、gettextのlib/gettext/mo.rbのctimeというところをmtimeに修正すれば直りますのでもし気になっていた人がいたら修正してみてください。
ctime/mtimeって違いをあまり気にしてなかったんだけど、ctimeがcreated timeでmtimeがmodified timeの略という理解でOK?
■ [Ruby] Ruby-GetText-Package - イタリア語訳
イタリア語のメッセージカタログが追加されました。こちらは13言語目です。なんかオレってば増やすの好きみたい(苦笑)。
でも、まぁ、Rails MLで吠えた甲斐があったのかも。


>mtime
おおなるほど、どうもありがとうございます。
VC++の_fstatのコメントを見るとTime of creation of fileとTime of last modification of fileとなっているので、その理解でOKだと思います。
Windowsでは意味が変わっていますが、もともとはi-nodeのchanged timeです。
だから、unixenではctimeを使うほうが正しいと思います。
なるほど。
んじゃ、どっちかが変わった場合にはとにかく再ロード、っていう処理にしちゃいましょうか(玉虫色解決)。基本、デバッグモードの処理なので性能的にはまったく問題ないですし。
Rubyリファレンスマニュアルの説明文はちょっとわかりづらいかも。
mtimeだけでいいのでは? と調べて出直してきました。
unixenのctimeはi-nodeというかディレクトリ上の情報(パーミッションとか)の変更に反応して、ファイルのデータそのものの更新への反応はmtimeのほうだからです(mtimeが変わればctimeは確実に変わると思うけど、ctimeが変わってもmtimeが変わらないことはある)
ただ、確かにデバッグモードの処理なので両方見てもやり過ぎということはないので、玉虫色解決には賛成です。
玉虫色でいいと思います。
性能的にも、stat()/FindFirstFile()はmtime,ctime一度にとってくるので有意な差はないはずです。
# Time#<=>よりもシステムコールのほうが重いでしょう。