summaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin
diff options
context:
space:
mode:
authorintrigeri <intrigeri@boum.org>2009-03-09 00:32:10 +0100
committerintrigeri <intrigeri@boum.org>2009-03-09 00:32:10 +0100
commitf4a1732b0e65ea4459098e4e852dff10a5af9320 (patch)
tree60b8cf4b1677504cb86f301bb62a33cc769fafd9 /IkiWiki/Plugin
parentcc5be82b8b7cfe3b679d8ba4f0d62e0894d9f964 (diff)
parent0978be7affa6222d91a0bc71ddd1e86f81fc56cd (diff)
Merge commit 'upstream/master' into prv/po
Diffstat (limited to 'IkiWiki/Plugin')
-rw-r--r--IkiWiki/Plugin/smiley.pm6
-rw-r--r--IkiWiki/Plugin/template.pm6
-rw-r--r--IkiWiki/Plugin/wmd.pm18
3 files changed, 21 insertions, 9 deletions
diff --git a/IkiWiki/Plugin/smiley.pm b/IkiWiki/Plugin/smiley.pm
index 1697a37c1..0d77916d0 100644
--- a/IkiWiki/Plugin/smiley.pm
+++ b/IkiWiki/Plugin/smiley.pm
@@ -87,10 +87,10 @@ MATCH: while (m{(?:^|(?<=\s|>))(\\?)$smiley_regexp(?:(?=\s|<)|$)}g) {
}
else {
# Replace the smiley with its expanded value.
- substr($_, $spos, length($smiley))=
- htmllink($params{page}, $params{destpage},
+ my $link=htmllink($params{page}, $params{destpage},
$smileys{$smiley}, linktext => $smiley);
- pos=$epos+1;
+ substr($_, $spos, length($smiley))=$link;
+ pos=$epos+length($link);
}
}
diff --git a/IkiWiki/Plugin/template.pm b/IkiWiki/Plugin/template.pm
index b872f0962..b6097bb49 100644
--- a/IkiWiki/Plugin/template.pm
+++ b/IkiWiki/Plugin/template.pm
@@ -69,9 +69,13 @@ sub preprocess (@) {
}
}
+ # This needs to run even in scan mode, in order to process
+ # links and other metadata includes via the template.
+ my $scan=! defined wantarray;
+
return IkiWiki::preprocess($params{page}, $params{destpage},
IkiWiki::filter($params{page}, $params{destpage},
- $template->output));
+ $template->output), $scan);
}
1
diff --git a/IkiWiki/Plugin/wmd.pm b/IkiWiki/Plugin/wmd.pm
index 3372ffe38..9ddd237ab 100644
--- a/IkiWiki/Plugin/wmd.pm
+++ b/IkiWiki/Plugin/wmd.pm
@@ -26,8 +26,9 @@ sub formbuilder_setup (@) {
return if ! defined $form->field("do");
- return unless (($form->field("do") eq "edit") ||
- ($form->field("do") eq "create"));
+ return unless $form->field("do") eq "edit" ||
+ $form->field("do") eq "create" ||
+ $form->field("do") eq "comment";
$form->tmpl_param("wmd_preview", "<div class=\"wmd-preview\"></div>\n".
include_javascript(undef, 1));
@@ -36,9 +37,16 @@ sub formbuilder_setup (@) {
sub include_javascript ($;$) {
my $page=shift;
my $absolute=shift;
-
- return '<script src="'.urlto("wmd.js", $page, $absolute).
- '" type="text/javascript"></script>'."\n";
+
+ my $wmdjs=urlto("wmd/wmd.js", $page, $absolute);
+ return <<"EOF"
+<script type="text/javascript">
+wmd_options = {
+ output: "Markdown"
+};
+</script>
+<script src="$wmdjs" type="text/javascript"></script>
+EOF
}
1