Confluence4のユーザーマクロの中でユーザーマクロを使う方法を知るために、参考にするといいこと
Confluence3だと、
{section} {column} $body {column} {column:width=300px} {panel} *Contents:* {toc:maxLevel=3} {panel} {column} {section}
とかできたけど、Confluence4だとそもそもWikiタグが効かないからこれだとダメ。
ということで、Confluence4の持ってるXMLでそのまま書く
XMLというか、XHTMLというか。色々と情報を見つけていった。Atlassianのドキュメント
Writing User Macros - Confluence 4.3 - Atlassian Documentation
によると、
みたいに書けばいいらしい。でも、詳細がよく分からない。
で、色々と調べて
Possible to Call User Macro inside another User Macro? - Atlassian Answers
Wiki markup in user macro with Confluence 4.0 - Stack Overflow
あたりを経由して
How do I write a user macro with "sections" and "panels" using the 4.0 HTML template? - Atlassian Answers
というのを見つけた。これによると、任意のWikiタグをConfluence4で入力してその結果のXMLが取得できるらしい。
Wikiタグから最終取得XMLを得る方法
組み込みのマクロとか、他のプラグインのマクロを参考にすると良い。
1. ページの編集画面から「挿入」→「Wikiのマークアップ」
2. コンテンツ内に普通にConfluence3時代のWikiマークアップを放り込む
3. ページを保存して、「ツール」→「保存形式を表示」をクリックする
こうすると、
{section} {column} $body {column} {column:width=300px} {panel} *Contents:* {toc:maxLevel=3} {panel} {column} {section}
のWikiマクロは
<ac:macro ac:name="section"> <ac:rich-text-body> <ac:macro ac:name="column"> <ac:rich-text-body> <p>$body</p> </ac:rich-text-body> </ac:macro> <ac:macro ac:name="column"> <ac:parameter ac:name="width">300px</ac:parameter> <ac:rich-text-body> <ac:macro ac:name="panel"> <ac:rich-text-body> <p><strong>Contents:</strong></p> <ac:macro ac:name="toc"> <ac:parameter ac:name="maxLevel">3</ac:parameter> </ac:macro> </ac:rich-text-body> </ac:macro> </ac:rich-text-body> </ac:macro> </ac:rich-text-body> </ac:macro>
に変換されているのが確認できる。