見出し画像

VSCodeでPandoc3の使い方(Windows/Mac)おすすめ本!?

Pandocの使い方、覚書です。電子書籍作成にも便利ですよね。

2023年にPandocも3になりましたね。

昔に書いた記事ですが、少し整理してnoteに掲載します。


Pacdocの使い方のおすすめ本!?電子書籍

Pandocはわりといろいろな知識が要求されますね。ただ、どこまで使うかによります。コンバートするだけなら簡単なので本はなくても大丈夫です。ノンプログラマーでもできるでしょう。

ただエンジニアさんはいろいろと拡張して遊べそうです。基本的に使いやすいですかね。

Pandocのみの解説本は日本語書籍はでておらず、こちらの洋書です。

Markdownの書籍でも少しだけ紹介されていました。優しい本です。

コンバーターを書きたい場合は、Pandocはbatやシェルスクリプトの知識があると、いろいろ自動化できます。

ただ、batはWindowsのみ、シェルスクリプトはMacのみです。そのため、マルチプラットフォームに対応できるNode.jsの方がおすすめです。node.jsの本はこちらです。個人的にも現在、node.jsでコンバーターを書いています。

拡張したい場合はLuaの知識が必要になります。

昔の本はプレミアム価格になっているようです…。電子書籍ではありません。…2008年出版ですからね。

最新の本は2024年版がありましたね。ゲーム用のですけど…。

Luaはゲームの組み込みスクリプトとして有名ですからね。

VSCodeでPandoc3の使い方(Windows/Mac)

Pandocとは

Pandocはコンバーターです。公式サイトをみるとhtmlやePUBのエクスポートに対応しているのがわかります。

Wikidediaをみると、John MacFarlaneさんが作ったようです。エンジニアとは書かれておらず、哲学科の教授という点が興味深いです。University of California, Berkeleyの所属のようです。

プラグインはスクリプト言語でおなじみのLuaで記述可能と書かれています。

Pandocのインストールの確認

ここからはVsCodeなどのエディタでターミナル操作です。

まず、一応、Pandocが入っているかを確認しましょう。typoraのようなPandocを使っているマークダウンエディタが入っているとすでにインストール済みの可能性があります。

pandoc -v

$ pandoc -v
pandoc 2.10.1
Compiled with pandoc-types 1.21, texmath 0.12.0.2, skylighting 0.8.5
Default user data directory: /Users/neru/.local/share/pandoc or /Users/neru/.pandoc
Copyright (C) 2006-2020 John MacFarlane
Web: https://pandoc.org
This is free software; see the source for copying conditions.
There is no warranty, not even for merchantability or fitness
for a particular purpose.

Pandocのインストール

pandocはインストーラーでインストールするのが楽です。

  1. pandoc-X.X.XX-windows-x86_64.msiをダウンロード(MacはMacの場合、pandoc-X.XX.X-macOS.pkgをダウンロードします。)

  2. インストール(特に迷うところはない)

  3. 再起動はたぶん必要だったかな

Homebrewなどコマンドラインからインストールする方法もありますが、また、Homebrewのインストールが必要になります。

Pandoc 3にアップデート

Pandoc 3にアップデートしました。

Windowsの場合、上書きインストールすればいいだけでした。インストーラーでインストールしました。

Pandocの基本的な使い方

インストールすると次のコマンドが使えます。

ePUBに変換します。

pandoc -s test.md -o test.epub

htmlに変換します。

pandoc -s test.md -o test.html

Pandocの目次

2階層目まで目次をつけます。mdの上部に目次がつきます。

pandoc -s --toc --toc-depth=2 test.md -o test.html

--toc, --table-of-contents
出力文書に自動生成された目次を含めます

https://pandoc-doc-ja.readthedocs.io/ja/latest/users-guide.html

--toc-depth=NUMBER
目次に含めるセクションレベルを指定します。既定は3です

https://pandoc-doc-ja.readthedocs.io/ja/latest/users-guide.html

Pandocの一括変換

コマンドでも複数のmdを1つのhtmlなどにまとめることができるようです。

pandoc *.md -o output.html

ファイルの順番は他にも方法があるかもしれませんが、ひとまずファイル名で制御してみました。

01-sample.md
02-sample.md

Windowsのバッチファイル (.bat)やUnixのシェルスクリプト (.sh)を使って対応されている方もいるようですが、個人的にはNode.jsがおすすめです。

Pandocの使い方応用編

Pandocはそこそこ使っているので多少は詳しくなりました。

続きはこちらに書きました。

ご参考になれば幸いです。

自己資金で新規事業に参入するため、その資金にさせてもらいます。