4.4字下げによるコードブロック
字下げによるコードブロックは、空行で区切られた1個以上の字下げされたまとまりからなります。字下げされたまとまりとは、各行が4個以上のスペースで字下げされた、空行ではない行の並びです。コードブロックの内容は、末尾の行末も含む各行の文字どおりの内容から、字下げの4個のスペースを取り除いたものです。字下げによるコードブロックには情報文字列はありません。
字下げによるコードブロックは段落を中断できないため、段落と、その後に続く字下げコードブロックの間には、空行が必要です。ただし、コードブロックと、その後に続く段落の間に空行は必要ありません。
字下げをコードブロックとして解釈することと、内容がリスト項目に属すると解釈することの両方が可能な場合は、リスト項目としての解釈が優先されます。
コードブロックの内容は文字どおりのテキストで、Markdownとして解析されません。
次の例には、空行で区切られた3つのまとまりがあります。
4個のスペースによる字下げを超えて先頭にあるスペースやタブは、内容に含まれます。ブロック内部の空行でも同様です。
字下げによるコードブロックは、段落を中断できません。このため、ぶら下げ字下げなどを使えます。
ただし、空行ではない行の字下げが4個のスペースより少なければ、その時点でコードブロックは終わります。したがって、字下げコードの直後に段落を置けます。
また、字下げコードは、ほかの種類のブロックの直前や直後にも置けます。
# Heading
foo
Heading
------
foo
----
<h1>Heading</h1>
<pre><code>foo
</code></pre>
<h2>Heading</h2>
<pre><code>foo
</code></pre>
<hr />
最初の行の前には、4個を超えるスペースによる字下げを置けます。
字下げコードブロックの前後の空行は、ブロックには含まれません。
末尾のスペースやタブは、コードブロックの内容に含まれます。