自分の興味の赴くままにIT技術系のネタを取りとめもなくメモっています。
Ruby言語やLinuxのネタが多いです。

July 11, 2005 [長年日記]

[Ruby-GNOME2] graif

Ruby-GNOME2を使った家計簿ソフト、だそうです。

一見したところ、使いやすいGUIになってそうな感じです。


July 18, 2005 [長年日記]

[Fedora] Core 4

まとまった時間が取れたので自宅PCをFedora Core 4にしてみた。

ATOKもJUSTSYSTEMの情報を参考にして無事起動できた。公式サイトに情報が載ることは良いことだ。


July 19, 2005 [長年日記]

[Ruby] Rubyist Magazine 0008 号

これだけのドキュメントを書き続けることはすばらしいことだと思います。

それにしても月日の流れは早いですねぇ。


July 24, 2005 [長年日記]

[Ruby-GNOME2] 次のリリース

来週に新しいバージョンをリリースしようと考えていろいろと作業してみた。

あまり、手を入れていない割にはいろいろと修正が必要だった。

ただでさえRuby拡張ライブラリは、Rubyのバージョンへの追随、オリジナルのライブラリのバージョンへの追随、が必要になってくるから、放置しておくといずれ使えなくなってしまうという宿命を背負っているんだけど、こと、Ruby-GNOME2に関しては関係するライブラリがてんこもりなので厳密な追随はムリ。

まぁ、でも、今回はできる限りのことをやろうということで、

Fedora Core1, 3, 4, Vine 3.1, RedHat8の環境を作ってコンパイルしてみた。これで、Ruby-1.6.8, 1.8.x, GTK+-2.0.6 - 2.6.77, GNOME-2.0.x - 2.10.0の環境で、大体動くはず。もちろん、元々GNOME-2.8.xの環境しかサポートしてないライブラリとかもあるのでそれはそのままなんだけどね。

あとは、Ruby-GNOME2のコンパイルがうまくいかないらしいUbuntuとWin32を試してヨシとしよう。でも、大変だな、こりゃ。

本日のツッコミ(全2件) [ツッコミを入れる]

