ref: 5509954c7e8b0ce8d5ea903b0ab639ea14b69acb
parent: 6b59b64f02341c67a3606d2bbb3b9934d6276a74
author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
date: Sat Dec 28 07:07:23 EST 2019
hugolib: Fix inline shortcode regression Fixes #6677
--- a/hugolib/shortcode.go
+++ b/hugolib/shortcode.go
@@ -196,9 +196,18 @@
}
func (s shortcode) insertPlaceholder() bool {- return !s.doMarkup || s.info.ParseInfo().Config.Version == 1
+ return !s.doMarkup || s.configVersion() == 1
}
+func (s shortcode) configVersion() int {+ if s.info == nil {+ // Not set for inline shortcodes.
+ return 2
+ }
+
+ return s.info.ParseInfo().Config.Version
+}
+
func (s shortcode) innerString() string {var sb strings.Builder
@@ -347,7 +356,7 @@
// Pre Hugo 0.55 this was the behaviour even for the outer-most
// shortcode.
- if sc.doMarkup && (level > 0 || sc.info.ParseInfo().Config.Version == 1) {+ if sc.doMarkup && (level > 0 || sc.configVersion() == 1) {var err error
b, err := p.pageOutput.cp.renderContent([]byte(inner), false)
--- a/hugolib/shortcode_test.go
+++ b/hugolib/shortcode_test.go
@@ -1101,6 +1101,7 @@
NEW INLINE: {{< n1.inline "5" >}}W1: {{ seq (.Get 0) }}{{< /n1.inline >}}:END: INLINE IN INNER: {{< outer >}}{{< n2.inline >}}W2: {{ seq 4 }}{{< /n2.inline >}}{{< /outer >}}:END: REUSED INLINE IN INNER: {{< outer >}}{{< n1.inline "3" />}}{{< /outer >}}:END:+## MARKDOWN DELIMITER: {{% mymarkdown.inline %}}**Hugo Rocks!**{{% /mymarkdown.inline %}}`
b.WithContent("page-md-shortcode.md", `---@@ -1116,10 +1117,12 @@
b.WithTemplatesAdded("layouts/_default/single.html", ` CONTENT:{{ .Content }}+TOC: {{ .TableOfContents }}`)
b.WithTemplatesAdded("layouts/index.html", ` CONTENT:{{ .Content }}+TOC: {{ .TableOfContents }}`)
b.WithTemplatesAdded("layouts/shortcodes/outer.html", `Inner: {{ .Inner }}`)@@ -1133,6 +1136,7 @@
"NEW INLINE: W1: [1 2 3 4 5]",
"INLINE IN INNER: Inner: W2: [1 2 3 4]",
"REUSED INLINE IN INNER: Inner: W1: [1 2 3]",
+ `<li><a href="#markdown-delimiter-hugo-rocks">MARKDOWN DELIMITER: Hugo Rocks!</a></li>`,
}
if enableInlineShortcodes {--
⑨