Skip to content

MkDocs のコードハイライトでブロック毎に行番号表示する・しないを制御する

MkDocs ではコードをハイライトして表示することが出来ます。 また、コードハイライトを行う際に行番号を表示することが出来ます。 今回は「普段は行番号を表示しつつ、特定のコードブロックのみ、行番号を表示しない」方法をメモしておきます。

MkDocs で Pygments を使い、コードハイライトを有効にするには mkdocs.yml で以下のように use_pygments: true を設定します。 また、デフォルトで行番号を表示するには linenums: true を指定します。

1
2
3
4
5
6
markdown_extensions:
  - pymdownx.highlight:
      linenums: true
      noclasses: true
      pygments_style: xcode
      use_pygments: true

行番号を表示する

mkdocs.yml で全体的に行番号表示を有効化 (linenums: true) している場合、明示的に指定しない場合は行番号が表示されます。

file

上記のように記載した場合、実際には以下のように行番号が表示されます。

1
2
3
4
def greeting():
    print("Hello, World")

greeting()

行番号を表示しない

mkdocs.yml で全体的に行番号表示を有効化 (linenums: true) している場合でも「行番号を表示したく無い」場合は linenums="0" を指定します。

file

上記のように記載した場合、実際には以下のように行番号が表示されなくなります。

def greeting():
    print("Hello, World")

greeting()