TinyTeXはTeX LiveベースのLaTeXディストリビューションで、必要最小限の機能に絞ってインストールするので通常3時間くらいかかる1LaTeXのインストールが10分くらいで終わる。
そして何よりRと相性が良い。というかRで完結するので、Rのパッケージくらいの気持ちでLaTeXを扱える。そして私はR以外でLaTeXを使うつもりがないので、この記事でR以外の話はしない。
インストール(Rユーザー向け)
Rで以下の2行を実行するだけ。超簡単。
install.packages(c('tinytex', 'rmarkdown'))
tinytex::install_tinytex()
R以外のユーザー向けにコマンドラインからのインストール方法もあるらしいけど試してないので詳しくは本家Webサイトで確認を。
R Markdownで日本語を使う
おそらくTinyTeXのインストールで6分くらい使ったと思うので、まだ4分くらい残ってるはずだ。残りの時間を日本語の設定にあてよう。
日本語はそのままでは通らないけど、フォントのインストールと少しの設定で使えるようになる。
- ダウンロード(Download) | IPAexフォント/IPAフォントからIPAexフォントをダウンロードしてインストール
- YAMLフロントマターに以下の内容を記述(参考: Rmarkdownで日本語PDFを出力する - Qiita)
- 注: bookdownを使うことを想定している。
---
site: bookdown::bookdown_site
output:
bookdown::pdf_book:
latex_engine: xelatex
pandoc_args: --top-level-division=chapter
documentclass: bxjsbook
classoption: xelatex,ja=standard
geometry: no
---
あとはビルドするだけ。
ハマったところ
! Package fontspec Error: The font "ipaexm" cannot be found.
ipaexm
を探しに行ってしまうが、実際にはipaex
をインストールする必要がある。Rのコンソールで以下を実行し、手動でインストールする。
tinytex::tlmgr_install("ipaex")
! LaTeX Error: Option clash for package geometry.
geometryを重複して読み込んでいるのが原因らしい。pandocの--templete引数以下に書いてある場所にあるファイルを開いて、geometry読み込み部分をコメントアウトする。
$if(geometry)$
%\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry}
$endif$
-
最近LaTeXインストールした記憶が無いので実際どれくらいかかるのかは知らない… ↩