mdwright-format
Verified Markdown formatting and byte-rewrite transactions for mdwright.
The formatter is table-free identity by default: structural emit replays the source, while
GFM tables default to compact normal form. Active rewrites ship as small,
ownership-checked families — canonicalisation knobs (heading style, list markers,
link-definition shape, …) and paragraph wrapping. Each family produces its
normal-form plan or skips; rewrites that would change the rendered DOM are rejected by the
semantic gate (semantically_equivalent), so format_validated either returns a
byte-for-byte safe rewrite or surfaces a diagnostic.
Document facts come from mdwright-document; this crate does not parse Markdown itself.
Lint rules and CLI policy live in mdwright-lint and the mdwright binary crate.
Status
Pre-1.0. Public items are whatever lib.rs re-exports; breaking changes ship without
deprecation warnings.
Use it
[]
= "0.1"
use ;
See also
- Project: https://github.com/jcreinhold/mdwright
- Library walkthrough: https://jcreinhold.github.io/mdwright/reference/public-api.html#use-mdwright-as-a-library
- Manual: https://jcreinhold.github.io/mdwright/
- Architecture:
docs/architecture/crate-boundaries.md
License
Licensed under MIT or Apache-2.0, at your option.