summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--IkiWiki.pm10
-rw-r--r--IkiWiki/Plugin/mdwn.pm9
-rw-r--r--debian/changelog8
3 files changed, 14 insertions, 13 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm
index d001760a2..230170d85 100644
--- a/IkiWiki.pm
+++ b/IkiWiki.pm
@@ -624,12 +624,22 @@ sub htmlize ($$$) { #{{{
error("htmlization of $type not supported");
}
+ my $oneline = $content !~ /\n/;
+
run_hooks(sanitize => sub {
$content=shift->(
page => $page,
content => $content,
);
});
+
+ if ($oneline) {
+ # hack to get rid of enclosing junk added by markdown
+ # and other htmlizers
+ $content=~s/^<p>//i;
+ $content=~s/<\/p>$//i;
+ chomp $content;
+ }
return $content;
} #}}}
diff --git a/IkiWiki/Plugin/mdwn.pm b/IkiWiki/Plugin/mdwn.pm
index 1520b3eec..254ab51d0 100644
--- a/IkiWiki/Plugin/mdwn.pm
+++ b/IkiWiki/Plugin/mdwn.pm
@@ -41,8 +41,6 @@ sub htmlize (@) { #{{{
require Encode;
}
- my $oneline = $content !~ /\n/;
-
# Workaround for perl bug (#376329)
$content=Encode::encode_utf8($content);
eval {$content=&$markdown_sub($content)};
@@ -52,13 +50,6 @@ sub htmlize (@) { #{{{
}
$content=Encode::decode_utf8($content);
- if ($oneline) {
- # hack to get rid of enclosing junk added by markdown
- $content=~s!^<p>!!;
- $content=~s!</p>$!!;
- chomp $content;
- }
-
return $content;
} # }}}
diff --git a/debian/changelog b/debian/changelog
index ee2ecc4d5..d115efafc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -17,10 +17,10 @@ ikiwiki (2.20) UNRELEASED; urgency=low
* template: Remove bogus htmlize pass added in 2.16.
* template: Htmlize template variables, but also provide a raw version
via `<TMPL_VAR raw_variable>`.
- * mdwn: When htmlizing text, if it's a single line with no newline,
- remove the enclosing paragraph and newline markdown wraps it in.
- This allows removing several hacks around this markdown behavior from
- other plugins that htmlize fragements of pages.
+ * When htmlizing text, if the input is a single line with no newline,
+ and the htmlizer (such as markdown and textile) generates a html
+ paragraph, remove it. This allows removing several hacks around this
+ markdown behavior from other plugins that htmlize fragements of pages.
-- Joey Hess <joeyh@debian.org> Wed, 09 Jan 2008 00:34:46 -0500