14 製本方法の詳細
冒頭のチュートリアルで行った製本 (ビルド) の仕組みをもう少し詳しく解説する.
bookdown-demo を念頭に置いた解説. rmdja も基本的に同じ.
index.Rmd: デフォルトで最初に読み込まれるRmdファイル (名前を変える機能もあるが, 現時点では不具合が起こりやすいのでおすすめしない)- それ以外の
Rmdファイル: 連結して読み込むことが可能 _output.yml: マルチメディア展開のための設定. PDF, HTML, EPUB それぞれの設定を書く_bookdown.yml: bookdown のレイアウト設定- その他の設定ファイル: その他製本に必要なもの, 画像ファイル,
.cssファイル,.bib等
_output.yaml, _bookdown.yml は index.Rmd のヘッダに書くこともできるが, 長くなりすぎるので分割できる. bookdown::render_book() 関数は, ルートディレクトリのこれらを自動で読み込んでくれる.
14.1 ファイル構成
これらのファイルの中身を解説する.
14.1.1 _output.yml
本来の YAML の output: 以下の記述をこの _output.yml ファイルに書くことができる.
output: を複数書くとrmarkdown::render_site() やビルドツールでそれぞれの形式に一括作成してくれる.
output:
bookdown::gitbook:
lib_dir: assets
split_by: section
config:
toolbar:
position: static
bookdown::pdf_book:
keep_tex: yes
bookdown::html_book:
css: toc.css
documentclass: book詳しくは BKD “Ch. 3 Output Formats” の章を.
14.1.2 _bookdown.yml
_bookdown.yml も index.Rmd の YAML ヘッダの bookdown: 以下に対応する内容を書くことができる. 例えばどの Rmd ファイルを読み込むかとか, LaTeX のときだけ, HTML のときだけ読み込むような設定も可能.
https://ill-identified.hatenablog.com/entry/2020/09/05/202403
詳しくは, BKD Ch. 4.4 Configuration
Build ペーンから文書をビルドするには, index.Rmd のYAML ヘッダに site: bookdown::bookdown_site を書く必要がある. さらに, index.Rmd をプロジェクトディレクトリのルートに置いていない場合は, ツールバーの Build -> Configure Build Tools... から index.Rmd を置いているディレクトリを site ディレクトリとする設定が必要になる(図 14.1, 14.2).
図 14.1: Build ペーンの手動設定
図 14.2: Build ペーンの手動設定
または, bookdown::render_book("index.Rmd", "rmdja::pdf_book_ja") などでも実行できるから, コマンドラインからも実行できる. 同時製本は rmarkdown::render_site().