Pimp My IDE / Garage dispatch
Back to garage
September 27, 2026 | editor ergonomics / soft wrap / reflow

A wrapped line is still one line.

Soft wrap keeps long text inside the pane. It should not hide where a logical line starts, ends, or continues.

The take. Turn wrapping on where horizontal scrolling slows reading. Add a visible continuation mark. Keep hard line breaks under the formatter or author, not the viewport.

The viewport can bend a line without editing it.

VS Code calls this word wrap. The editor can wrap at the viewport or at a configured column. Cut and Copy still act on the whole logical line. Home and End may need a second press to cross the visual segment and reach the logical boundary.[2]

That split matters in logs, generated files, Markdown, and narrow agent panes. A visual row can look like a new source line even though the file has no newline there.

Wrap for the reader. Preserve the file for the toolchain.

VS Code added a witness.

VS Code 1.139 added word-wrap indicators. An arrow at the wrap column marks a line that continues on the next visual row.[1] The mark is small, but it answers a useful question without moving the cursor or opening a diff.

The release does not claim that one wrap mode fits every file. The existing editor setting still supports off, viewport, and column-based policies. The new indicator makes the chosen policy easier to read.

Use a bounded mode when prose shares the cockpit.

Zed exposes the same decision with different names. Its soft_wrap setting supports none, editor_width, and bounded. Bounded mode uses the smaller of the editor width and preferred_line_length. Zed also has wrap guides for the preferred column.[3]

Bounded wrapping works well for Markdown, commit messages, and review notes. The text stays readable in a wide pane and still reflows when the pane narrows. Source code may need a different policy because alignment and side-by-side diffs can depend on horizontal space.

Reflow is also an access feature.

WCAG 2.2 explains why reflow matters outside editors. At 400 percent zoom, most vertical-scrolling content should fit a width equivalent to 320 CSS pixels without requiring two-dimensional scrolling. Long lines force readers to pan back and forth and can make them lose their place.[4]

An editor is not a web article, and code can need horizontal layout. The reading cost is still real. Give prose and logs a wrap policy. Keep a visible guide for code. Test both with larger text and a narrow split.

Interactive makeover / line geometry

Soft wrap witness rail

Traditional purpose replaced: toggle wrapping and guess where the line continues. Better version: choose the policy, set the bounded column, see logical line numbers stay fixed, and copy editor settings from the same control.

Set the display rail

The sample has four logical lines. Wrapped segments keep the same line number and gain a continuation arrow.

Wrap mode
80 ch
handoff.ts4 logical lines / 6 display rows

Bounded wrap at 80 characters. Four logical lines remain four logical lines.

Editor policy cardBOUNDED / 80 CH

Copy both settings

Choose the same reading behavior in either editor. Review the files and language overrides before pasting.

What this controls. The card sets display wrapping and guides. It does not reformat files, add newlines, or prove that every language should use the same column.

Sources and limits

Open the source log
  1. Visual Studio Code 1.139 release notes, "Word wrap indicators", released September 23 and read September 27, 2026. It documents the new continuation arrow. This page did not benchmark the editor.
  2. Visual Studio Code docs, "How do I turn on word wrap?", read September 27, 2026. It documents editor.wordWrap, rulers, selection behavior, and logical-line cursor movement.
  3. Zed settings reference, "Soft Wrap", read September 27, 2026. It documents soft_wrap, preferred_line_length, show_wrap_guides, and wrap_guides.
  4. W3C WAI, "Understanding Success Criterion 1.4.10: Reflow", read September 27, 2026. It explains the 320 CSS pixel and 400 percent zoom test and the reading cost of two-dimensional scrolling.

Source boundary. The editor behavior comes from vendor documentation. The accessibility argument comes from W3C guidance for web content. The rail is a teaching preview. It approximates character wrapping and does not inspect your editor, font metrics, formatter, or files.