X-Git-Url: http://git.tremily.us/?p=ikiwiki.git;a=blobdiff_plain;f=ikiwiki;h=53a86c1edc3ef5f3d4498fa2a55d559e8887df3a;hp=add62773966dbe048ecb6ce78b164bb732ff43a8;hb=7f8efe4524fb8cc2066e07c4f9fbad3b14fbccfb;hpb=1c4d4e1e0474b6ffd3b8e0213d8a4804a3597e34 diff --git a/ikiwiki b/ikiwiki index add627739..53a86c1ed 100755 --- a/ikiwiki +++ b/ikiwiki @@ -69,11 +69,8 @@ sub error { #{{{ if ($config{cgi}) { print "Content-type: text/html\n\n"; print misctemplate("Error", "

Error: @_

"); - exit 1; - } - else { - die @_; } + die @_; } #}}} sub debug ($) { #{{{ @@ -213,9 +210,15 @@ sub htmllink { #{{{ my $page=shift; my $link=shift; my $noimageinline=shift; # don't turn links into inline html images - my $createsubpage=shift; # force creation of a subpage if page DNE + my $forcesubpage=shift; # force a link to a subpage - my $bestlink=bestlink($page, $link); + my $bestlink; + if (! $forcesubpage) { + $bestlink=bestlink($page, $link); + } + else { + $bestlink="$page/".lc($link); + } return $link if length $bestlink && $page eq $bestlink; @@ -227,12 +230,7 @@ sub htmllink { #{{{ $bestlink=htmlpage($bestlink); } if (! grep { $_ eq $bestlink } values %renderedfiles) { - if (! $createsubpage) { - return "?$link" - } - else { - return "?$link" - } + return "?$link" } $bestlink=File::Spec->abs2rel($bestlink, dirname($page)); @@ -307,14 +305,14 @@ sub parentlinks ($) { #{{{ my $skip=1; foreach my $dir (reverse split("/", $page)) { if (! $skip) { + $path.="../"; unshift @ret, { url => "$path$dir.html", page => $dir }; } else { $skip=0; } - $path.="../"; } - unshift @ret, { url => $path , page => $config{wikiname} }; + unshift @ret, { url => length $path ? $path : ".", page => $config{wikiname} }; return @ret; } #}}} @@ -364,10 +362,10 @@ sub check_overwrite ($$) { #{{{ my $src=shift; if (! exists $renderedfiles{$src} && -e $dest && ! $config{rebuild}) { - error("$dest exists and was rendered from ". + error("$dest already exists and was rendered from ". join(" ",(grep { $renderedfiles{$_} eq $dest } keys %renderedfiles)). - ", not from $src before not overwriting"); + ", before, so not rendering from $src"); } } #}}} @@ -692,7 +690,7 @@ sub gen_wrapper (@) { #{{{ push @params, "--cgiurl=$config{cgiurl}" if length $config{cgiurl}; push @params, "--historyurl=$config{historyurl}" if length $config{historyurl}; push @params, "--anonok" if $config{anonok}; - my $params=join(" ", map { "\'$_\'" } @params); + my $params=join(" ", @params); my $call=''; foreach my $p ($this, $this, @params) { $call.=qq{"$p", }; @@ -1096,7 +1094,9 @@ sub cgi_editpage ($$) { #{{{ rcs_commit($message); } else { + loadindex(); refresh(); + saveindex(); } # The trailing question mark tries to avoid broken