From 53b7d5b8a1a42cf19b76a7a901461bd1c2478368 Mon Sep 17 00:00:00 2001 From: spf13 Date: Thu, 28 Aug 2014 12:48:31 -0400 Subject: [PATCH] Inner Shortcodes now treated as markdown. fixed #185 --- hugolib/shortcode.go | 2 +- hugolib/shortcode_test.go | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/hugolib/shortcode.go b/hugolib/shortcode.go index bfbb1efdb..823426738 100644 --- a/hugolib/shortcode.go +++ b/hugolib/shortcode.go @@ -93,7 +93,7 @@ func ShortcodesHandle(stringToParse string, p *Page, t Template) string { var data = &ShortcodeWithPage{Params: params, Page: p} if endStart > 0 { s := stringToParse[leadEnd+3 : leadEnd+endStart] - data.Inner = template.HTML(CleanP(ShortcodesHandle(s, p, t))) + data.Inner = template.HTML(renderBytes([]byte(CleanP(ShortcodesHandle(s, p, t))), p.guessMarkupType())) remainder := CleanP(stringToParse[leadEnd+endEnd:]) return CleanP(stringToParse[:leadStart]) + diff --git a/hugolib/shortcode_test.go b/hugolib/shortcode_test.go index 138d1a6c9..115c70fdd 100644 --- a/hugolib/shortcode_test.go +++ b/hugolib/shortcode_test.go @@ -53,8 +53,20 @@ func TestInnerSC(t *testing.T) { tem.AddInternalShortcode("inside.html", `{{ .Inner }}`) CheckShortCodeMatch(t, `{{% inside class="aspen" %}}`, `
`, tem) - CheckShortCodeMatch(t, `{{% inside class="aspen" %}}More Here{{% /inside %}}`, `
More Here
`, tem) - CheckShortCodeMatch(t, `{{% inside %}}More Here{{% /inside %}}`, `
More Here
`, tem) + CheckShortCodeMatch(t, `{{% inside class="aspen" %}}More Here{{% /inside %}}`, "

More Here

\n
", tem) + CheckShortCodeMatch(t, `{{% inside %}}More Here{{% /inside %}}`, "

More Here

\n
", tem) +} + +func TestInnerSCWithMarkdown(t *testing.T) { + tem := NewTemplate() + tem.AddInternalShortcode("inside.html", `{{ .Inner }}`) + + CheckShortCodeMatch(t, `{{% inside %}} +# More Here + +[link](http://spf13.com) and text + +{{% /inside %}}`, "

More Here

\n\n

link and text

\n
", tem) } func TestEmbeddedSC(t *testing.T) {