X-Git-Url: https://scripts.mit.edu/gitweb/www/ikiwiki.git/blobdiff_plain/e4cd168ebedd95585290c97ff42234344bfed46c..b6e589c9a484a60b804b9208b41209ca05101682:/IkiWiki.pm?ds=sidebyside diff --git a/IkiWiki.pm b/IkiWiki.pm index 35fee1aa7..5563a03af 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -661,9 +661,15 @@ sub pagetype ($) { return; } +my %pagename_cache; + sub pagename ($) { my $file=shift; + if (exists $pagename_cache{$file}) { + return $pagename_cache{$file}; + } + my $type=pagetype($file); my $page=$file; $page=~s/\Q.$type\E*$// @@ -672,6 +678,8 @@ sub pagename ($) { if ($config{indexpages} && $page=~/(.*)\/index$/) { $page=$1; } + + $pagename_cache{$file} = $page; return $page; } @@ -1730,15 +1738,6 @@ sub add_depends ($$) { my $page=shift; my $pagespec=shift; - if (ref $pagespec eq 'ARRAY') { - foreach my $ps (@$pagespec) { - if (pagespec_valid($ps)) { - $depends{$page}{$ps} = 1; - } - } - return; - } - return unless pagespec_valid($pagespec); $depends{$page}{$pagespec} = 1; @@ -1825,14 +1824,6 @@ sub add_link ($$) { unless grep { $_ eq $link } @{$links{$page}}; } -sub pagespec_merge ($$) { - my $a=shift; - my $b=shift; - - return $a if $a eq $b; - return "($a) or ($b)"; -} - sub pagespec_translate ($) { my $spec=shift;