From bc373ab8e15a92f6941031b54f676861c3c80a94 Mon Sep 17 00:00:00 2001 From: Carlos Scheidegger Date: Wed, 24 May 2023 12:59:57 -0700 Subject: [PATCH 1/3] handle singleton shortcodes in plain and paras as blocks --- src/resources/filters/customnodes/shortcodes.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/resources/filters/customnodes/shortcodes.lua b/src/resources/filters/customnodes/shortcodes.lua index 2db51a100c3..c4a74a05369 100644 --- a/src/resources/filters/customnodes/shortcodes.lua +++ b/src/resources/filters/customnodes/shortcodes.lua @@ -214,6 +214,9 @@ function shortcodes_filter() }) local block_handler = function(node) + if node.t == "Para" and #node.content == 1 then + node = node.content[1] + end local custom_data, t, kind = _quarto.ast.resolve_custom_data(node) if t ~= "Shortcode" then return nil From ad884d83d2f31f3dd1b4428902fdcb4e34bd3500 Mon Sep 17 00:00:00 2001 From: Carlos Scheidegger Date: Wed, 24 May 2023 13:04:05 -0700 Subject: [PATCH 2/3] fix callout-in-shortcode regression. Closes #5661 --- tests/docs/smoke-all/2023/05/24/5661-html.qmd | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 tests/docs/smoke-all/2023/05/24/5661-html.qmd diff --git a/tests/docs/smoke-all/2023/05/24/5661-html.qmd b/tests/docs/smoke-all/2023/05/24/5661-html.qmd new file mode 100644 index 00000000000..d7fa1c5e3c6 --- /dev/null +++ b/tests/docs/smoke-all/2023/05/24/5661-html.qmd @@ -0,0 +1,16 @@ +--- +title: "Callout-test Example" +format: + html: default +_quarto: + tests: + html: + ensureHtmlElements: + - ["div.callout"] + - [] +--- + +## Heading + +{{< callout-test >}} + From 8baed74999a6f5cefdd08577a7dbfad316c74c75 Mon Sep 17 00:00:00 2001 From: Carlos Scheidegger Date: Wed, 24 May 2023 13:43:29 -0700 Subject: [PATCH 3/3] add extensions folder --- .../05/24/_extensions/callout-test/_extension.yml | 8 ++++++++ .../05/24/_extensions/callout-test/callout-test.lua | 13 +++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 tests/docs/smoke-all/2023/05/24/_extensions/callout-test/_extension.yml create mode 100644 tests/docs/smoke-all/2023/05/24/_extensions/callout-test/callout-test.lua diff --git a/tests/docs/smoke-all/2023/05/24/_extensions/callout-test/_extension.yml b/tests/docs/smoke-all/2023/05/24/_extensions/callout-test/_extension.yml new file mode 100644 index 00000000000..c557e5ef303 --- /dev/null +++ b/tests/docs/smoke-all/2023/05/24/_extensions/callout-test/_extension.yml @@ -0,0 +1,8 @@ +title: Callout-test +author: Pascal Burkhard +version: 1.0.0 +quarto-required: ">=1.3.0" +contributes: + shortcodes: + - callout-test.lua + diff --git a/tests/docs/smoke-all/2023/05/24/_extensions/callout-test/callout-test.lua b/tests/docs/smoke-all/2023/05/24/_extensions/callout-test/callout-test.lua new file mode 100644 index 00000000000..6d58489a4f9 --- /dev/null +++ b/tests/docs/smoke-all/2023/05/24/_extensions/callout-test/callout-test.lua @@ -0,0 +1,13 @@ +return { + ['callout-test'] = function(args, kwargs, meta) + local calloutDiv = {} + calloutDiv["type"] = "note" + calloutDiv["icon"] = false + calloutDiv["title"] = "Test" + calloutDiv["content"] = { pandoc.Str("This is a test.") } + + calloutOut = quarto.Callout(calloutDiv) + + return calloutOut + end +}