Markdownテキストを一瞬でPDFスライドに変換(macOS用)
2月 22nd, 2019Markdownテキストでプレゼンを行うDeckset
簡単なプレゼン用スライドを作らないといけないことが増えてきたのだけど、PowerPointやKeynoteでは正直かったるくてやっていられない。短いテキストとちょっとした画像を入れられればいいだけ……ということでたどり着いたのがMarkdown形式テキストをスライドに変換するというやり方。
Markdownでプレゼンを行うためのツールはいろいろ出ているけど、macOS用としてはDecksetの人気が高いようだ。Markdownを開くだけで、いい感じにレイアウトしてくれるし、ある程度スタイルもカスタマイズできるし、PDFとして出力もできる。
ただ、慣れてくるとさらに横着になってくるもので、いちいちDecksetを開かずにPDFに変換したくなってくる。
Deckset用に、Markdown to PDFというシェルスクリプトが公開されていたので、使ってみるとこれがなかなか便利。ターミナルからコマンドを打ち込むのも面倒になってきたので、macOSのFinderからクイックアクションですぐこのスクリプトを呼び出せるようにした。
Automatorでワークフローを作成する
macOSの「Automator」を起動して、「新規書類」→「クイックアクション」を選択。
「ワークフローが受け取る現在の項目」を「ファイルまたはフォルダ」、検索対象を「Finder.app」にする。
左側の「アクション」→「ユーティリティ」から「シェルスクリプトを実行」を、右側のワークフローにドラッグ・アンド・ドロップ。
「入力の引き渡し方法」を「引数にして」にし、先述のmarkdown-to-pdf.shの15行目以降の内容(OVERWRITE=0……という行以降)をペーストする(すごい適当な説明だ……)。作成したワークフローに適当な名前を付けて保存する。
※(すでに同名のPDFが存在する場合はエラーが発生するが、強制的にファイルを上書きしてもよいなら、「OVERWRITE=1」にしておく)
Finderからクイックアクションを呼び出す
あとは、変換したいMarkdownをFinder上で選択し、右クリック→「クイックアクション」から先ほど作成したワークフローを呼び出すだけ。Decksetが立ち上がって、PDFを出力する処理まで自動で行ってくれる。