Ruby言語やLinuxのネタが多いです。
March 29, 2002 今日から3連休! [おもひで]
■ [Misc] 久しぶりの年休
特別休暇というのを取った。年度をまたいで持ち越すことができないのでせめて1日くらいはというわけ。それでもまだ数日分は取れたはずなのでちょっと損した気分だ。ホントお金に換えてくんないかな〜(昔はそういうところもあったみたいだけど)。
■ [tDiary] Yet Another Squeeze
yasqueeze.rbをバージョンアップしてCVSに入れときました。プラグイン・CGIとして使用する場合は、オプションの設定をtdiary.confの@optionsで行うようになったのですっきりしたと思います。それから、add_update_proc do 〜 endにも対応しました。
■ 機能的には大きな変更は無いのであわててバージョンアップする必要はありません(というかtDiary-1.3.xでは使えなくなりました)。
■ [Misc] XREA + tDiary + Namazu + mod_rewrite
たださんところを参考にLinuxビボ〜ろくもmod_rewrite対応してみた。これでhttp://ponx.s5.xrea.com/bibo/20020329.htmlとかでアクセスできるようになった。
RewriteEngine on RewriteBase /bibo ← ここは、tDiaryのホーム(index.rbが置いてある仮想ディレクトリ) RewriteRule ([0-9]+)\.html$ index.rb?date=$1
■ これで、http://ponx.s5.xrea.com/bibo/20020329.htmlとかでアクセスできるようになっているはずなので確認してみる。
■ Namazuの検索結果の仮想ディレクトリも変更しておく。.namzurcをXREA上のnamazu.cgiがあるディレクトリに置く。
Index /virtual/hoge/namazu/index/ Replace /virtual/hoge/tdiary/html/(\d\d\d\d)/(\d\d\d\d) http://hoge.s1.xrea.com/bibo/\1\2.html Lang ja
■ anchor.rbって標準添付でも良いような気がする...(ぼそっ)。
■ [tDiary] fortune.rb
さっそくZnZさんからコメント。赤ラクダ本のってどんなコードです? 持ってないんです(^^;)。
Rubyで書いてくれたりしたらそのままいただきますが、なんて言ってみたりするテスト。
#ちなみに、私の予想だともう一人くらいクールなコードを書いてくれる人がいそうな(^^;)。

anchor.rbってRewriteRuleに依存するので、標準添付は難しいかもしれませんね。
他のRewriteRuleにしたい人もいるでしょうし。
こんなん:
res = ""
ARGVF.each {|ln| res = ln if rand($.) < 1}
$. は読んでる行の番号.ちゃんとどの行が選ばれる確率も
1/n; n == ファイルの行数になる.
i <= k 行目が 1/k の確率で選ばれている時,
k+1 行目が選ばれる確率 == rand(k+1) < 1 である確率 == 1/(k+1)
i 行目が選ばれる確率 == 1/k*(rand(k+1) >= 1 である確率) == 1/(k+1)
整数 k にたいして rand(k) は 0 -- k-1 を返すことに注意
っていうことで.
きたさん:うーん、おっしゃるとおりですが、結構、決めうちでも良いような...。それこそ、独自にやりたい人は自分で実装すれば良いですし...。でも、確かにRewriteRuleが別れてしまっているので気持ち悪いですね。
kjanaさん:ありがとうございます。なるほど勉強になります。
でも、これって1行しか対応してないですよね...。fortuneの辞書フォーマットもこれでいけるのかな...。