macOSへのPandocのインストールと日本語を含むPDFの生成。
[2018/09/18 追記]
- 不要な
-s
オプションを削除 - wkhtmltopdf を使用する例を追加
目次#
Pandocのインストール#
Homebrewでインストールしてもいい((最近はバイナリがインストールされるので遅くはないはず))と思うが、公式サイトでパッケージからの手順が紹介されているので、公式パッケージからインストール。
パッケージからインストールする。
Releases · jgm/pandoc · GitHub
拡張子が.pkg
のファイルをダウンロードしてダブルクリック。あとは画面の支持に従う。
途中でパスワードを要求されるのでログインする際のパスワードを入力。
MacTex(BasicTexパッケージ)のインストール#
PDFへの変換にLuaTexが必要らしいのでMac向けのTexLiveパッケージのうち軽量版であるMacTexのBasicTexパッケージをインストールする。LuaTexでなくても変換はできるはずなので別途確認予定。
More Packages - MacTeX - TeX Users Group
環境変数PAHTに/usr/local/texlive/2018basic/bin/x86_64-darwin/
を追加する。
~/.bashrc
に下記を追加。
export PATH=/usr/local/texlive/2018basic/bin/x86_64-darwin/:$PATH |
最新版へのアップデートと日本語用パッケージを追加。
sudo tlmgr update --self --all |
tlmgr update
は結構時間がかかる。他にも使用する機能によっては追加のパッケージのインストールが必要。面倒ならBasicTexではなく通常版(4GBぐらい)を
インストールする。
参考:Mac に最小限の LaTeX 環境を導入する(2018年版) - Qiita
PDF生成#
適当な内容でMarkdownのテキストを用意する
# 見出し1 |
pandoc+luatexによるPDF変換#
PDF変換のバックエンドとしてLuaTexを指定する場合のメモ。
pandoc test1.md -f markdown -o test1.pdf --pdf-engine lualatex |
オプションを指定しないと日本語が表示されず、[WARNING] Missing character: There is no * (U+****) in font [lmroman12-bold]:+tlig;!
という警告が表示される(*の部分は文字によって変わる)。
pandoc test1.md -f markdown -o test1.pdf --pdf-engine lualatex -V documentclass=ltjarticle |
HTML形式にの場合にdiv
タグに変換されるnative_divs
拡張の部分(コロン3つで囲んだ部分)は特別扱いされていない。
luatexのエラーと対処#
Error producing PDF. |
上記のエラーはlm-math
パッケージをインストールすると解決する。
Pandocのアンイストール#
公式パッケージからインストールした場合のアンイストール方法。
公式サイトからアンイストール用のPerlスクリプトを入手。
wget https://raw.githubusercontent.com/jgm/pandoc/master/macos/uninstall-pandoc.pl |
ダウンロードしたスクリプトを実行する。パスワードを聞かれるので実行したユーザーのパスワードを入力する。
途中でアンイストールしてよいかどうか、確認メッセージが表示されるので”y”と入力。
perl uninstall-pandoc.pl |
以下は実行ログ。
The following files will be deleted: |
別解#
デフォルトではTeXを使わずにwkhtmltopdfを使う。必要なディスク容量はこちらのほうが少ない。
細かく外観をいじりたいなら、TeXを使用する方法がベター。
縦書きに対応できるかは試していない。
brew cask install wkhtmltopdf |
実行方法#
wkhtmltopdf
を呼び出したい場合は-t html
で内部的にHTMLにする。
pandoc sample.md -f markdown -t html -o test2.pdf |
もしくは、明示的に--pdf-engine wkhtmltopdf
とする。
pandoc sample.md -f markdown -o test3.pdf --pdf-engine wkhtmltopdf |
リンク#
以下参考になりそうなエントリ各種。