MacでPandocを使ってMarkdownをpdfに変換

Posted: | Tags: Mac

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

関連カテゴリー

関連記事