Skip to content

mdrefine 0.1.0-beta.4

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 18 Sep 21:46
Immutable release. Only release title and notes can be modified.
e5b9373

mdrefine 0.1.0-beta.4

Fourth public beta of Markdown Tools. npm package: mdrefine; executable:
mdtools. Requires Node.js 22.12 or newer. Upgrade with:

npm install --save-dev --save-exact mdrefine@0.1.0-beta.4

Callout header diagnostics

An Obsidian callout title occupies one physical line. Over-width titles now
follow style/wrap.reportUnbreakable, even when they contain spaces, instead of
triggering reportUnreflowed. Body overflow is evaluated separately. A block
identifier does not make its entire paragraph indivisible; existing atom-aware
classification for those paragraphs is retained.

Fixed in PR #42,
resolving #40.

Direct callout body wrapping

style/wrap now reflows supported Obsidian body prose directly below the
callout header, without requiring or inserting a blank quote line. The header's
physical line, title, folding marker, and container prefix remain intact. Body
reflow retains quote and list prefixes, protected inline atoms, and line
endings.

The semantic fingerprint now distinguishes the title from body text, rejecting
edits that move words across their boundary. Supported inline title formatting
still works. Hard breaks, block identifiers, inline HTML, unsupported multiline
syntax, and lazy or inconsistent quote continuations remain conservative cases.
Inline syntax spanning the title/body boundary is left untouched by wrapping.

Implemented in
PR #43, resolving
#41.

Compatibility and verification

No dependency, public API, configuration-schema, or Node.js minimum changes.
Existing beta.3 configurations remain valid. Both diagnostic options remain
false by default and propose no edits. Consumers enabling them may see header
findings move to reportUnbreakable. Obsidian wrapping still requires verified
strictLineBreaks: true; CommonMark and GitHub behavior is unchanged.

Regression coverage includes nested callouts, list containers, folding markers,
LF/CRLF, both diagnostic flags, width modes, inline atoms, protected source,
rule isolation, semantic preservation, idempotence, unsafe boundary edits, and
CLI preview/write/check behavior. The API and configuration remain provisional.

🤖 Generated with GPT-6 via Codex