Reformat With SemBr
Apply Semantic Line Breaks to prose without changing what readers see. Preserve wording, punctuation, and intent.
Reformat Workflow
- Identify prose regions that support soft-wrapped lines.
- Skip regions where line breaks are syntactically significant:
- fenced code blocks and indented code blocks
- tables
- YAML frontmatter
- URLs or markup tokens that must stay contiguous
- Rewrite only line wrapping, not content.
- Keep paragraphs and list structures intact.
- Return full rewritten text unless asked for a targeted excerpt.
SemBr Rules
Apply these rules in order:
- Break after every sentence ending in
.,!, or?. - Prefer a break after independent clauses ending in
,,;,:, or—. - Optionally break after dependent clauses when it clarifies structure.
- Insert a break before an enumerated or itemized list.
- Optionally add breaks between list items to group related items.
- Never break inside a hyphenated word.
- Allow breaks around hyperlinks and before inline markup when helpful.
- Target 80 columns when possible; allow longer lines for URLs, code spans, or unavoidable markup.
Quality Checks
Before returning output, verify:
- Rendering-equivalence: no hard-break syntax added accidentally.
- Meaning-equivalence: no word changes or punctuation edits.
- Structure-equivalence: headings, lists, and block boundaries unchanged.
- Diff-friendliness: edits are mostly line-wrap changes.
Output Style
Use minimal explanation. Return reformatted text directly. If any segment cannot be safely reformatted, leave it unchanged and add a one-line note.