I'm building up documentation that shows examples of an SDK in multiple languages. Each language gets a tab. So we end up with a template that looks like this:
<tabs>
<tab>
<language>
<code>
</tab>
</tabs>
...with a repeat on the "tab" section obviously, for each language we support. The issue is that I need to have editable content (that's extensive - a single-line textbox is not enough) in each <code> area. So multiple rich-content areas. I'd love to have my macro spit out (for example) a panel for each language or something.
Here's my template as it exists right now. This technically works, but you'd have to edit your code in a single-line text field - obviously not usable.
## Macro title: Code Tabs
## @param csharp:title=C#|type=string|desc=C#
## @param java:title=Java|type=string|desc=Java
<ac:structured-macro ac:name="sp-tabs">
<ac:rich-text-body>
<ac:structured-macro ac:name="sp-tab">
<ac:parameter ac:name="title">C#</ac:parameter>
<ac:rich-text-body>
<ac:structured-macro ac:name="code">
<ac:parameter ac:name="language">c#</ac:parameter>
<ac:plain-text-body><![CDATA[ $!paramcsharp ]]></ac:pain-text-body>
</ac:structured-macro>
</ac:rich-text-body>
</ac:structured-macro>
<ac:structured-macro ac:name="sp-tab">
<ac:parameter ac:name="title">Java</ac:parameter>
<ac:rich-text-body>
<ac:structured-macro ac:name="code">
<ac:parameter ac:name="language">java</ac:parameter>
<ac:plain-text-body><![CDATA[ $!paramjava ]]></ac:pain-text-body>
</ac:structured-macro>
</ac:rich-text-body>
</ac:structured-macro>
</ac:rich-text-body>
</ac:structured-macro>
Is there a way I can just let that <code> macro render as a sub-editor in my macro somehow?