mkdocs2confluence 0.7.11__tar.gz → 0.7.12__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mkdocs2confluence-0.7.11/src/mkdocs2confluence.egg-info → mkdocs2confluence-0.7.12}/PKG-INFO +1 -1
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/pyproject.toml +1 -1
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12/src/mkdocs2confluence.egg-info}/PKG-INFO +1 -1
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/emitter/xhtml.py +15 -19
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_emitter.py +18 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/LICENSE +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/README.md +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/setup.cfg +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs2confluence.egg-info/SOURCES.txt +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs2confluence.egg-info/dependency_links.txt +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs2confluence.egg-info/entry_points.txt +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs2confluence.egg-info/requires.txt +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs2confluence.egg-info/top_level.txt +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/cli.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/emitter/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/ir/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/ir/document.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/ir/nodes.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/ir/treeutil.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/config.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/extra_css.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/nav.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/page.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/parser/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/parser/markdown.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/pdf/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/pdf/generator.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/pdf/render.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/abbrevs.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/fence.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/frontmatter.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/icons.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/includes.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/linkdefs.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preview/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preview/render.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preview/server.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/publisher/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/publisher/client.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/publisher/pipeline.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/__init__.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/abbrevs.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/assets.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/editlink.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/images.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/internallinks.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/mermaid.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_abbrevs.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_cli.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_editlink.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_extra_css.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_frontmatter.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_icons.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_images.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_internallinks.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_ir.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_linkdefs.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_loader.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_mermaid.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_page_loader.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_parser.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_pdf.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_preprocess.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_preview.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_publish_client.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_publish_config.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_publish_pipeline.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_server.py +0 -0
- {mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/tests/test_treeutil.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "mkdocs2confluence"
|
|
3
|
-
version = "0.7.
|
|
3
|
+
version = "0.7.12"
|
|
4
4
|
description = "Publish MkDocs Material pages to Confluence Cloud — admonitions, Mermaid diagrams, tabs, page properties and more"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = { text = "GPL-3.0-or-later" }
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/emitter/xhtml.py
RENAMED
|
@@ -576,25 +576,21 @@ def _emit_abbrev_footnote(node: AbbrevFootnoteNode) -> str:
|
|
|
576
576
|
|
|
577
577
|
def _emit_abbrev_glossary_block(node: AbbrevGlossaryBlock) -> str:
|
|
578
578
|
"""End-of-page abbreviations list with Confluence anchor targets."""
|
|
579
|
-
parts: list[str] = ["<hr />\n<h6>Abbreviations</h6>\n"]
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
parts.append("</
|
|
593
|
-
|
|
594
|
-
parts.append("<ul>\n")
|
|
595
|
-
for abbr, defn in node.extras:
|
|
596
|
-
parts.append(f"<li><strong>{html.escape(abbr)}</strong> — {html.escape(defn)}</li>\n")
|
|
597
|
-
parts.append("</ul>\n")
|
|
579
|
+
parts: list[str] = ["<hr />\n<h6>Abbreviations</h6>\n<ol>\n"]
|
|
580
|
+
for fn in node.footnoted:
|
|
581
|
+
anchor = html.escape(f"abbr-{fn.number}")
|
|
582
|
+
anchor_macro = (
|
|
583
|
+
f'<ac:structured-macro ac:name="anchor">'
|
|
584
|
+
f'<ac:parameter ac:name=""><![CDATA[{anchor}]]></ac:parameter>'
|
|
585
|
+
f"</ac:structured-macro>"
|
|
586
|
+
)
|
|
587
|
+
abbr = html.escape(fn.abbr)
|
|
588
|
+
defn = html.escape(fn.definition)
|
|
589
|
+
parts.append(f"<li>{anchor_macro}<strong>{abbr}</strong> — {defn}</li>\n")
|
|
590
|
+
for abbr, defn in node.extras:
|
|
591
|
+
# No anchor — these only appeared in headings/titles, no inline superscript links here.
|
|
592
|
+
parts.append(f"<li><strong>{html.escape(abbr)}</strong> — {html.escape(defn)}</li>\n")
|
|
593
|
+
parts.append("</ol>\n")
|
|
598
594
|
return "".join(parts)
|
|
599
595
|
|
|
600
596
|
|
|
@@ -402,6 +402,24 @@ class TestFootnoteEmitter:
|
|
|
402
402
|
assert 'fn-1' in html_out
|
|
403
403
|
assert 'My note.' in html_out
|
|
404
404
|
|
|
405
|
+
def test_abbrev_glossary_extras_in_ol_not_ul(self) -> None:
|
|
406
|
+
"""Abbreviations only in headings/titles must appear in <ol>, not <ul>."""
|
|
407
|
+
from mkdocs_to_confluence.emitter.xhtml import emit
|
|
408
|
+
from mkdocs_to_confluence.ir.nodes import AbbrevFootnoteNode, AbbrevGlossaryBlock
|
|
409
|
+
fn = AbbrevFootnoteNode(abbr="API", definition="Application Programming Interface", number=1)
|
|
410
|
+
block = AbbrevGlossaryBlock(
|
|
411
|
+
footnoted=(fn,),
|
|
412
|
+
extras=(("AD", "Active Directory"),),
|
|
413
|
+
)
|
|
414
|
+
out = emit((block,))
|
|
415
|
+
assert "<ol>" in out
|
|
416
|
+
assert "<ul>" not in out
|
|
417
|
+
assert "AD" in out
|
|
418
|
+
assert "Active Directory" in out
|
|
419
|
+
assert "API" in out
|
|
420
|
+
# extras must NOT get an anchor macro
|
|
421
|
+
assert out.count('ac:name="anchor"') == 1 # only for the footnoted entry
|
|
422
|
+
|
|
405
423
|
|
|
406
424
|
# ── Inline HTML emitters ──────────────────────────────────────────────────────
|
|
407
425
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs2confluence.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs2confluence.egg-info/requires.txt
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs2confluence.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/emitter/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/ir/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/ir/document.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/ir/treeutil.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/config.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/extra_css.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/nav.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/loader/page.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/parser/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/parser/markdown.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/pdf/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/pdf/generator.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/pdf/render.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/abbrevs.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/fence.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preprocess/icons.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preview/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preview/render.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/preview/server.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/publisher/__init__.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/publisher/client.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/publisher/pipeline.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/abbrevs.py
RENAMED
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/assets.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/images.py
RENAMED
|
File without changes
|
|
File without changes
|
{mkdocs2confluence-0.7.11 → mkdocs2confluence-0.7.12}/src/mkdocs_to_confluence/transforms/mermaid.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|