Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Pandocでドキュメント変換で楽する

pandocはmarkdownだろうがtexだろうが問答無用で任意形式に変換する鬼ツールです。
markdownファイルを一個つくれば

  • pdf化
  • プレゼン資料
  • 忌々しいオフィスソフトを開かずともodtやdocファイルを生成

といった事ができます。
org-modeみたいですが、vimIDEな方にも抵抗無くお使い頂けます。

インストール

Pandoc - Installingから導入します。
WindowsLinuxもあります。
Macならpkg形式で入っています。
もちろん、公式でも撒いているのですが
...実装が最終関数言語Haskellなので、根性座っている方は挑戦してみては(震え声

入出力形式

pandocのhelpを確認すると

$ pandoc --help
pandoc [OPTIONS] [FILES]
Input formats:  docbook, haddock, html, json, latex, markdown, markdown_github,
                markdown_mmd, markdown_phpextra, markdown_strict, mediawiki,
                native, opml, rst, textile
Output formats: asciidoc, beamer, context, docbook, docx, dzslides, epub, epub3,
                fb2, html, html5, json, latex, man, markdown, markdown_github,
                markdown_mmd, markdown_phpextra, markdown_strict, mediawiki,
                native, odt, opendocument, opml, org, pdf*, plain, revealjs,
                rst, rtf, s5, slideous, slidy, texinfo, textile
                [*for pdf output, use latex or beamer and -o FILENAME.pdf]

などと、カバー域はどうかしているレベルに達しています。
...なんだかorg-modeの入力にも対応するとか何とか。
ま、マジですか(震え声

実例(OS X環境)

以下、README.mdというmarkdownファイルを用意した状態を前提として話を進めます。

githubっぽいレイアウトにする

markdownをhtml化すると、どうも芋臭い感じになってしまいます・
有り難い事にレイアウト用cssを配布されています。
これをcurlで引っ張って来た後...

$ curl https://gist.github.com/andyferra/2554919/raw/2e66cabdafe1c9a7f354aa2ebf5bc38265e638e5/github.css -o github.css

適用します。

$ pandoc README.md -c github.css -s -o output.html && open output.html

こんな感じで、ちゃんとソースコードを枠で囲ってくれるようになります。
f:id:shuzo_kino:20140216220619p:plain

その他

その他、愉快な例は公式のサンプルページに一通り揃っています。
脳からアブナいお汁が漏れ出て来て大変良い感じです。