Skip to content

Commit 587c925

Browse files
author
Al Manning
committed
upgrade codeblock
1 parent 2dc9679 commit 587c925

File tree

3 files changed

+13
-10
lines changed

3 files changed

+13
-10
lines changed

src/resources/extensions/quarto/confluence/overrides.lua

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -118,8 +118,7 @@ function LinkConfluence(source, target, title, attr)
118118
escape(title,true) .. "'>" .. source .. "</a>"
119119
end
120120

121-
function CodeBlockConfluence(codeValue, attributes)
122-
local languageValue = attributes and attributes.class or ''
121+
function CodeBlockConfluence(codeValue, languageValue)
123122
local CODE_SNIPPET = [[<ac:structured-macro
124123
ac:name="code"
125124
ac:schema-version="1"
@@ -132,7 +131,7 @@ function CodeBlockConfluence(codeValue, attributes)
132131

133132
return interpolate {
134133
CODE_SNIPPET,
135-
languageValue = languageValue,
134+
languageValue = languageValue or '',
136135
codeValue = codeValue,
137136
doubleBraket = ']]'
138137
}

src/resources/extensions/quarto/confluence/publish.lua

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,21 @@ function Writer (doc, opts)
2525
image.src,
2626
image.title,
2727
pandoc.utils.stringify(image.caption),
28-
image.attr)
28+
image.attributes)
2929
return pandoc.RawInline('html', renderString)
3030
end,
3131
Link = function (link)
3232
local renderString = confluence.LinkConfluence(
3333
pandoc.utils.stringify(link.content),
3434
link.target,
3535
link.title,
36-
link.attr)
36+
link.attributes)
37+
return pandoc.RawInline('html', renderString)
38+
end,
39+
CodeBlock = function (codeBlock)
40+
local renderString = confluence.CodeBlockConfluence(
41+
codeBlock.text,
42+
codeBlock.classes[1] or '')
3743
return pandoc.RawInline('html', renderString)
3844
end
3945
}

src/resources/extensions/quarto/confluence/test-suite.lua

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -75,17 +75,15 @@ function TestCodeBlockConfluence:testWithAllAttributes()
7575
ac:name="code"
7676
ac:schema-version="1"
7777
ac:macro-id="1d1a2d13-0179-4d8f-b448-b28dfaceea4a">
78-
<ac:parameter ac:name="language">fake-class</ac:parameter>
78+
<ac:parameter ac:name="language">python</ac:parameter>
7979
<ac:plain-text-body>
8080
<![CDATA[fake-codeValue{doubleBracket}>
8181
</ac:plain-text-body>
8282
</ac:structured-macro>]]
8383
local codeValue = 'fake-codeValue'
84-
local attributes = {
85-
class = 'fake-class'
86-
}
84+
local languageValue = 'python'
8785
expected = confluence.interpolate{expected, doubleBracket = ']]'}
88-
local actual = confluence.CodeBlockConfluence(codeValue, attributes)
86+
local actual = confluence.CodeBlockConfluence(codeValue, languageValue)
8987

9088
lu.assertEquals(actual, expected)
9189
end

0 commit comments

Comments
 (0)