summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joey@kodama.kitenet.net>2008-01-09 14:35:23 -0500
committerJoey Hess <joey@kodama.kitenet.net>2008-01-09 14:35:23 -0500
commit2b9ce0129bc61177e976caf432af9b4406ab2f3f (patch)
tree74be3d536540070af41385e8b108c651073af52d
parented30330ac23ca84235e09cfc2f0acd55d62e4a09 (diff)
* 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.
-rw-r--r--IkiWiki/Plugin/mdwn.pm9
-rw-r--r--IkiWiki/Plugin/meta.pm14
-rw-r--r--IkiWiki/Plugin/table.pm12
-rw-r--r--debian/changelog4
-rw-r--r--po/ikiwiki.pot8
5 files changed, 22 insertions, 25 deletions
diff --git a/IkiWiki/Plugin/mdwn.pm b/IkiWiki/Plugin/mdwn.pm
index 254ab51d0..1520b3eec 100644
--- a/IkiWiki/Plugin/mdwn.pm
+++ b/IkiWiki/Plugin/mdwn.pm
@@ -41,6 +41,8 @@ sub htmlize (@) { #{{{
require Encode;
}
+ my $oneline = $content !~ /\n/;
+
# Workaround for perl bug (#376329)
$content=Encode::encode_utf8($content);
eval {$content=&$markdown_sub($content)};
@@ -50,6 +52,13 @@ 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/IkiWiki/Plugin/meta.pm b/IkiWiki/Plugin/meta.pm
index 42fddb0bb..d2c6e7f8b 100644
--- a/IkiWiki/Plugin/meta.pm
+++ b/IkiWiki/Plugin/meta.pm
@@ -46,18 +46,10 @@ sub scrub ($) { #{{{
sub htmlize ($$$) { #{{{
my $page = shift;
my $destpage = shift;
- my $text = shift;
- $text=IkiWiki::htmlize($page, pagetype($pagesources{$page}),
+ return IkiWiki::htmlize($page, pagetype($pagesources{$page}),
IkiWiki::linkify($page, $destpage,
- IkiWiki::preprocess($page, $destpage, $text)));
-
- # hack to get rid of enclosing junk added by markdown
- $text=~s!^<p>!!;
- $text=~s!</p>$!!;
- chomp $text;
-
- return $text;
+ IkiWiki::preprocess($page, $destpage, shift)));
}
sub preprocess (@) { #{{{
@@ -184,7 +176,7 @@ sub preprocess (@) { #{{{
}
elsif ($key eq 'link') {
if (%params) {
- $meta{$page}.=scrub("<link href=\"".encode_entities($value)."\" ".
+ push @{$meta{$page}}, scrub("<link href=\"".encode_entities($value)."\" ".
join(" ", map {
encode_entities($_)."=\"".encode_entities(decode_entities($params{$_}))."\""
} keys %params).
diff --git a/IkiWiki/Plugin/table.pm b/IkiWiki/Plugin/table.pm
index ddc2f68be..20c71e1c7 100644
--- a/IkiWiki/Plugin/table.pm
+++ b/IkiWiki/Plugin/table.pm
@@ -174,17 +174,9 @@ sub genrow ($$$@) { #{{{
sub htmlize ($$$) { #{{{
my $page = shift;
my $destpage = shift;
- my $text = shift;
-
- $text=IkiWiki::htmlize($page, pagetype($pagesources{$page}),
- IkiWiki::preprocess($page, $destpage, $text));
-
- # hack to get rid of enclosing junk added by markdown
- $text=~s!^<p>!!;
- $text=~s!</p>$!!;
- chomp $text;
- return $text;
+ return IkiWiki::htmlize($page, pagetype($pagesources{$page}),
+ IkiWiki::preprocess($page, $destpage, shift));
}
1
diff --git a/debian/changelog b/debian/changelog
index 3bebe7f25..ee2ecc4d5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -17,6 +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.
-- Joey Hess <joeyh@debian.org> Wed, 09 Jan 2008 00:34:46 -0500
diff --git a/po/ikiwiki.pot b/po/ikiwiki.pot
index 2af29ad46..73fd91b85 100644
--- a/po/ikiwiki.pot
+++ b/po/ikiwiki.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-01-09 14:04-0500\n"
+"POT-Creation-Date: 2008-01-09 14:31-0500\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"
@@ -240,15 +240,15 @@ msgstr ""
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
-#: ../IkiWiki/Plugin/meta.pm:132
+#: ../IkiWiki/Plugin/meta.pm:124
msgid "stylesheet not found"
msgstr ""
-#: ../IkiWiki/Plugin/meta.pm:156
+#: ../IkiWiki/Plugin/meta.pm:148
msgid "redir page not found"
msgstr ""
-#: ../IkiWiki/Plugin/meta.pm:169
+#: ../IkiWiki/Plugin/meta.pm:161
msgid "redir cycle is not allowed"
msgstr ""