開発者向け
mdbookは主にコマンドラインツールとして使われますが、内部のライブラリーを直接取り込み、本を管理するために使うこともできます。また、柔軟なプラグインの仕組みがあるため、本を分析したり別の形式へ出力したりする必要がある場合は、独自のツールや、本を処理するもの(通常はバックエンドと呼びます)を作れます。
開発者向けの章では、mdbookの高度な使い方を説明します。
開発者が本のビルド処理へ介入する、主な方法は次の2つです。
ビルド処理
本のプロジェクトを表示形式へ変換する処理は、いくつかの工程を経ます。
- 本を読み込みます。
book.tomlを解析します。存在しなければ、既定のConfigを使います。- 本の各章をメモリーへ読み込みます。
- 使うプリプロセッサーとバックエンドを見つけます。
- 各バックエンドについて、次の処理を行います。
- すべてのプリプロセッサーを実行します。
- バックエンドを呼び出し、処理した結果を出力します。
mdbookをライブラリーとして使う
mdbookバイナリーは、内部のmdBookクレートを包み、その機能をコマンドラインのプログラムとして提供するものです。プログラムからmdBookを操作するには、[mdbook-driver]クレートを使えます。独自の機能を追加したり、ビルド処理を調整したりできます。
mdbook-driverクレートの使い方を知るには、API文書を見るのが最も簡単です。最上位の文書では、MDBook型で本を読み込み、ビルドする方法を説明しています。configモジュールでは、設定システムについて詳しく説明しています。