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 でバッククオートを含むインラインコードを書くには」に載っていた。
インラインコードの先頭か末尾にバッククオートがある場合は、コードを囲むバッククオートと区別するためにスペースを入れる(レンダリング結果にスペースは含まれない)。
ここに書かれている通り、エスケープするバッククォートの前に空白を含めてみるとどちらでも上手く表示された。
`` `a``, `` `b``
結果: `a
, `b
参考
- Markdown記法 チートシート - Qiita(「Code - コードの挿入」のインライン表示に関するとこ)
- Markdown でバッククオートを含むインラインコードを書くには - Qiita