Indented code blocks
An indented code block is composed of one or more indented chunks separated by blank lines. An indented chunk is a sequence of non-blank lines, each indented four or more spaces. The contents of the code block are the literal contents of the lines, including trailing line endings, minus four spaces of indentation. An indented code block has no info string.
An indented code block cannot interrupt a paragraph, so there must be a blank line between a paragraph and a following indented code block. (A blank line is not needed, however, between a code block and a following paragraph.)
Example 77
| Markdown | HTML | Demo |
|---|---|---|
|
|
If there is any ambiguity between an interpretation of indentation as a code block and as indicating that material belongs to a list item, the list item interpretation takes precedence:
Example 78
| Markdown | HTML | Demo |
|---|---|---|
|
|
Example 79
| Markdown | HTML | Demo |
|---|---|---|
|
|
The contents of a code block are literal text, and do not get parsed as Markdown:
Example 80
| Markdown | HTML | Demo |
|---|---|---|
|
|
Here we have three chunks separated by blank lines:
Example 81
| Markdown | HTML | Demo |
|---|---|---|
|
|
Any initial spaces beyond four will be included in the content, even in interior blank lines:
Example 82
| Markdown | HTML | Demo |
|---|---|---|
|
|
An indented code block cannot interrupt a paragraph. (This allows hanging indents and the like.)
Example 83
| Markdown | HTML | Demo |
|---|---|---|
|
|
However, any non-blank line with fewer than four leading spaces ends the code block immediately. So a paragraph may occur immediately after indented code:
Example 84
| Markdown | HTML | Demo |
|---|---|---|
|
|
And indented code can occur immediately before and after other kinds of blocks:
Example 85
| Markdown | HTML | Demo |
|---|---|---|
|
|
The first line can be indented more than four spaces:
Example 86
| Markdown | HTML | Demo |
|---|---|---|
|
|
Blank lines preceding or following an indented code block are not included in it:
Example 87
| Markdown | HTML | Demo |
|---|---|---|
|
|
Trailing spaces are included in the code block’s content:
Example 88
| Markdown | HTML | Demo |
|---|---|---|
|
|