]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki.pm
Merge remote branch 'upstream/master' into prv/po
[ikiwiki.git] / IkiWiki.pm
index 35b38df46bbc4d71116c151688c34d982d24b34f..f9a30a202f892232dbbff2cdd32f6c8190b3eb48 100644 (file)
@@ -441,6 +441,13 @@ sub getsetup () {
                safe => 0,
                rebuild => 0,
        },
+       wrapper_background_command => {
+               type => "internal",
+               default => '',
+               description => "background shell command to run",
+               safe => 0,
+               rebuild => 0,
+       },
        gettime => {
                type => "internal",
                description => "running in gettime mode",
@@ -1074,6 +1081,13 @@ sub urlto ($$;$) {
        return beautify_urlpath($link);
 }
 
+sub isselflink ($$) {
+       my $page=shift;
+       my $link=shift;
+
+        return $page eq $link;
+}
+
 sub htmllink ($$$;@) {
        my $lpage=shift; # the page doing the linking
        my $page=shift; # the page that will contain the link (different for inline)
@@ -1099,7 +1113,7 @@ sub htmllink ($$$;@) {
        }
        
        return "<span class=\"selflink\">$linktext</span>"
-               if length $bestlink && $page eq $bestlink &&
+               if length $bestlink && isselflink($page, $bestlink) &&
                   ! defined $opts{anchor};
        
        if (! $destsources{$bestlink}) {
@@ -1389,14 +1403,16 @@ sub preprocess ($$$;$$) {
        return $content;
 }
 
-sub filter ($$$) {
+sub filter ($$$;$) {
        my $page=shift;
        my $destpage=shift;
        my $content=shift;
+       my $fullpage=shift;
+       $fullpage = 0 unless defined $fullpage;
 
        run_hooks(filter => sub {
                $content=shift->(page => $page, destpage => $destpage, 
-                       content => $content);
+                       content => $content, fullpage => $fullpage);
        });
 
        return $content;