]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/Render.pm
html5 option
[ikiwiki.git] / IkiWiki / Render.pm
index 50af2bdec2bfc062de30e0e9571f77f5d11c7b9d..5923f5e74459e53933cc6ee2112592449e2f299a 100644 (file)
@@ -138,6 +138,7 @@ sub genpage ($$) {
                mtime => displaytime($pagemtime{$page}),
                ctime => displaytime($pagectime{$page}),
                baseurl => baseurl($page),
+               html5 => $config{html5},
        );
 
        run_hooks(pagetemplate => sub {
@@ -409,7 +410,7 @@ sub find_del_files ($) {
        my @del;
        my @internal_del;
 
-       foreach my $page (keys %pagemtime) {
+       foreach my $page (keys %pagesources) {
                if (! $pages->{$page}) {
                        if (isinternal($page)) {
                                push @internal_del, $pagesources{$page};
@@ -592,15 +593,20 @@ sub render_dependent ($$$$$$$) {
        my %lc_changed = map { lc(pagename($_)) => 1 } @changed;
        my %lc_exists_changed = map { lc(pagename($_)) => 1 } @exists_changed;
 
-       my $mass_reason;
-       foreach my $p ("page.tmpl", keys %{$depends_simple{""}}) {
-               $mass_reason=$p if $rendered{$p};
+       foreach my $p ("templates/page.tmpl", keys %{$depends_simple{""}}) {
+               if ($rendered{$p} || grep { $_ eq $p } @$del) {
+                       foreach my $f (@$files) {
+                               next if $rendered{$f};
+                               render($f, sprintf(gettext("building %s, which depends on %s"), $f, $p));
+                       }
+                       return 0;
+               }
        }
         
        foreach my $f (@$files) {
                next if $rendered{$f};
                my $p=pagename($f);
-               my $reason = $mass_reason;
+               my $reason = undef;
 
                if (exists $depends_simple{$p} && ! defined $reason) {
                        foreach my $d (keys %{$depends_simple{$p}}) {