のりつぐ [gtk/sample/gtk-demo/main.rb が 1.6.x で動きません。#to_symがないからのよう..]

むとう [なるほど。ご報告ありがとうございます。]


July 25, 2005 [長年日記]

[Misc] Ubuntu Linux 5.04

初めてUbuntuというのを入れてみた。茶色基調で結構見た目おしゃれ。

これ、Vineで言うところの

apt-get script install-devel.lua

って無いのかなぁ。よくわかんなくてGUIの「Synapticパッケージマネージャ」というツールでポチポチdevel系のパッケージをインストールしてったらスゲー時間かかっちゃったよ(^^;)。


July 26, 2005 [長年日記]

[Ruby-GNOME2] 64bit環境では動かない?

うーむ、そうかもしれないけど、正直、64bit環境持ってないのでよくわからないッス。

誰か、デバッグ環境用に64bitマシンくれないかなぁ、タダで。ついでにMacOS Xも。って、そんなムシのイイ話ないか...。

ってか、持ってる人がパッチ作って送ってくれるのが一番なんだけどなぁ。

本日のツッコミ(全15件) [ツッコミを入れる]

Before...

ay [情報感謝です。Ruby-GNOME2のメンテナに連絡してみます。]

kou [コミットしました. HEADのlibgnomecanvas2はgnome_canvas_path_def_get_..]

むとう [ayさん: debianのメンテナというとDafyddのことでしょうか。よろしくお願いします。 kouさん: なる..]


July 30, 2005 [長年日記]

[Ruby-GNOME2] 64bit環境

今回の件をレポートしてくれたJoeと何回かメールでやりとりしたところ、彼が彼のマシンにアカウント作って提供してくれた。ラッキー。ssh -X ってやるとXプロトコルも通せるのね。知らんかった。

そんなわけで、一通り(といっても、彼のマシンに入っていなかった一部ライブラリは確認できていないんだけど)のライブラリについては、サンプルの動作確認をすることができた。あと、rbbrも。

何点か不具合がわかったけど、ほとんどkouさんの指摘範囲での修正で済んだので良かった良かった。網羅はできてないけどそれは追々直していくしかないよね。

これからもアカウント使わせてくれると嬉しいのだけどどうなることやら。

とは言ってもさすがにXが遅いんだよなぁ。でもコンパイルは異様に早かった。うらやますぃ。やっぱり64bitマシン欲しくなってきたなぁ。

さて、リリース準備に取りかかりますか。明日から(苦笑)。


July 31, 2005 [長年日記]

[Ruby-GNOME2] Ruby-GNOME2-0.13.0 is out!

リリースしました。いやー、いつもながら大変だー、こりゃ。

大変だっただけに良いものになってるはず!?

みなさん、特に学生さんは一人1スクリプト、夏休みの宿題と言うことで!

もちろん、提出先は私で!

....冗談です。まぁ、ともかくRuby-GNOME2を使ってみてくださいな。最近、Webプログラミングに押されまくりではありますが、GUIプログラミングも結構楽しいですよ。

にしても。Win32はとりあえず32bit版のバイナリを用意したけど近い将来は64bit版も用意しなきゃいけなくなるんだろうなぁ。この作業、誰かやってくれないかしらん。

[Ruby] Ruby-GNOME2 + Ruby-GetText-Packageメモ

オレが過去に作った何点かのRuby-GetText-Package対応アプリケーションやruby-glade-create-templateでは、以下のような仕掛けを入れてある。これで、Ruby-GetText-Packageが無い環境であっても、一応は英語でアプリを起動することができる。

begin
  require 'gettext'
rescue LoadError
  unless defined? GetText
    module GetText
      module_function
      def _(msgid); msgid; end
      def N_(msgid); msgid; end
      def n_(msgid, msgid_plural, n)
	n == 1 ? msgid : msgid_plural
      end
      def s_(msgid, div = '|')
	if index = msgid.rindex(div)
	  msgid = msgid[(index + 1)..-1]
	else
	  msgid
	end
      end
      def bindtextdomain(domainname, path = nil, locale = nil, charset = nil)
      end
    end
  end
end

Ruby-GetText-PackageのメンテナでもあるオレにとってはRuby-GetText-Package必須で!と言いたいところだが、Ruby-GNOME2のメンテナであるオレにとってはこうすることで少しでもアプリケーションの依存関係を(必要でないならば)減らしていける工夫は大切だと思ってもいる。

一方、Ruby-GNOME2でL10n化しようとすると、Ruby-GetText-Packageはほぼデファクトスタンダードになっている。

(1) 過去のGNU GetTextとGTK+の関係の延長でRubyでも似たようなインタフェースが慣れてる。

(2) msgmergeなど、メンテナンスを考えるとGetTextはとっても有利。

(3) LibgladeがGetTextの仕組みで動作するので、少なくともLibgladeを使ってL10n化を考えるとGetTextの仕組みが必須。ならばあえて別のL10n化の仕組みを入れるまでもない。

(4) どちらもメンテナがオレ(^^;)

などが理由に挙げられる。ってか(2)(3)が大きなアドバンテージだろうな。

で、次のRuby/GLib(のglib2.rb)に、上記コードをそのまま入れてしまうのはどうだろう、と思うに至った。

であれば、Ruby-GNOME2ベースのアプリケーションは、何も気にせずGetTextの仕組みを用いたコードを書くことができ、それはもちろん、GetTextが無い環境でも動作するわけだ。英語圏の人はわざわざRuby-GetText-Packageなんて入れたくないだろうしね。

デメリットといえば、L10n化の仕組みが完全にRuby-GetText-Packageに依存するようになるってことだと思うけど、現時点では有力な対抗馬もいないことだし、ムリに使わなくても大丈夫だし、まぁ、よしとするかな。

もう一つのデメリットは、このコードの後にrequire 'gettext'すると、-wオプション付きでそのスクリプトを実行したときに"warning: method redefined"というWarningが出ることか...。こっちはちょっとイヤだなぁ。なんか回避策無いかな。

そうそう、このコード、Ruby-GetText-Packageにも含めた方が良いかもね。miscとかいうディレクトリ作ってそこに置けば良いのかな。

本日のツッコミ(全3件) [ツッコミを入れる]

kou [お疲れさまでした. 夏休みの宿題は...ちょっと...無理かも...です...X< "warning: metho..]

たむら [単に requireしてるかどうかの判断なら $".include?('gettext.rb') でいけるけど そう..]

むとう [ あれ?大丈夫かな>Warning 意図としては以下のようなコードを追加するイメージです。 require 'ge..]