MD085 - Paragraph continuation lines should not be indented¶
Aliases: paragraph-continuation-indent
Disabled by default. This rule is opt-in: enable it explicitly with
extend-enable.
What this rule does¶
Removes leading whitespace from every line of a top-level paragraph after the first.
CommonMark strips that whitespace before rendering, so it never reaches the output. It only survives in the source, where it makes otherwise identical paragraphs look different depending on how they were edited.
The first line of a paragraph is never touched: its indentation is what decides which block the paragraph is, so it is structure rather than free whitespace.
Why this matters¶
- Consistency: The same paragraph reads the same way regardless of which editor, wrapper, or paste produced it.
- Reviewable diffs: Re-wrapping a paragraph stops producing whitespace-only changes on lines whose text did not move.
- No rendered difference: Because the renderer already discards it, removing the indentation cannot change how the document looks.
Examples¶
Incorrect¶
Correct¶
Configuration¶
This rule has no options.
What this rule leaves alone¶
Indentation is structural nearly everywhere else in Markdown, and removing it would reparent or end the construct. The rule therefore only applies to paragraphs that no container owns. It never touches:
- list item content, including lazy continuation lines
- blockquotes and their lazy continuation lines
- tables, footnote bodies and definition lists
- code blocks, both fenced and indented, and HTML, math and front matter blocks
- MkDocs admonitions and content tabs, Pandoc/Quarto divs, MyST directives and the other flavor-specific containers
- the interior of a code span that spans more than one line, where the leading whitespace is span content
Only spaces and tabs are removed. Other Unicode whitespace, such as a non-breaking space or an ideographic space, renders as a visible character, so it is content rather than indentation and stays where it is.
A continuation line indented four or more spaces is rewritten, because an indented code block cannot interrupt a paragraph: those spaces are prose, and removing them renders identically.
A continuation line that would start a block once its indentation is gone is left
alone, because there the indentation is the only thing keeping the line part of
the paragraph. That covers a line beginning with #, >, -, +, *, _,
=, `, ~, <, |, [, {, :, $, !, % or a digit. The list
does not depend on the flavor in force, because a document is often read by more
than one tool and a marker that is inert to one is structural to the next.
This paragraph continues
- and this line stays indented, because at the margin it would become a list.
Everything under a line that begins with < is left alone until the next blank
line, because an HTML block runs to that blank line however its tags are arranged
and the whitespace inside it is the author's.
Hard line breaks are unaffected. The rule only removes leading whitespace, so a two-space or backslash break at the end of the previous line survives.
Automatic fixes¶
This rule removes the leading whitespace from each flagged line. Run:
Related rules¶
- MD005 - Consistent list indentation
- MD007 - Unordered list indentation
- MD009 - No trailing spaces
- MD013 - Line length, whose reflow modes rewrap paragraphs as a whole
Rationale¶
The rule is opt-in because the indentation is harmless: it renders identically either way, and some authors add it deliberately to mark continuation lines in the source. Projects that want a single source form for paragraphs can enable it; projects that do not care lose nothing by leaving it off.