]> sipb.mit.edu Git - ikiwiki.git/commitdiff
switch preprocess hooks to use error function
authorJoey Hess <joey@kodama.kitenet.net>
Sun, 13 Jul 2008 19:05:34 +0000 (15:05 -0400)
committerJoey Hess <joey@kodama.kitenet.net>
Sun, 13 Jul 2008 19:05:34 +0000 (15:05 -0400)
22 files changed:
IkiWiki/Plugin/aggregate.pm
IkiWiki/Plugin/conditional.pm
IkiWiki/Plugin/edittemplate.pm
IkiWiki/Plugin/fortune.pm
IkiWiki/Plugin/googlecalendar.pm
IkiWiki/Plugin/graphviz.pm
IkiWiki/Plugin/img.pm
IkiWiki/Plugin/inline.pm
IkiWiki/Plugin/linkmap.pm
IkiWiki/Plugin/meta.pm
IkiWiki/Plugin/pagetemplate.pm
IkiWiki/Plugin/pinger.pm
IkiWiki/Plugin/polygen.pm
IkiWiki/Plugin/postsparkline.pm
IkiWiki/Plugin/shortcut.pm
IkiWiki/Plugin/sparkline.pm
IkiWiki/Plugin/table.pm
IkiWiki/Plugin/template.pm
IkiWiki/Plugin/testpagespec.pm
IkiWiki/Plugin/teximg.pm
doc/plugins/write/tutorial.mdwn
po/ikiwiki.pot

