コードブロックしたい(code-block

1```言語
2コード
3```

コードブロックはMarkdown記法の```言語名を使って挿入できます。

参考

MySTを使っている場合コロンフェンス(:::)でディレクティブ宣言を代用できるオプションがあります。 コードの中にコードを書く場合など、入れ子になったディレクティブを記述する場合にとても便利です。

1# conf.py
2myst_enable_extensions = [
3    "colon_fence",
4]
5

シンタックスハイライトしたい

1# conf.py
2pygments_style = "sphinx"

シンタックスハイライトにはPygmentsというPythonモジュールが使われています。 pygments_styleを使って色使いを変更できます。 デフォルトはsphinxになっています。

指定可能なプログラミング言語はPygmentsのAvaileble lexersで確認できます。 知らない言語もたくさん列挙されていて、眺めるだけでもおもしろいです。

行番号を表示したい(linenos

1```{code-block} python
2---
3linenos: true
4---
5import pandas as pd
6data = pd.read_csv("example.csv)
7```

linenosオプションで、行番号を表示できます。 オプションを有効にする場合はcode-blockディレクティブを使います。

注釈

conf.pymyst_number_code_blocks = ["言語"]を設定すると、ドキュメント全体を変更できます。

1myst_number_code_blocks = [
2    "bash",
3    "python",
4    "dockerfile",
5]

参考

reST形式で書くと次のようになります。

1.. code-block: python
2   :linenos:
3
4   import pandas as pd
5   data = pd.read_csv("example.csv")

特定の行をハイライトしたい(emphasize-lines

1```{code-block} python
2---
3emphasize-lines: 1,3,9-20
4---
5import pandas as pd
6data = pd.read_csv("example.csv)
7```

emphasize-linesオプションで、特定の行をハイライトできます。 複数行を飛び飛びで指定する場合は,(カンマ)で区切ります。 連続で指定する場合は-(ハイフン)で接続します。

キャプションをつけたい(caption

1```{code-block} python
2---
3caption: コードサンプルのキャプション
4---
5import pandas as pd
6data = pd.read_csv("example.csv)
7```

コードを参照したい(name

1```{code-block} python
2---
3name: ラベル名
4---
5import pandas as pd
6data = pd.read_csv("example.csv)
7```

リファレンス