[Marklas] Markdown <-> Atlassian Document Format(ADF) 双方向コンバーター
(github.com/byExist)ConfluenceとJiraは、文書をADF(Atlassian Document Format)というJSON構造で保存します。APIでページを読み書きする際にはこのフォーマットを直接扱う必要がありますが、パネル・メンション・色付きテキストのようなADF専用機能は、Markdownに変換すると失われてしまいます。
Marklasは、ADF専用機能をHTMLコメントのアノテーションとして保持することで、この問題を解決します。
<!-- adf:panel {"panelType": "warning"} -->
このAPIはv2で削除予定です。
<!-- /adf:panel -->
アノテーションはGitHubやエディタではレンダリングされないため可読性に影響せず、再度パースすれば元のADF構造がそのまま復元されます。
ADF → Markdown(アノテーション付き) → ADF ✅ 損失を最小化
通常のMarkdown → ADF ✅ 動作
from marklas import to_adf, to_md
md = to_md(confluence_adf) # Markdownに変換して編集
adf = to_adf(md) # 再びADFに復元
既存の商用変換ライブラリを使っていて不便さを感じたため、自作しました。
Python 3.13+、外部依存はmistuneのみです。
まだコメントはありません。