index b5354a823482e243e3c7d9fdd9ec4a2db6e010eb..f618042374acc4e561be7be446b4fd0c918db316 100644 (file)
@@ -131,7 +131,7 @@ sub preprocess (@) { #{{{
 
        foreach my $required (qw{name url}) {
                if (! exists $params{$required}) {
-                       return "[[aggregate ".sprintf(gettext("missing %s parameter"), $required)."]]";
+                       error sprintf(gettext("missing %s parameter"), $required)
                }
        }
 
index 57db010544b52d436e7dac2ed42e34ef80445360..6be52eaa6d43b6cc5052a657a0bf907a2d1c78f1 100644 (file)
@@ -15,7 +15,7 @@ sub preprocess_if (@) { #{{{
 
        foreach my $param (qw{test then}) {
                if (! exists $params{$param}) {
-                       return "[[if ".sprintf(gettext('%s parameter is required'), $param)."]]";
+                       error sprintf(gettext('%s parameter is required'), $param);
                }
        }
 
index 76c1cd42aed37b24ff3f313a50c0d49cd4112aa7..d1716a31564031813e7d9f273ab7ff3ca02f3f5c 100644 (file)
@@ -38,10 +38,10 @@ sub preprocess (@) { #{{{
        return "" if $params{page} ne $params{destpage};
 
        if (! exists $params{template} || ! length($params{template})) {
-               return "[[meta ".gettext("template not specified")."]]";
+               error gettext("template not specified")
        }
        if (! exists $params{match} || ! length($params{match})) {
-               return "[[meta ".gettext("match not specified")."]]";
+               error gettext("match not specified")
        }
 
        $pagestate{$params{page}}{edittemplate}{$params{match}}=$params{template};
@@ -108,7 +108,9 @@ sub filltemplate ($$) { #{{{
                );
        };
        if ($@) {
-               return "[[pagetemplate ".gettext("failed to process")." $@]]";
+               # Indicate that the earlier preprocessor directive set 
+               # up a template that doesn't work.
+               return "[[!pagetemplate ".gettext("failed to process")." $@]]";
        }
 
        $template->param(name => $page);
index a3b13f687dac48aa37eee64ddf2eb7035dbac064..a78a73d5f1f4fa034777408896496971643d5f3b 100644 (file)
@@ -15,7 +15,7 @@ sub preprocess (@) { #{{{
        my $f = `fortune 2>/dev/null`;
 
        if ($?) {
-               return "[[".gettext("fortune failed")."]]";
+               error gettext("fortune failed");
        }
        else {
                return "<pre>$f</pre>\n";
index c6409e5e6db3732e1efd3ea4d5232b5dc66c76be..7efa1daa377538fdb2174eada674fca300701086 100644 (file)
@@ -19,7 +19,7 @@ sub preprocess (@) { #{{{
        # Avoid XSS attacks..
        my ($url)=$params{html}=~m#iframe\s+src="http://www\.google\.com/calendar/embed\?([^"<>]+)"#;
        if (! defined $url || ! length $url) {
-               return "[[googlecalendar ".gettext("failed to find url in html")."]]";
+               error gettext("failed to find url in html")
        }
        my ($height)=$params{html}=~m#height="(\d+)"#;
        my ($width)=$params{html}=~m#width="(\d+)"#;
index fe3559857a211807a133d9b95be05dafac5254b7..b13d15fa6350aadd237494350dd1c8949bf72700 100644 (file)
@@ -55,7 +55,7 @@ sub render_graph (\%) { #{{{
 
                waitpid $pid, 0;
                $SIG{PIPE}="DEFAULT";
-               return  "[[graph ".gettext("failed to run graphviz")."]]" if ($sigpipe);
+               error gettext("failed to run graphviz") if $sigpipe;
 
                if (! $params{preview}) {
                        writefile($dest, $config{destdir}, $png, 1);
@@ -82,7 +82,7 @@ sub graph (@) { #{{{
        $params{src} = "" unless defined $params{src};
        $params{type} = "digraph" unless defined $params{type};
        $params{prog} = "dot" unless defined $params{prog};
-       return "[[graph ".gettext("prog not a valid graphviz program")."]]" unless $graphviz_programs{$params{prog}};
+       error gettext("prog not a valid graphviz program") unless $graphviz_programs{$params{prog}};
 
        return render_graph(%params);
 } # }}}
index 49e1d57d61b49a3eb0faa7740a2a3a5c74fd744b..17a9367d3339145170256d44c734663f561e94ec 100644 (file)
@@ -46,14 +46,14 @@ sub preprocess (@) { #{{{
        my $base = IkiWiki::basename($file);
 
        eval q{use Image::Magick};
-       return "[[img ".gettext("Image::Magick not installed")."]]" if $@;
+       error gettext("Image::Magick is not installed") if $@;
        my $im = Image::Magick->new;
        my $imglink;
        my $r;
 
        if ($params{size} ne 'full') {
                my ($w, $h) = ($params{size} =~ /^(\d+)x(\d+)$/);
-               return "[[img ".sprintf(gettext('bad size "%s"'), $params{size})."]]"
+               error sprintf(gettext('bad size "%s"'), $params{size})
                        unless (defined $w && defined $h);
 
                my $outfile = "$config{destdir}/$dir/${w}x${h}-$base";
@@ -63,14 +63,14 @@ sub preprocess (@) { #{{{
 
                if (-e $outfile && (-M srcfile($file) >= -M $outfile)) {
                        $r = $im->Read($outfile);
-                       return "[[img ".sprintf(gettext("failed to read %s: %s"), $outfile, $r)."]]" if $r;
+                       error sprintf(gettext("failed to read %s: %s"), $outfile, $r) if $r;
                }
                else {
                        $r = $im->Read(srcfile($file));
-                       return "[[img ".sprintf(gettext("failed to read %s: %s"), $file, $r)."]]" if $r;
+                       error sprintf(gettext("failed to read %s: %s"), $file, $r) if $r;
 
                        $r = $im->Resize(geometry => "${w}x${h}");
-                       return "[[img ".sprintf(gettext("failed to resize: %s"), $r)."]]" if $r;
+                       error sprintf(gettext("failed to resize: %s"), $r) if $r;
 
                        # don't actually write file in preview mode
                        if (! $params{preview}) {
@@ -84,7 +84,7 @@ sub preprocess (@) { #{{{
        }
        else {
                $r = $im->Read(srcfile($file));
-               return "[[img ".sprintf(gettext("failed to read %s: %s"), $file, $r)."]]" if $r;
+               error sprintf(gettext("failed to read %s: %s"), $file, $r) if $r;
                $imglink = $file;
        }
 
@@ -101,7 +101,7 @@ sub preprocess (@) { #{{{
        }
 
        if (! defined($im->Get("width")) || ! defined($im->Get("height"))) {
-               return "[[img ".sprintf(gettext("failed to determine size of image %s"), $file)."]]";
+               error sprintf(gettext("failed to determine size of image %s"), $file)
        }
 
        my $imgtag='<img src="'.$imgurl.
index 32915c342d33898a68e8cf8b3a2a48845eeb0311..5517e3c9434e9d483f343e8c676db6da42efcda7 100644 (file)
@@ -98,7 +98,7 @@ sub preprocess_inline (@) { #{{{
        my %params=@_;
        
        if (! exists $params{pages}) {
-               return "[[inline ".gettext("missing pages parameter")."]]";
+               error gettext("missing pages parameter");
        }
        my $raw=yesno($params{raw});
        my $archive=yesno($params{archive});
index 82b38f4cb79909c449e29bd8a68340db9d343bde..ab199b7238511b74b36255363809d902ef773eb9 100644 (file)
@@ -94,9 +94,7 @@ sub genmap ($) { #{{{
        
        waitpid $pid, 0;
        $SIG{PIPE}="DEFAULT";
-       if ($sigpipe) {
-               return  "[[linkmap ".gettext("failed to run dot")."]]";
-       }
+       error gettext("failed to run dot") if $sigpipe;
 
        return $ret;
 } #}}}
index d00b6854f698126e6b6548fc0705deefc0f6f748..4e0e9e8c72162d93e99cf874da29672ff1b11ab6 100644 (file)
@@ -138,7 +138,7 @@ sub preprocess (@) { #{{{
                # editable page as a stylesheet
                my $stylesheet=bestlink($page, $value.".css");
                if (! length $stylesheet) {
-                       return "[[meta ".gettext("stylesheet not found")."]]";
+                       error gettext("stylesheet not found")
                }
                push @{$metaheaders{$page}}, '<link href="'.urlto($stylesheet, $page).
                        '" rel="'.encode_entities($rel).
@@ -172,7 +172,7 @@ sub preprocess (@) { #{{{
                        add_depends($page, $redir_page);
                        my $link=bestlink($page, $redir_page);
                        if (! length $link) {
-                               return "[[meta ".gettext("redir page not found")."]]";
+                               error gettext("redir page not found")
                        }
 
                        $value=urlto($link, $page);
@@ -185,7 +185,7 @@ sub preprocess (@) { #{{{
                        my %seen;
                        while (exists $pagestate{$at}{meta}{redir}) {
                                if ($seen{$at}) {
-                                       return "[[meta ".gettext("redir cycle is not allowed")."]]";
+                                       error gettext("redir cycle is not allowed")
                                }
                                $seen{$at}=1;
                                $at=$pagestate{$at}{meta}{redir};
index 69a2433a8ffb1d74119762c8d9aeae3e3cedae01..205f5a9d77b13ce34b6b30d7d528f7658315df09 100644 (file)
@@ -18,7 +18,7 @@ sub preprocess (@) { #{{{
        if (! exists $params{template} ||
            $params{template} !~ /^[-A-Za-z0-9._+]+$/ ||
            ! defined IkiWiki::template_file($params{template})) {
-                return "[[pagetemplate ".gettext("bad or missing template")."]]";
+                error gettext("bad or missing template")
        }
 
        if ($params{page} eq $params{destpage}) {
index c6fa76e3f8fde2652e7703e50b84f03f1a1ff829..614d428853c7d0d2efbaa74987edc97e6643a452 100644 (file)
@@ -34,7 +34,7 @@ sub needsbuild (@) { #{{{
 sub preprocess (@) { #{{{
        my %params=@_;
        if (! exists $params{from} || ! exists $params{to}) {
-               return "[[ping ".gettext("requires 'from' and 'to' parameters")."]]";
+               error gettext("requires 'from' and 'to' parameters");
        }
        if ($params{from} eq $config{url}) {
                $pagestate{$params{destpage}}{pinger}{$params{to}}=1;
index 5208a44ec5c9a342ff798a3ec8401f240f8562ba..70378cf1b7102cf383e6839cb6dfd4d64ddf2a02 100644 (file)
@@ -29,7 +29,7 @@ sub preprocess (@) { #{{{
 
        my $grmfile = '/usr/share/polygen/ita/polygen.grm';
        if (! -d '/usr/share/polygen') {
-               return "[[".gettext("polygen not installed")."]]";
+               error gettext("polygen not installed");
        }
        find({wanted => sub {
                        if (substr($File::Find::name, -length($grammar)) eq $grammar) {
@@ -48,7 +48,7 @@ sub preprocess (@) { #{{{
        }
 
        if ($?) {
-               $res="[[".gettext("polygen failed")."]]";
+               error gettext("command failed");
        }
 
        # Strip trailing spaces and newlines so that we flow well with the
index 9e885741e073bc4ded2e3947366ea6265d8249db..6fc96f8b343cbca8eeeb893c41e2569a962d915c 100644 (file)
@@ -29,14 +29,14 @@ sub preprocess (@) { #{{{
        }
 
        if (! exists $params{formula}) {
-               return "[[postsparkline ".gettext("missing formula")."]]";
+               error gettext("missing formula")
        }
        my $formula=$params{formula};
        $formula=~s/[^a-zA-Z0-9]*//g;
        $formula=IkiWiki::possibly_foolish_untaint($formula);
        if (! length $formula ||
            ! IkiWiki::Plugin::postsparkline::formula->can($formula)) {
-               return "[[postsparkline ".gettext("unknown formula")."]]";
+               error gettext("unknown formula");
        }
 
        add_depends($params{page}, $params{pages});
@@ -53,7 +53,7 @@ sub preprocess (@) { #{{{
 
        my @data=eval qq{IkiWiki::Plugin::postsparkline::formula::$formula(\\\%params, \@list)};
        if ($@) {
-               return "[[postsparkline error $@]]";
+               error $@;
        }
 
        if (! @data) {
index f1a38ea48070ed255ea8046e8b4d5c1dd6787af3..8df60cfe2a34b5e428e1eafcae88ac9c71a3c0ed 100644 (file)
@@ -24,7 +24,7 @@ sub preprocess_shortcut (@) { #{{{
        my %params=@_;
 
        if (! defined $params{name} || ! defined $params{url}) {
-               return "[[shortcut ".gettext("missing name or url parameter")."]]";
+               error gettext("missing name or url parameter");
        }
 
        hook(type => "preprocess", no_override => 1, id => $params{name},
index 69b3512c27e708d1155fab842e76b46b7dbff9f5..bcff46aeb47ed8156b8d866f348ffab29a7a0f23 100644 (file)
@@ -60,13 +60,13 @@ sub preprocess (@) { #{{{
                        }
                }
                elsif (! length $value) {
-                       return "[[sparkline ".gettext("parse error")." \"$key\"]]";
+                       error gettext("parse error")." \"$key\"";
                }
                elsif ($key eq 'featurepoint') {
                        my ($x, $y, $color, $diameter, $text, $location)=
                                split(/\s*,\s*/, $value);
                        if (! defined $diameter || $diameter < 0) {
-                               return "[[sparkline ".gettext("bad featurepoint diameter")."]]";
+                               error gettext("bad featurepoint diameter");
                        }
                        $x=int($x);
                        $y=int($y);
@@ -76,7 +76,7 @@ sub preprocess (@) { #{{{
                        if (defined $location) {
                                $location=$locmap{$location};
                                if (! defined $location) {
-                                       return "[[sparkline ".gettext("bad featurepoint location")."]]";
+                                       error gettext("bad featurepoint location");
                                }
                        }
                        $php.=qq{\$sparkline->SetFeaturePoint($x, $y, '$color', $diameter};
@@ -87,23 +87,23 @@ sub preprocess (@) { #{{{
        }
 
        if ($c eq 0) {
-               return "[[sparkline ".gettext("missing values")."]]";
+               error gettext("missing values");
        }
 
        my $height=int($params{height} || 20);
        if ($height < 2 || $height > 100) {
-               return "[[sparkline ".gettext("bad height value")."]]";
+               error gettext("bad height value");
        }
        if ($style eq "Bar") {
                $php.=qq{\$sparkline->Render($height);\n};
        }
        else {
                if (! exists $params{width}) {
-                       return "[[sparkline ".gettext("missing width parameter")."]]";
+                       error gettext("missing width parameter");
                }
                my $width=int($params{width});
                if ($width < 2 || $width > 1024) {
-                       return "[[sparkline ".gettext("bad width value")."]]";
+                       error gettext("bad width value");
                }
                $php.=qq{\$sparkline->RenderResampled($width, $height);\n};
        }
@@ -141,7 +141,7 @@ sub preprocess (@) { #{{{
                waitpid $pid, 0;
                $SIG{PIPE}="DEFAULT";
                if ($sigpipe) {
-                       return  "[[sparkline ".gettext("failed to run php")."]]";
+                       error gettext("failed to run php");
                }
 
                if (! $params{preview}) {
index 11474c8f08412c701a58f60ce350888f84a1057a..892ea182e267229531db7e6b64a4067a6294b6a1 100644 (file)
@@ -19,7 +19,7 @@ sub preprocess (@) { #{{{
 
        if (exists $params{file}) {
                if (! $pagesources{$params{file}}) {
-                       return "[[table ".gettext("cannot find file")."]]";
+                       error gettext("cannot find file");
                }
                $params{data} = readfile(srcfile($params{file}));
                add_depends($params{page}, $params{file});
@@ -61,7 +61,7 @@ sub preprocess (@) { #{{{
                        defined $params{delimiter} ? $params{delimiter} : "|",);
        }
        else {
-               return "[[table ".gettext("unknown data format")."]]";
+               error gettext("unknown data format");
        }
 
        my $header;
@@ -69,7 +69,7 @@ sub preprocess (@) { #{{{
                $header=shift @data;
        }
        if (! @data) {
-               return "[[table ".gettext("empty data")."]]";
+               error gettext("empty data");
        }
 
        my @lines;
index aa1f57c0703ebcea645bb8818ef779ffaa520d1c..c33dbbb83b8d1623ffd1348667247ec3be04f082 100644 (file)
@@ -16,7 +16,7 @@ sub preprocess (@) { #{{{
        my %params=@_;
 
        if (! exists $params{id}) {
-               return "[[template ".gettext("missing id parameter")."]]";
+               error gettext("missing id parameter")
        }
 
        my $template_page="templates/$params{id}";
@@ -42,7 +42,7 @@ sub preprocess (@) { #{{{
                );
        };
        if ($@) {
-               return "[[template ".gettext("failed to process:")." $@]]";
+               error gettext("failed to process:")." $@"
        }
 
        $params{basename}=IkiWiki::basename($params{page});
index f9ec90d8791f8b5e6aa422ceb527fe272bfea9df..4faef7be197a8b20362132521ae67de2976a3ad8 100644 (file)
@@ -14,7 +14,7 @@ sub preprocess (@) { #{{{
        
        foreach my $param (qw{match pagespec}) {
                if (! exists $params{$param}) {
-                       return "[[testpagespec $param parameter is required]]";
+                       error sprintf(gettext("%s parameter is required"), $param);
                }
        }
 
index 8c3e88c6974a8f2d5aa00fc119ba1f8941f4c943..6a6bdd4fa404739789eadd065cad4c8c34e4082f 100644 (file)
@@ -27,14 +27,14 @@ sub preprocess (@) { #{{{
        
        my $code = $params{code};
        if (! defined $code && ! length $code) {
-               return "[[teximg ".gettext("missing tex code"). "]]";
+               error gettext("missing tex code");
        }
 
        if (check($code)) {
                return create($code, check_height($height), \%params);
        }
        else {
-               return "[[teximg ".gettext("code includes disallowed latex commands"). "]]";
+               error gettext("code includes disallowed latex commands")
        }
 } #}}}
 
@@ -85,7 +85,7 @@ sub create ($$$) { #{{{
                        .qq{" class="teximg" />};
        }
        else {
-               return qq{[[teximg <a href="$logurl">}.gettext("failed to generate image from code")."</a>]]";
+               error qq{<a href="$logurl">}.gettext("failed to generate image from code")."</a>";
        }
 } #}}}
 
index 8b12fd183c01f1bec27b37bb549bf06f34a1d1be..94b72c763c565ddc86efe1e48d0c700a7d5ee62f 100644 (file)
@@ -169,7 +169,7 @@ be a guard on how high it will go.
                }
                my $num=$last{$page}++;
                if ($num > 25) {
-                       return "[[fib will only calculate the first 25 numbers in the sequence]]";
+                       error "can only calculate the first 25 numbers in the sequence";
                }
                return fib($num);
        }
@@ -182,7 +182,7 @@ does for numbers less than 1. Or for any number that's not an integer. In
 either case, it will run forever. Here's one way to fix that:
 
                if (int($num) != $num || $num < 1) {
-                       return "[[fib positive integers only, please]]";
+                       error "positive integers only, please";
                }
 
 As these security problems have demonstrated, even a simple input from the
index f94f5bdd3b2b9737204ed333a31098c37e0c4cf2..71cddfdd0348fe5144db3b8ebb541d1236c737c7 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-07-12 23:07-0400\n"
+"POT-Creation-Date: 2008-07-13 15:04-0400\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -71,7 +71,7 @@ msgstr ""
 msgid "You are banned."
 msgstr ""
 
-#: ../IkiWiki/CGI.pm:758 ../IkiWiki/CGI.pm:759
+#: ../IkiWiki/CGI.pm:758 ../IkiWiki/CGI.pm:759 ../IkiWiki.pm:782
 msgid "Error"
 msgstr ""
 
@@ -194,7 +194,7 @@ msgstr ""
 msgid "There are no broken links!"
 msgstr ""
 
-#: ../IkiWiki/Plugin/conditional.pm:18
+#: ../IkiWiki/Plugin/conditional.pm:18 ../IkiWiki/Plugin/testpagespec.pm:17
 #, perl-format
 msgid "%s parameter is required"
 msgstr ""
@@ -212,7 +212,7 @@ msgstr ""
 msgid "edittemplate %s registered for %s"
 msgstr ""
 
-#: ../IkiWiki/Plugin/edittemplate.pm:111
+#: ../IkiWiki/Plugin/edittemplate.pm:113
 msgid "failed to process"
 msgstr ""
 
@@ -233,7 +233,7 @@ msgid "prog not a valid graphviz program"
 msgstr ""
 
 #: ../IkiWiki/Plugin/img.pm:49
-msgid "Image::Magick not installed"
+msgid "Image::Magick is not installed"
 msgstr ""
 
 #: ../IkiWiki/Plugin/img.pm:56
@@ -287,7 +287,7 @@ msgstr ""
 msgid "RPC::XML::Client not found, not pinging"
 msgstr ""
 
-#: ../IkiWiki/Plugin/linkmap.pm:98
+#: ../IkiWiki/Plugin/linkmap.pm:97
 msgid "failed to run dot"
 msgstr ""
 
@@ -408,7 +408,7 @@ msgid "polygen not installed"
 msgstr ""
 
 #: ../IkiWiki/Plugin/polygen.pm:51
-msgid "polygen failed"
+msgid "command failed"
 msgstr ""
 
 #: ../IkiWiki/Plugin/postsparkline.pm:32
@@ -612,47 +612,47 @@ msgstr ""
 msgid "getctime not implemented"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:286 ../IkiWiki/Render.pm:307
+#: ../IkiWiki/Render.pm:290 ../IkiWiki/Render.pm:311
 #, perl-format
 msgid "skipping bad filename %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:361
+#: ../IkiWiki/Render.pm:365
 #, perl-format
 msgid "removing old page %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:401
+#: ../IkiWiki/Render.pm:405
 #, perl-format
 msgid "scanning %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:406
+#: ../IkiWiki/Render.pm:410
 #, perl-format
 msgid "rendering %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:427
+#: ../IkiWiki/Render.pm:431
 #, perl-format
 msgid "rendering %s, which links to %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:448
+#: ../IkiWiki/Render.pm:452
 #, perl-format
 msgid "rendering %s, which depends on %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:487
+#: ../IkiWiki/Render.pm:491
 #, perl-format
 msgid "rendering %s, to update its backlinks"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:499
+#: ../IkiWiki/Render.pm:503
 #, perl-format
 msgid "removing %s, no longer rendered by %s"
 msgstr ""
 
-#: ../IkiWiki/Render.pm:523
+#: ../IkiWiki/Render.pm:527
 #, perl-format
 msgid "ikiwiki: cannot render %s"
 msgstr ""
@@ -729,6 +729,6 @@ msgstr ""
 msgid "%s preprocessing loop detected on %s at depth %i"
 msgstr ""
 
-#: ../IkiWiki.pm:1203
+#: ../IkiWiki.pm:1212
 msgid "yes"
 msgstr ""