何だか知らないけど 文字列から Source をそれっぽくやるハック が XREA の鯖上ではできない。uninitialized constant REXML::Parsers::TreeParser というエラーが出てしまう。ローカルだと上手くいくんだけどなぁ……意味わからん。なんでだろう?

ってまさかと思ったら site_ruby に新しい rexml が入ってた。めんどくさ……

build メソッドを Ruby デフォルトについてくるほう (の document.rb) に書き換えた。動いてるもより。これで view-image でファイルリストも RDF として渡すように。RDF to XHTML が汚いけど仕方ない。しばらくやりたくない。

  1. トップ
  2. web
  3. REXML の謎。

Ruby の elsif が嫌い。elsif 書くなら case & when 使う。なんか elsif ってソースのバランスが変。

if a =~ /foo/
# do
elsif a =~ /bar/
# do
elsif a =~ /baz/
# do
end
case
when a =~ /foo/
# do
when a =~ /bar/
# do
when a =~ /baz/
# do
end
  1. トップ
  2. prog
  3. Ruby における elsif

笑っていいとも見てたら寝てて、気付いたら6時。

変な夢を見た。茶色い変態でデブなおっさん。バレーボールが得意で厳つい数学教師。校庭に入る口実を作るためにソフトボールを投げ込む生徒。途中で海を見た気がする。あんまり覚えてない。

  1. トップ
  2. self
  3. 夢。6時間と学校

思いつきでごにょったら Ruby のオブジェクトとして再現できた。めでたしめでたし。んでごちゃってみたけど用途すくな。読み込むだけだからなぁ……

  1. トップ
  2. web
  3. CSS/Ruby
  1. トップ
  2. prog
  3. CSS/Ruby

スキャナ&パーサーだけで力尽きた…… racc css.y

ホントはアクション部分も少し書いたんだけど、どうも上手くいかないので削除って、とりあえず分離させておくことにしてみた。パーサーから構文木作るところって普通はどういう風に実装するだろう。再帰定義の部分で汚くなっちゃうんだよなぁ。スーパー簡単なサンプルが欲しい……

あーあと、Invalid なものが突っ込まれたとき、その部分を無視してパースを続ける、っていうのはどうやって書くんだろう。謎ががががが。

パースエラーは error に還元される。だから、右辺の正しい場所に error を置いとけば無視できると。CSS の ruleset を処理中にパースエラーが起きたら ruleset : error とか書いておけばそこを飛ばして次のやつを探す?みたいな? 適当にやってみよう。

error トークン書くと on_error 呼ばれないのか。なんかどういう風にエラーを処理するのかわからん。

  1. トップ
  2. web
  3. CSS/Ruby
  1. トップ
  2. prog
  3. CSS/Ruby

なんだか今度は Done までいかずに死んだらしくインデックスが壊れた (?) らしい。新しいファイルが追加されてなかった。インデックス削除したらなおった。

正確には追加されてるみたいなんだけど、検索すると別の文書がヒットする。ポインタ (?) がズレてる感じ。二回目だ……

  1. トップ
  2. web
  3. Namazu
  1. トップ
  2. soft
  3. Namazu