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