MacでPandocを使ってMarkdownをpdfに変換
Pandocとは
Pandocはマークアップ形式のファイルを別の形式に変換するコマンドラインツール。
If you need to convert files from one markup format into another, pandoc is your swiss-army knife.
Pandoc - About pandoc
例えば、
$ pandoc input.md -s -o output.html
とすると、markdown
からhtml
に変換できる。
今回はmarkdown
からpdf
に変換するための諸々のインストールを行った。
環境
- macOS Sierra (10.12.2)
Pandocをインストール
Homebrewでインストールできる。
$ brew install pandoc
そのままpdfを出力しようとするとエラー。
$ pandoc input.md-o output.pdf
pandoc: pdflatex not found. pdflatex is needed for pdf output.
日本語LaTeX環境をインストール
BasicTeX
MacTex
(macOS用のTeXディストリビューション)はサイズがでかいのでBasicTeX
をインストールする。
BasicTeX は TeX Live のサブセットで,macOS 専用の TeX ディストリビューションです。 BasicTeX は TeX Live の scheme-small に対応し,LaTeX の文書作成に必要な最低限のパッケージと pdfTeX,LuaTeX,XeTeX などが含まれています。 BasicTeX には e-pTeX や e-upTeX が含まれていませんので,日本語の LaTeX 文書を作成するためには別途 collection-langjapanese をインストールします。 collection-langjapanese をインストールすれば,jsclasses や OTF, BXjscls も利用可能になります。
BasicTeX - TeX Wiki
$ brew cask install basictex
.bash_profile
に以下を追記してパスを通す。
export PATH=/Library/TeX/texbin:$PATH
最新版にアップデート。
$ sudo tlmgr update --self --all
以下を参考に、日本語環境その他をインストール。
TeX Live の collection-langjapanese には LuaTeX-ja も含まれています。 しかし,BasicTeX + collection-langjapanese だけでは ltjsarticle.cls などを使った文書をタイプセットすることができません。 LuaTeX-ja を実際に使用するには,別途 collection-luatex (ctablestack.sty etc.) や collection-latexextra (filehook.sty etc.) などいくつかのパッケージを追加する必要があります。
BasicTeX - TeX Wiki
$ sudo tlmgr install collection-langjapanese collection-luatex collection-latexextra
変換
以下のオプションを追加して実行すると日本語のpdfファイルに変換できた。
$ pandoc input.md -o output.pdf -V documentclass=ltjarticle --latex-engine=lualatex