fix: round-trip fidelity for tables, page links, and nested lists Four real-document failures surfaced via `mdcx verify`: - Pipes inside `<code>` in GFM table cells were treated as column separators, splitting cells. `writeTableRow` now escapes `|` as `\|` per the GFM spec; the parser strips the backslash before inline parsing so the pipe survives inside the resulting code span. - Two `<code>` elements separated by whitespace text were being merged because `isPrev/NextSiblingCode` skipped whitespace nodes. Adjacency is now strict. - `<ac:link><ri:page …/></ac:link>` was dropped because goldmark cannot parse `<ac:link>` as raw inline HTML (the colon disqualifies it). Preserved via a `<span data-page-link …>` placeholder; the inverse is driven by a new `pageLinkDepth` counter in the renderer. - Nested `<ol>` collapsed to a flat list and went loose because the fixed `2*(depth-1)` indent didn't satisfy CommonMark's column rule for ordered markers and a stray `\n` after each `<li>` made the list loose. Indent is now a per-level stack (3 for ol, 2 for ul/task) and list-item terminators use `ensureSingleNewline`. Regression tests in converter/md2xml_test.go pin each fix; CLAUDE.md documents the gotchas.
feat: add verify command, improve round-trip fidelity Add verify command for XML validation. Merge adjacent <code> elements during XML→MD conversion. Preserve macro attribute order for round-trip fidelity. Fix list item trailing whitespace and normalize <hr /> format. false
Rename module, add features, fix round-trip fidelity - Rename module to sourcecraft.dev/bigbes/confluence-md-utilities - Add fmt command with syntax highlighting (--color=auto/force/disabled) - Add shell completions for all commands with file extension hints - Preserve ac:layout/ac:layout-section/ac:layout-cell through round-trips - Preserve ac:macro-id on code blocks and TOC macros - Preserve table class/style attributes and colgroup column widths - Preserve TOC macro as <!-- ac:toc --> comment - Fix table cell rendering to preserve bold, italic, code, br, links - Fix user references (ri:userkey) and attachment images (ri:attachment) - Fix inline spacing between formatting elements in list items false
Initial commit: mdcx — Markdown to Confluence XML converter Bidirectional converter between Markdown and Confluence storage format XML with self-hosted Confluence Server/Data Center sync support. Features: - convert: Markdown → Confluence XML - extract: Confluence XML → Markdown - embed: embed Markdown into Confluence XML template (marker-based) - pull/push: sync pages with Confluence via REST API + PAT auth - fmt: pretty-print Confluence XML with sensible indentation - Round-trip preservation of inline comments, user refs, attachment images false