Docs for MkDocs¶
https://qiita.com/cleantted/items/0eff40f48abd9eea3a6c
Material for MkDocs は MkDocsのテーマの1つです. 率直に言って、標準のテーマやreadthedocsもイマイチなので、テーマを自作しないのであればMaterialテーマ1択だと思います.このドキュメントではMaterialテーマを使用することを前提とします.
1 2 |
|
カラー¶
テーマカラーを指定できます.指定できるカラーは次のとおりです.
1 2 3 4 5 |
|
テーマカラーは theme.palette.primary
で指定します.
1 2 3 |
|
ライトテーマやダークテーマといったようにテーマを切り替えるボタンを追加できます. 次のように指定します.
1 2 3 4 5 6 7 8 9 10 11 |
|
検索ボックスの左側にテーマを切り替えるボタンが追加され、ボタンを押すとテーマを切り替えることができます. 各テーマごとに色をcssで調整することもできます.
1 2 3 4 5 6 7 |
|
フォント¶
通常フォントと固定幅フォントをそれぞれ指定できます.フォントはGoogleFontにあるものを指定できます. 必要なcssファイルも自動で設定してくれますので、カスタムcssで登録する必要はありません.
1 2 3 4 |
|
言語¶
複数の言語を指定できます.
1 2 3 4 5 6 7 8 |
|
検索ボックスの隣に言語を切り替えるボタンが追加されます.各ドキュメントはリンク先になるように配置すればよいようです.
ロゴ、ファビコン、ホームページ¶
それぞれ、次のように設定できます.
1 2 3 4 5 6 |
|
クッキー使用の同意¶
一般データ保護規則(GDPR)によりEU圏内からのアクセスがあった場合にサイトでCookieを利用して情報収集している場合は確認を取る必要があります.Googleアナリティクスなどを使用していれば必要になります. Materialテーマにはクッキーの使用について同意するポップアップを表示する機能が用意されています.使い方は次のようになります.
1 2 3 4 5 6 7 8 |
|
標準でGoogleアナリティクスとGitHubが有効になっています.追加したい場合は extra.content.cookies
で指定します.
1 2 3 4 |
|
他に、ポップアップのボタンをカスタマイズできます.通常は「承認」と「管理」が表示されます.それ以外だと「拒否」があります.
1 2 3 4 5 6 |
|
ナビゲーション¶
タブ¶
タブは theme.features
で有効にします.
1 2 3 |
|
トップレベルのセクションがタブになります.画面をスクロールするとタブ画面が隠れますが、常に表示したい場合は navigation.tabs.sticky
を追加します.
1 2 3 4 |
|
セクションの折り畳み¶
階層が深いコンテンツの場合、サイドバーにあるセクション一覧で折り畳む機能が入っています.それを無効にして全てフラットに表示したい場合、navigation.sections
を指定します.
1 2 3 |
|
また、navigation.expand
を指定すると、最初からすべて展開された状態になります.
1 2 3 |
|
セクションごとにインデックスページを指定する場合、navigation.indexes
を指定します.
1 2 3 |
|
ドキュメントの構成は次のようにします.
1 2 3 4 5 |
|
この場合、section/index.md
がセクションの項目に統合されます.
トップに戻るボタン¶
navigation.top
を追加します.確認したところ、常時ではなく上方向にスクロールしたときに表示されます.
1 2 3 |
|
サイドバーを無効化¶
タブを有効にしているなど、サイドバーを無効にしたい場合、コンテンツ側で次のように指定します.
1 2 3 4 |
|
検索¶
プラグインとして実装されました.検索プラグインは標準で入っています.日本語検索を有効にする場合は次のようにします.
1 2 3 |
|
Googleアナリティクス¶
Googleアナリティクスは次のように設定します.
1 2 3 4 |
|
ブログ¶
まだ実験段階ですが、ブログ機能がプラグインとして実装されているようです.今はスポンサーのみ使用することができるようです.興味のある人はSetting up a blogを参照してください.
ヘッダーとフッター¶
タイトルバー¶
タイトルバーは常時表示されますが、header.autohide
を有効にすることで隠れるようになります.
1 2 3 |
|
ソーシャルリンク¶
TwitterやFacebook、GitHubなどのアイコンを設定できます.
1 2 3 4 5 6 7 |
|
著作権表記¶
次のように指定します.最初に ©
とする場合はダブルクォーテーションで囲みます.
1 2 |
|
ジェネレータの表記¶
フッターにMkDocsで生成されたことが自動で表示されますが、これを非表示にできます.
1 2 |
|
Prev/Nextリンクの非表示¶
各ページには前/次のページリンクが表示されますが、これを非表示にしたい場合、ページ側で指定します.
1 2 3 4 |
|
Gitリポジトリリンクの設定¶
右上にGitリポジトリのリンクを追加できます.自動でスター数とフォーク数が表示されます.
1 2 |
|
アイコンを変更したい場合、次のようにします.
1 2 3 |
|
例えば、GitLabアイコンにしたい場合は次のようになります.
1 2 3 |
|
コメント機能¶
giscusがサポートされています.手順としては次のようになります.
- 対象のリポジトリのgiscusアプリをインストールする(GitHubをフリー版で利用しているならパブリックである必要があります)
- リポジトリのDicussionを有効にします
- giscusページで必要な情報を入力します.設定は特に必要がなければ初期のままでいいです.「giscusを有効にする」のところに表示されるコードをコピーする.
- カスタムテーマを有効にする
- コメントのテンプレートを編集してペーストする
カスタムテーマを有効にするには次のようにします.
1 2 |
|
コメントテンプレート(overrides/partials/comments.html)ファイルを作成して、以下をペーストします.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
|
このコードにある <!-- Insert generated snippet here -->
の下に、giscusでコピーしたコードをそのまま貼り付けます.これで設定完了です.
GitHub Pages で公開¶
GitHub Actionを使ってリポジトリからビルドして公開するには、GitHub Actionのワークフローファイル(.github/workflows/ci.yml)を作成します.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
CIが正常終了すれば、<username>.github.io/<repository>
に配置されます.