chalow では,[2006-05-05-1] のように書くと他の記事が参照できて,逆に参照された側の記事の一番下には参照元一覧が表示される (デフォルトのテンプレートだと「Referrer (Inside)」).後で読むときにとても便利なので使いまくり.
参照記事に飛ぶ場合は,文脈から飛ぶ先の内容がある程度予測できるのだけど,Referrer (Inside) 一覧の方は,クリックしてみるまで内容が分からない.ここに記事タイトルでも表示されてると便利かな,などとふと思ったので試してみた.
まず parse_entry() の for ループの中,「ハッシュに格納」と「日付リンク情報の格納」の位置を入れ換えて,後者を次のように変更.入れ換えるのは,$ent->{$i}{h} を使いたいから.($ent->{$i}{ho} でもいいのかも知れないけど,念のため)
# ハッシュに格納 $ent->{$i}{h} = okikae($ent->{$i}{ho}); $ent->{$i}{c} = okikae($c); # 日付リンク情報の格納 while ($c =~ /\[((\d\d\d\d-\d\d)-\d\d(-\d+)?)\]/g) { $inside_ref{$1}{"$ymd-$i"} = $ent->{$i}{h}; }
で,get_inside_ref() を以下のように変更.(変わってるのは return map ... の行だけ)
sub get_inside_ref { my ($id) = @_; if (defined $inside_ref{"$id"}) { return map { "<br> " . datestr2anchor("[".$_."]") . " " . $inside_ref{"$id"}{"$_"} } (sort {$b cmp $a} keys %{$inside_ref{"$id"}}); } return (); }
というわけでこんな感じ↓の表示になるはず.これは自己参照だけど.
最終更新時間: 2009-01-04 15:31