Skip to main content

ファイルごとの設定 - Front Matter

コード

ファイルの先頭に --- で囲われたブロックで、設定を書くもの

md
---
id: intro
title: はじめに
sidebar_label: Introduction
sidebar_position: 1
tags: [getting-started]
description: Docusaurus の紹介ページです
slug: /intro
hide_title: false
draft: true
---

区切りの --- は3文字固定。

項目

項目内容
id階層気にせずリンク貼りたいとき用か
title# で指定した名前から変えたい場合に使用?
hide_titletitle 指定したが これは出さず、# のタイトルを出したいとき true にする?
sidebar_labelサイドバー上での名前を 件名と分けたい場合
sidebar_position並び順の指定
tagsタグ。自動でリンクが作られる
descriptionindex.md を自動生成している場合はそこで使われる。
ない場合は本文の先頭が出るよ。h2出て不格好
meta descriptionにも使われるので、SEO的に良いのかも
slugURL文字列をカスタマイズしたいとき用
drafttrue で下書きになる。本番モードで出なくなる。
つまり run start では見えるけど、run build では出さない

自分的 ラベル

  • ◎ : よく使う
  • ○ : 応用的

自分的 運用方針

方針

  • 書き過ぎはメンテが面倒なので、最小限にする
  • せっかく気軽に書くため用意した仕組みを、ルールで億劫にさせるのはよくない

各項目の使い方

  • title → 使わない
    • h1 (#) との使い分けが混乱のもととなりそう
    • サイドバー用なら sidebar_label を使う
  • sidebar_position → 手で書かない
    • ファイル名の先頭をパースして差し込む。を npm run 時に自動化
  • slug → 使わない
    • ファイル名に任せる
    • そのために、ファイル名は日本語禁止

おまけ: 表記ブレ確認用

  1. sidebar_label : サイドバーで一覧が見れる
  2. ファイル名 : エディタないしエクスプローラで一覧が見れる
  3. 🙅 件名(h1) : 一覧に出てこない

という訳で、件名は grep で見るなどしよう

bash
grep -m 1 '^# ' *.md | awk -F: '{ print $2 }'

脱線: 用語について

front matter という言葉自体は、もともとは出版用語のようで、表紙/奥付/謝辞/目次/序文/序論 を表すものだったらしい

そう考えると、日本語でもひとことで あってよさそうな気もするけど、見つからず。前付け(まえづけ)?