aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki
diff options
context:
space:
mode:
authorSimon McVittie <smcv@ http://smcv.pseudorandom.co.uk/>2008-11-18 11:25:13 +0000
committerJoey Hess <joey@kodama.kitenet.net>2008-12-12 14:23:12 -0500
commit473160c947f7c986ac692814190422ad85242346 (patch)
treed085fef0ef81f8e14032212f776aea9b277c40da /IkiWiki
parent88e8d4bf8d99b6df83deb680f1ed8685e6447875 (diff)
downloadikiwiki-473160c947f7c986ac692814190422ad85242346.tar
ikiwiki-473160c947f7c986ac692814190422ad85242346.tar.gz
htmlbalance: don't compact whitespace, and set misc other options
Not compacting whitespace is the most important one: now that we run sanitize hooks on individual posted comments in the comments plugin, whitespace that is significant to Markdown (but not HTML) is lost. (cherry picked from commit cb5aaa3cee8b35d6fc6e88a7449a9477a6587c7a)
Diffstat (limited to 'IkiWiki')
-rw-r--r--IkiWiki/Plugin/htmlbalance.pm10
1 files changed, 9 insertions, 1 deletions
diff --git a/IkiWiki/Plugin/htmlbalance.pm b/IkiWiki/Plugin/htmlbalance.pm
index 3a2d62d15..dcd92055f 100644
--- a/IkiWiki/Plugin/htmlbalance.pm
+++ b/IkiWiki/Plugin/htmlbalance.pm
@@ -30,7 +30,15 @@ sub sanitize (@) { #{{{
my %params=@_;
my $ret = '';
- my $tree = HTML::TreeBuilder->new_from_content($params{content});
+ my $tree = HTML::TreeBuilder->new();
+ $tree->ignore_unknown(0);
+ $tree->ignore_ignorable_whitespace(0);
+ $tree->no_space_compacting(1);
+ $tree->p_strict(1);
+ $tree->store_comments(0);
+ $tree->store_declarations(0);
+ $tree->store_pis(0);
+ $tree->parse_content($params{content});
my @nodes = $tree->disembowel();
foreach my $node (@nodes) {
if (ref $node) {