Word Wrap & Reflow

Paste any block of prose — an email, a README, a long paragraph from a document — and reflow it to a chosen line width. The inverse operation, unwrap, collapses hard-wrapped lines back into single-line paragraphs (handy when you’re cleaning up an email quoted at 72 characters). Pick a width, optionally indent, justify, and break long words. Nothing leaves your browser.

Options
Result

Wrap vs unwrap

Wrap takes continuous prose and breaks it into lines that don’t exceed the requested width, preserving paragraph breaks (blank lines) and any list-style prefixes (bullets, numbered items, indented blocks, quoted-email > chains). Unwrap does the opposite: it collapses runs of hard-wrapped lines back into a single-line paragraph. Use it to clean up text quoted at 72 characters by a mail client.

Indents

First-line indent adds the given number of spaces at the start of the very first line of each paragraph. Hanging indent adds spaces at the start of every subsequent line. Combine the two for poetry-style formatting: first-line = 0, hanging = 4 puts the first line flush left and every continuation line indented four characters in.

Justify

When on, every line of a paragraph except the last is space-padded to exactly the chosen width, with the largest gaps on the left (left-justified flush). The last line of the paragraph is left as-is. Justification respects indents — the indent is part of the width, not added on top of it.

Break long words

When on (the default), a single word wider than the target width is split on a character boundary so the line fits. Without this, an over-long word would silently widen the line. Turn it off to preserve long URLs, hex dumps, or identifiers verbatim.

Preserved prefixes

The tool recognises and preserves these prefixes on every line, treating each as the start of its own sub-paragraph so the prefix stays put while the body wraps:

  • >, >>, >>> — quoted email chains
  • - , * , + — bullets
  • 1. , 2. , … — numbered lists (1–3 digit indices)
  • ## / ### — Markdown headings (kept on one line)
  • Two or more leading spaces — indented blocks

A single leading space is not a prefix — it’s treated as stray indentation and removed.