CHROMA

世の中の "当たり前" を確認する

Markdown 、インラインコードにバッククォートを含める

下の文章がなんか長くなったけど、結論は以下の 2つ。

  • エスケープしたいバッククォートよりも数が多いバッククォートでコードを囲むことで、インラインコードにバッククォートを含めることができる
  • 先頭か末尾にバッククォートを含めたいときはコードを囲むバッククォートとの間に空白を一つ含める
途中にバッククォートを含める場合:
`` hoge `foo` bar``

結果(途中に含める): hoge `foo` bar

先頭や末尾にバッククォートを含める場合:
`` `hoge``, `` `foo` ``, ``bar` ``

結果(先頭や末尾に含める): `hoge, `foo`, bar`


この記事を書くのにいろいろ試してみたので、それを残しておく。

Markdown で文章を書くとき、インラインコード内でバッククォートをエスケープするには同じくバッククォートを使うみたい。バックスラッシュだと思ってた。

インラインコードがn個連続するバッククオートを含む場合、n+1連続のバッククオートで囲みます。

Markdown記法 チートシート - Qiita(「Code - コードの挿入」のインライン表示に関するとこ)

この方法でやってみると、はてなブログでは「`a」と単体で出したいときは予想通りの表示が得られる。Qiita や Gist では上手く表示されない。

```a``

結果: `a

はてなブログでもエスケープ処理したインラインコードを同じ段落内に並べると上手く表示されない。本当は「`a, `b」と出したいのに。

```a``, ```b``

結果: a``,b``

ちなみに一行目の末尾に空白を加えて改行をしても表示は崩れる。

```a``,  
```b``

結果:

a``, b``

Qiita や Gist でもバッククォートを上手く出したり、はてなブログで同じ段落内に複数のバッククォートを含むインラインコードを並べたい場合はどうするか。それは Qiita の「Markdown でバッククオートを含むインラインコードを書くには」に載っていた。

インラインコードの先頭か末尾にバッククオートがある場合は、コードを囲むバッククオートと区別するためにスペースを入れる(レンダリング結果にスペースは含まれない)。

Markdown でバッククオートを含むインラインコードを書くには

ここに書かれている通り、エスケープするバッククォートの前に空白を含めてみるとどちらでも上手く表示された。

`` `a``, `` `b``

結果: `a, `b

参考