2002-01-19(Sat) この日を編集
_ Rubyでover 2GBできない?
昨日こけたやつだが、実はデータベースのexportファイルが2GBを超えたらgzipじゃなくてcompressするようにするやつだったのだが、その判断ロジック自体がこけよった(--;。man stat すると、表現しきれないときはOVERFLOWで返すんだそうで、きっちりそのとおりに。しょうがないんで、OVERFLOWするか、閾値を超えるかで判断させることにした。 テストついでにいろいろやってみたのだが、- open("tmp.txt", 'w') do |f| print 'x' end では2GBを超えようとするとこける
- open("tmp.txt") do |f| puts f.type endも駄目
2003-01-19(Sun) -- この日を編集
_ 今日の天気
曇り...ちょっと雨が降ったみたい。
_ www.jin.gr.jp 効果
アンテナに補足されたので、一気にリンク元の数が増えた♪うれしいやら怖いやら。
_ RWiki2 on FreeBSD4-stable with ports-current
RWiki2を試してみる。基本的には、どころか rd/install.ja の通りで動きました。せっかく FreeBSD なのでできるだけportsを利用しましたけど。
以下もちろん全部は不要ですが、とりあえず動いたマシンの portsversion -v | grep ruby
xelvis# portversion -v | grep ^ruby ruby-1.6.8 = up-to-date with port ruby-acl-1.0.1 = up-to-date with port ruby-amrita-1.0.2 = up-to-date with port ruby-amstd-2.0.0 = up-to-date with port ruby-bdb1-0.1.8 = up-to-date with port ruby-dbd_pg-0.0.18 = up-to-date with port ruby-dbi-0.0.18 = up-to-date with port ruby-devel-logger-1.0.1 = up-to-date with port ruby-drb-1.3.8 = up-to-date with port ruby-erb-1.4.3 = up-to-date with port ruby-interbase-0.05 = up-to-date with port ruby-postgres-0.7.1 = up-to-date with port ruby-racc-1.4.3 = up-to-date with port ruby-rdoc-0.0.0.b2 = up-to-date with port ruby-rdtool-0.6.12_1 = up-to-date with port ruby-shim-ruby18-1.8.0.p1 = up-to-date with port ruby-tmail-0.10.6_1 = up-to-date with port ruby-webrick-1.2.3 = up-to-date with port
_ ERB2はまだportsにないみたいなので、~/lib/rubyに入れる。install.ja通り、tar.gz を展開してから、cp -pr lib/* ~/lib/ruby
RWiki2はライブラリ化されてるので、これもインストール必要。これも ~/lib/rubyに入れる。 install.ja とおり、cp -pr lib/* ~/lib/ruby
interface/rw-cgi.rb を cgi で動くところにコピーして、chmod など。ポート番号はとりあえずデフォルトでサーバ側と一致してるので問題なければそのまま。
cd site; ruby -d -KE rwiki.rb としてから、rw-cgi.rbを起動。ふむ。動く。
_ RWiki2 sample-application storycard
続いて sample/story を動かしてみる。えーとREADME...ないの(;_;
ソースをざざっと見た感じ、story-rwiki.rbがサーバで別立てにするみたいなので、story-config.rbのDRB_URIのポートを書き換えて、ruby -d -KE -I ~/lib/ruby story-rwiki.rb とする。
先のrw-cgi.rbをリネームコピーして、最後のポート番号だけ書き換えて実行...動いた。
カードを追加したあと、[home]に戻ろうとしたら、突然InternalServerErrorに。ERbLightのままになってるみたいなので、2箇所書き換え。
diff -u story/story-rwiki.rb /home/kog/rwiki-story/story-rwiki.rb --- story/story-rwiki.rb Tue Sep 3 02:53:19 2002 +++ /home/kog/rwiki-story/story-rwiki.rb Sun Jan 19 16:10:24 2003 @@ -1,4 +1,4 @@ -#!/usr/local/bin/ruby +#!/usr/local/bin/ruby -I /home/kog/lib/ruby # story-rwiki.rb # # Copyright (c) 2002 Masatoshi SEKI diff -u story/storycard.rb /home/kog/rwiki-story/storycard.rb --- story/storycard.rb Tue Sep 3 02:53:19 2002 +++ /home/kog/rwiki-story/storycard.rb Sun Jan 19 16:26:17 2003 @@ -100,7 +100,7 @@ def add_item(name) pg = @book[name] - pg.src = ERbLight.new(@item_tmpl).result(binding) + pg.src = ERB.new(@item_tmpl).result(binding) end def empty_story?(story) @@ -159,10 +159,11 @@ else name = @base_name end +p name add_item(name) item.unshift("* ((<#{name}>)) empty - empty item") - @idx_pg.src = ERbLight.new(@index_tmpl).result(binding) + @idx_pg.src = ERB.new(@index_tmpl).result(binding) end def desc_page
_ CVS版ではsample/story/* -> lib/rwiki/* になっている様子。CVS版つかってみようかしらん。
$ cd ~ $ cvs -d kog@vfr:/home/ruby/src -d rwiki2 co app/rwiki $ cd rwiki2 $ ruby install.rb -d ~/lib/ruby $ cd ~/rwiki2/site; vi rw-config.rb $ cd ~/rwiki2/interface; vi rw-cgi.rb $ cp rw-cgi.rb ~/public_html $ chmod 755 ~/public_html/rw-cgi.rb $ cd ~/rwiki2/site $ ruby -d -I ~/lib/ruby -KE fat-rwiki.rb
_ 動いた動いた♪。rw-cgi.rbの変更箇所も書いとこう。
cvs server: Diffing . Index: rw-cgi.rb =================================================================== RCS file: /home/ruby/src/app/rwiki/interface/rw-cgi.rb,v retrieving revision 1.3 diff -u -r1.3 rw-cgi.rb --- rw-cgi.rb 18 Jan 2003 06:53:31 -0000 1.3 +++ rw-cgi.rb 19 Jan 2003 10:55:39 -0000 @@ -1,4 +1,4 @@ -#!/usr/local/bin/ruby +#!/usr/local/bin/ruby -I /home/kog/lib/ruby # rw-cgi.rb -- RWiki CGI interface. #
_ これってstory拡張とか、bts拡張とかってどうやって使うんだろう(?_?
_ 咳 [そのうち使い方を書きます。もうちょっと待って下さい。]
_ kog [期待してます!わくわく。]