blosxomのタグ付け素敵プラグインtaggingは結局、表示するときに集計する方法で解決しました。
foreach my $category (keys %$tags_list_per_category){ #if($path eq $category){ if($category =~ /$path/){ foreach my $tag (sort keys %{$tags_list_per_category->{$category}}){ if(($find_tag and $tag =~ /^$find_tag/i) or !$find_tag){ $merge_tags_list->{$tag} += $tags_list_per_category->{$category}->{$tag}; } } } } foreach my $mergetag (sort keys %$merge_tags_list){ if(($find_tag and $mergetag =~ /^$find_tag/i) or !$find_tag){ my $encoded_tag = $mergetag; $encoded_tag =~ s/(\W)/sprintf("%%%02X", ord($1))/ego; $list .= "<a href='$url?tag=$encoded_tag'>$mergetag ($merge_tags_list->{$mergetag}) \n"; } }
コレだとせっかくあらかじめ集計しているのに、呼び出されるたびに計算しなおすのでイマイチかもしれん。もうちょいいい方法あると思うんだけど、やっつけってことで。
そして、Storableモジュールの使い方は実用Perlプログラミングに書いてあったのでよく読む。リファレンスとOOPのあたりだけかなと思っていたけど意外に面白いのかも(というより今まで面白さがわからなかっただけか?)。
実用Perlプログラミング | |
スリラム スリニバサン Sriram Srinivasan 須田 隆久 オライリー・ジャパン 1998-11 売り上げランキング : 266,644 おすすめ平均 言語ハッカー向けの本かも。 Amazonで詳しく見る by G-Tools |