Ruby言語やLinuxのネタが多いです。
August 01, 2004 [おもひで]
def foo
yield 1
end
foo do |v| p v + 1; end
p foo {|v| p v + 1}
p foo do |v| p v + 1; end
実行結果
2
2
nil
test.rb:2:in `foo': no block given (LocalJumpError)
from test.rb:7
August 02, 2004 [おもひで]
■ [Ruby-GNOME2] Rabbit-0.0.2
うおぉ、なんかすごく良い感じになってきてません?
全画面表示とか画像保存機能とか(って前からありましたっけ?)
テーマも良い感じになってますし。
sample/rabbit.rd, rabbit_en.rdを試すのにmimetex.cgiというのが必要っぽいのが初挑戦者にはちょっとハードルが高い気もするけど、そんなときはrdファイルからmimetexを使いそうなページを削除してやってみるとすぐに試せるのでやってみて。
#ってかオレもmimetex.cgiをインストールできずに挫折(つまりオレのことか(-o-;))。
August 03, 2004 [おもひで]
■ [Ruby-GNOME2] GVQ: GTK Vocabulary Quiz
選択形式のオンライン試験アプリケーション(?)、の雛型みたいなの。
せっかくプロジェクトを起こしたんだから、是非、プロメトリックばりのアプリになるまでがんばってほしい。
■ でもなー、A, B, C, D, Eの5択のくせして、Dの回答が A or Bで、Eの回答がA or Cだなんて難しすぎるー(GVQとはまったく関係ない愚痴です、すまそ)。
August 04, 2004 [おもひで]
■ [Ruby-GNOME2] Glade-2でL10nなアプリケーションを作る際の注意
Glade-2とGetTextと組み合わせるとL10nなアプリケーションを簡単に作ることができるのだが(エクセレント!)、その場合、ロケールをC(LANG/LC_CTYPEね)にしてGlade-2を起動し、英語表示のままアプリケーションを作る必要がある....ようだ。
■ Glade-2ではロケールをja_JPのままで起動すると、各部品のメニューとかツールチップとかが日本語化されて大変わかりやすい。
わかりやすいのだが。
要はこれが日本語のまま.gladeファイル(XMLファイル)に書き出されてしまう。Glade-2で国際化するときは、ここからGetText化された文字列を抽出するのだけど、この場合日本語がキーになってしまう。
世の中、残念ながら日本語を読める人に比べると圧倒的に英語が読める人(で日本語が読めない人)の方が多いわけで、そういう人達は日本語がキーになってると全く翻訳できなくなってしまう。
■ 正直、Glade-2の日本語化がやり過ぎな気もしないでもないが、GetTextの性質を考えるともしかしたら日本語化せざるをえない状況なのかもしれない。
■ それにしてもGlade-2はすばらしい。特にRuby/Libglade2との相性は相当良いと思う。GUIアプリケーションを作ってみたい人は是非試してみてほしいな。
ちなみに次のRuby-GNOME2リリースでruby-glade-create-template(.gladeファイルからRubyの雛型を作るツール)がケッコー強化される予定なのでお楽しみに(と自分にプレッシャーをかけてみる(^^;))。
August 09, 2004 [おもひで]
■ [Ruby-GNOME2] Ruby-GNOME2-0.10.0
リリースしました。今回の売りはGTK+-2.4のフルサポートと、Ruby/GtkSourceViewのマージとRuby/PanelAppletの追加、それからruby-glade-create-packageの改良です。
これで17個のライブラリをサポートしたことになります。でもメンテナンスしてくれる人は減るばかり。正直もう手におえません(-_-;)。どなたかヘルプミー!
■ そんなこんなでさっそくバグ報告が2件あがってきました。どちらもクリティカルなバグっぽいです。またしても0.10.1をリリースしないとですね...。
私のメンテナンスしているツールはx.x.0がアルファ版、x.x.1が正式版というのが定着しつつありますね。ってか、もう、リリース作業なんてキライダー(T_T)。
#あ、でもバグレポートは歓迎です。早めにお願いします...。
August 10, 2004 [おもひで]
■ [Ruby-GNOME2] ruby-gtk2-0.10.0-2-i386-msvcrt-1.8.zip
0.10.0のWin32バイナリですが、ちとゴミもインストールしちゃうという極悪品だったので慌てて再パッケージ化しました。
もし、すでにインストールしちゃった人がいたら申し訳ないです。
■ そうそう、今回のWin32バイナリパッケージですが、今までのRuby/GLib, Ruby/ATK, Ruby/Pango, Ruby/GdkPixbuf, Ruby/GTKの他に、Ruby/GtkGLExt、Ruby/Libglade2も、さらにRuby-GetText-Packageとそれが必要とするracc-1.4.4-allも入れてあります。サンプルもひととおり入れてあるので是非お試しください。
#でも、フォント周りのWarningは相変わらず出まくりです(^^;)。
それから、チョー手抜きインストーラ付き。install.rbをダブルクリックすれば有無を言わさずインストールされます(^^;)。
August 15, 2004 [おもひで]
■ [Ruby] RPA-base
RPA-baseの作者のMauricioさんから再びメールが来た。しかも日本語でだよ、すげーな。
で、今度はRuby-Gettext-Packageをパッケージ化したとのこと。
青木さんのsetup.rbとの違いや、ディレクトリ構造をRPA-base指定のものにすればinstallxxxというのはデフォルトでは不要とのご指摘....、ってひょっとしてLinuxビボ〜ろく読んでるのか!?あちゃー(汗。
よく考えたらフリーのWebsite翻訳サービスもあることだし、どうせ日本語わかんねーだろーなんて思って辛口(というか無神経な)コメントするのはまずい時代になってきたのかも(ってもともとまずい?すんまそん)。
■ というわけで(?)RPA-baseを持ち上げるわけではないがちと調べてみた。
■ まず開発者の視点からすると、青木さんのsetup.rb並に簡単というわけではなさそうだけど、それなりに簡単そう。簡単とはいえinstall.rbを書く必要はあるんだけどね。ファイル指定を書かなくても良いなら許容範囲か。
■ ユーザの視点からするとここのデモのように簡単にパッケージをインストールできるらしく、使い勝手もなかなか良さそうだ。
すでに、rpaでダウンロードできるライブラリも100を越えたようだし。ついでだからL10n化してくれないかな(ここ見てるかもしれないのでさりげなくアピール(^^;))。
■ でも、やっぱりこれやっちゃうとrpm/dpkgのパッケージ管理ツールと衝突するよなぁ。その辺はどうするつもりなんだろう。あ、そうか。逆に言うとWin32なんかだと便利だな。
それから、あのダウンロード可能なライブラリたちは常にバージョンアップをしていくのだろうか。それだけでも途方もない作業だ...。
■ [Ruby-GNOME2] GnomeFiles
GeoffがGnomeFilesにRuby-GNOME2を登録してくれた。
ここはUser Ratingというところでvoteできる。
というわけで、さっそくRatingを10(best)にしてvoteをクリッククリック!
■ [Ruby-GNOME2] Ruby-GNOME2-0.10.1
リリースしました。
Ruby/GTK2がGTK+-2.0.x環境でコンパイルできなくなっている不具合の修正
Ruby/GtkSourceViewでruby extconf.rbが失敗する不具合の修正
Ruby/GdkPixbufのバグフィクス
です。
Win32版は用意しませんでした。3つ目のがちょっと影響するのですが、使い道の少ない機能(だと思う)なので。まー、要は面倒くさいからですけど(^^;)。
■ それにしても、今回こそはと思ったんだけどなー。1つ目のは別の環境(RedHat8)でこの不具合を事前に発見して修正したんだけどコミットし忘れ、2つ目のは、うっかりミス、ってかはっきり言って今回マージされたばかりだったので動作確認くらいしてくれてるだろうと考えてたオレが甘かった。はー、相変わらずリリース作業はダメダメだーっ。
August 16, 2004 [おもひで]
■ [Ruby-GNOME2] GnomeFiles
たむらさん、安部さん、他、協力してくださったみなさん、どうもありがとうございます。
おかげさまでいい感じで上位に食い込んでいるようです(私が見たときにBest Ratedが2位)。
バージョンが0.10.1になったことでまたVoteできるようになっていたのでまたまたRating 10(best)でVoteしちゃいました。
もうVoteしちゃった方も、まだの方も、是非、あなたの一票を!.....Ratingは10でよろぴくね(^^;)
#思いっきり組織票だな....。でも良いんです。目立つことが大事なのですっ!
■ [Ruby] sgettext
ふと、相花さんが和訳されたlibglade リファレンスマニュアルを読んでて(いつもお世話になってます)、libglade を使った国際化の章に、ナニゲにおもしろいことが書いてあるのに気づいた。
リンク先のGNU GetTextのドキュメントを見てもらえば詳細はわかると思うんだけど、GUIでありがち(?)な「表示文字は同じなんだけど機能が違うもの」があった場合の扱いが書いてある。
■ たとえば、GUIのメニューで、Fileメニュー → Openって言うメニューとPrinterメニュー → Openって言うメニューがあるとする。
通常のGetTextでは、表示文字列が同じOpenなのだから、これらは同じmsgid(つまり同じ訳)になってしまう。でも、実はOpenを訳そうとすると両方とも意味が違うので、両方とも「開く」ではちょっと気持ち悪い。
そんな時に、GetTextに渡す文字列を_("Menu|File|Open")とか、_("Menu|Printer|Open")って感じにして、デフォルト(つまり翻訳語が見つからないときに)表示するのは一番最後の"|"より右側の文字(この場合はOpen)にする、というものだ。もちろん、翻訳語がヒットした場合はそれをそのまま使う。
■ 正直、あまり使い道はなさげ、というか、おそらく最初にツールを作る人が英語ネイティブな人だときっと気づかないと思うしGNU GetTextには実装されていないみたいなんだけど、なかなかおもしろそうなのでRuby-GetText-Packageでも実装してみようかな。セパレータは選択できるようにして、こんな感じでどうだろう?
def sgettext(msgid, div = '|')
msg = gettext(msgid)
if msg == msgid
if index = msg.rindex(div)
msg = msg[(index + 1)..-1]
end
end
msg
end
■ ってか未だにGNU GetTextの仕様書を全部読み切れてないオレって...(汗。
August 18, 2004 [おもひで]
■ [Ruby-GNOME2] 続GnomeFiles
今気づいたんだけど、Alexandria, Rabbitも登録してあるね。レッツボート!
■ [Misc] ある業界人っぽい子供の名前
近々子供が産まれるという人と、どんな名前がいいだろう?という話をしてたんだけど、ネットワークな仕事にちなんで、女の子だったら「静子(しすこ)」男の子だったら「留太(るーた)」が良いだろうということになった。
もっとサーバよりに「蔵素太(くらすた)」とか言う案もでたが、「冗長構成取られても困る」と一蹴。
やはりネットワークに戻って、「蘭(らん)」とか「歩人(ポート)」とか、双子の女の子だったら、「愛子(I子)」と「P子」はどうだろう、と言ったら、さすがに「P子」はないだろ、というお答え。他はアリなのか...(^^;)。
いずれにせよ、今彼は名前探しに多少げんなりしているので、刷り込むなら今がチャンスだな(っておい(^^;))。
■ オレに子供ができたらどうしよう。やはり「愚之夢(ぐのむ)」とか。いかん、それじゃー暴走族(古)だ。
August 22, 2004 [おもひで]
■ [Ruby-GNOME2] THIS IS NOT A TROLL, but ...
「なんで今さらRubyなの? PythonとかC#でいいじゃない、斬り!」というような話題。
別に使いたくなければ使わなきゃいいじゃん、と普通の人は考えると思うんだけど、なぜあえてこのようなコメントを書くのか、ふと興味深くなった。
■ で、過去にも似たようなポストがあったなぁ、と思って検索してみると、0.8.0リリース時にも同じネタがあった。
どちらも匿名なのだが、よく見ると、XXX.cache.pol.co.ukからのアクセス、Python/C# LOVEという点で共通してるのでおそらく同じ人っぽい。
■ 彼はいったいあの場でなにをしたいのだろうか?
1. Python/C#だけ使ってほしいと本気で思ってる。
2. なんで他の人がRubyを使うのかをホントに知りたいけど自分では試したくない
3. Rubyの方が良いよ!という回答を期待して話題を膨れ上がらせ、結果的にRuby-GNOME2の注目度を高めようとする試み。
■ さぁ、みんなで考えよーっ。
#3.だとしたらあまり成功してるとは言えないなぁ。
irb(main):006:0> [0,1]::FOO
TypeError: 01 is not a class/module
from (irb):6
from :0
これだけ見れば、あぁ、そうかと思うんだけど、実はこんなことして悩んでたのでした。
$ cat test.rb class Test FOO = 0 BAR = 1 end p Test.constants::FOO #=> Test::FOOと書きたかったらしい(^^;) $ ruby test.rb test.rb:6: BARFOO is not a class/module (TypeError)
August 25, 2004 [おもひで]
■ [Misc] ExtWema for qwikWeb
以前、Hiki+Wemaみたいなものが欲しいなぁ、なんて書いてみたら、etoさんからqwikWeb用のプラグインとして実装されたとのツッコミをいただいた。
そうそう、まさにこんな感じです。欲を言えば、これがデフォルトで全ページで使えるという感じでしょうか。あ、でもExtWemaのように特定のページに限定した方がいろいろと良いのかしら。
qwikWebってHikiがベースになってるってことなのでひょっとしてプラグインは同じものが使えるのかなー。でも実装はかなり違くなってるとのことだしそのままじゃダメかな。まぁ、ともかく試してみよう。
■ ちょっと話はそれるけど、qwikWebのそのネーミング自体がWikiネームじゃないところにetoさんの心意気を感じる(深読みしすぎ?(^^;))。
■ しかし、たむらさんもひと月も前の話を良く覚えてらしたなぁと妙に感心。
最近、明日の打ち合わせのことも忘れてしまう、ちょっとヤバゲなオレにとっては相当うらやましいッス。
August 30, 2004 [おもひで]
■ [Ruby-GNOME2] Nephele 0.1.0 by ふしはらかんさん
Ruby/GTK2を使った、Sylpheed用に開発されたPOPクライアント。振り分け設定とかをRubyで記述できるとのこと。
■ オレもSylpheedを使ってるので試そうと思ったんだけど、設定ファイルをエディタで作るのはさすがにつらい。GUIで設定できるようになるとのことなのでそれまで待とう。
■ [Ruby-GNOME2] jiMPachi via 安部さんとこ
Ruby/GTK2, Ruby/Libglade2を使ったオーディオプレイヤー。
音を出す部分はSDLを使ってるようだ。といってもRuby/SDL等を使うわけでもなく独自にWrapperを実装している。また、ID3Tagのところもlibid3tagのWrapperのようだ。
■ ちなみに、Ruby-GNOME2ではRuby/GStreamerというマルチメディア関連のライブラリがある。Windowsなんかで使う予定がなければおすすめかも。
■ [Ruby-GNOME2] Ruby-GNOMEはObsolete?
たむらさんがフォローしてくださってますが、Ruby-GNOMEは2002/11くらいからObsoleteにしてるんですよね。もう2年近くもたってるんだけどなぁ。トホホ。

▲ kou [mimetex.cgiは無くても動く(無視する)ようにしていた気がします.ただ,gsが無いとエラーで終了するのは放置..]
▲ むとぽん [あれ?なんかmimetex.cgiがないよ、ってエラーになったんですよねー。 まぁ、いずれにせよ、次バージョン期待し..]