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

March 30, 2002

[tDiary] tDiary用プラグイン第4弾 a.rb

アンカーを自動生成するプラグイン。こちらから。

似たような感じのプラグインでアビーさんによるezlink.rbというのがすでにあるんだけど、とにかくキーワードを英字でかつ短い(1字とか)文字にして入力する手間を省きたかったのと、どうしても@referer_tableを流用すると自由度が低くなるような気がしたので、自分で辞書ファイルを作ってそれを使えるように実装してみた。

辞書ファイルをリモートからでも更新できるようにしたいな。やはりCGI書かないとダメかなぁ。

それから、fortune.rbとa.rbってファイルにアクセスするから@secure = trueだと使えないのか。むぎゅぅ。@refere_tableみたいにtdiary.conf内に持たせた方が良いのかな....。

[tDiary] fortune.rb

kjanaさんに教えていただいた方法を使ってfortune.rbを再構成してみようとちょっと考えた。

でも、やっぱりfortune辞書形式(複数行あり、データ分割は%行で行う)ではちょっと複雑になってしまうな...。

なんか、そもそも考え方間違えてるのかな...。うん、その可能性は高い(^^;)。

そうそう、fortune.rbって辞書ファイルにHTML形式の文章も使えるようになっているので、例えばXREAの広告みたいなのをランダムに表示することもできる。自分で取った写真をランダムに表示するとかに使っても面白いかも。

でも、そう考えると、やっぱり名前が悪いかなぁ。

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

kjana [あれ,本質は「rand(n) が 0 を返す確率は 1/n」っていうだけだから, レコード毎に読みだすようにして,レ..]

恵司 [namazu君動いてくれません、参りました。]


March 30, 2003

[Ruby-GNOME2] Ruby-GNOME2-0.4.0 Win32バイナリパッケージ(mingw32/mswin32/msvcrt)

さかいさんがバイナリパッケージを作ってSFにあげてくれました。Win32な人は是非お試しを。

[Ruby-GNOME2] Ruby/GTK2版テトリス by Joao

実行しようと思ったら、2箇所ほど^Mって書いてある部分を削除する必要アリ(^^;)。

おもろいと思ったのがメソッド名の付け方。Portugueseなんだそうだ。

そうそう、彼はRuby/GTK2でIRCクライアントも作ってるらしい。

[tDiary] tDiary Plugin Viewer-1.0.3

ZnZさんから内容表示画面の表示不正のパッチをいただいたのでそれを適用してアップグレードしときました。

[Hiki] Hiki/RD+-0.1.2

公開しました。Hiki-0.4.2aへ上書きさせる感じで差分ファイルだけの公開という形にしました。興味のある方はどうぞ。

#インストール方法はREADMEを見てください。別途RDToolとかも必要です。

なお、今後はHiki本体に取り込めるかどうか竹内さんと調整していこうと思います。もし、本体に取り込まれるようになったときは、現在のデータファイル形式等の互換性がなくなるかもしれません。その辺は了解の上、お使いください。

ちょっと中身の説明をしますと、parser.rbでRD::RDTreeを生成し、rd2html.rbがHTML生成のVisitorとなってRD::RDTreeをHTMLに変換していきます。ここまではRDToolと同じなのですが、RD::RDTreeでは生成できない記述フォーマットの拡張部分に関するパースもVisitor側のHTML生成部分でやってしまっているという、お行儀の悪いプログラムになってます。まぁ、RDToolのパース部分自体を拡張するのが大変そうだったのと、CGI::escapeするタイミングを考えると妥協点としては妥当な部分かなと。

で、その、rd2html.rb内で行っているパースは富豪的アプローチを取っているため(gsub使いまくり)、コード自体は比較的スッキリしているのですが、速度/CPU負荷的にはちとアレかもしれません。でも、SF.jpは負荷率とかにあまり厳しく制限されていないみたいなので気にしないことにしました(^^;)。

それから、オリジナルHikiではできないと思うのですが、Pluginを複数行に渡って記述できるようになってます(書き方のプラグインの説明を参照)。これは、Ruby-GNOME2のステータス管理用のテーブルを簡単に生成できるようなプラグイン(status.rb)を使えるようにするためにそのようなことができるようにしました。

あと、a.rbというファイルがありますが、これはtDiaryのアンカー自動生成プラグインそのものです(1行たりとも変更してません(^^;))。これを使うことで、実はオリジナルHikiよりも強力な(?)外部リンク機能を実現しています(辞書ファイルはInterWikiNameをそのまま使います)。こちらも、前述のドキュメントで確認してください。

#実はここが一番アピールしたかったところだったりして(^^;)。


March 30, 2004

[Hiki] チュートリアル向けリンク生成プラグイン-1.1

ZnZさんに指摘いただいた点を修正してリリースし直しました。こんな感じでどうでしょう。


March 30, 2006

[Ruby] Ruby-GetText-PackageがOpenBSDで動作しない(3)

自力でコンパイル通すのは断念。ftp.openbsd.orgにあったruby-1.8.1p0.tar.gzをpkg_addした。

strcpyとかのバッファオーバフローをケアするのもわかるんだけど、rubyの最新版(1.8.4)を用意して無いってのはセキュリティ的には問題アリな気がする。まぁ、ruby使わなければいいのか...。

いずれにせよ、1.8.1p0でrubyが動くことは確認できたので、明日はRuby-GetText-Packageの方を見てみるとするか...。


追記