StockSnap via Pixabay
マークダウン(Markdown)という文書の記法がある。シンプルなテキストデータに、簡単な記号を付けることで、HTMLファイルに手軽に変換できるというものだ。プログラマーがよく利用する記法で、ソースコードのホスティングサービス
GitHub や、プログラミング情報系ブログサイトなどでよく利用されている。
記法は非常にシンプルで、行頭に「# 」と書くと大見出しに、「## 」と書くと中見出し、「### 」で小見出しといった感じだ。強調は「*」や「_」で囲む。強い強調は「**」や「__」で囲む。
リスト表示したいときは、各行の頭に「* 」や「- 」を書く。タブや半角スペースでインデントすることで、階層構造になったリストを作ることもできる。リンクは「[タイトル](URL)」と書く。
他にも記号はあるが、マークダウンはこうした簡単な記法で、きれいなHTMLファイルに変換できるので生産性が高い。
変換するためのプログラムも、各種プログラミング言語に存在している。そのためプログラマーは、自分が使い慣れたプログラミング言語で、整形されたHTMLファイルを出力できる。
また、こうしたプログラムを使い、独自の拡張をおこなうことも可能だ。私も商業出版される技術書の原本や、同人誌の原稿は、マークダウンで書いている。そして拡張した自作ツールで、HTMLファイルやPDFファイルを出力している。
2月に出る『
JavaScript[完全]入門』という本の原稿は、マークダウンで全て書いた。去年出た『
Web小説のための NovelSupporterで超効率的に文章推敲する本』も、同じ手法で書いた。
原稿をテキストエディタでどんどん書けるので高速に執筆できる。Microsoft Word のように、痒いところに手が届かないということはない。用途に応じて、自分でプログラムを書いて拡張できるので非常に便利だ。
私の場合、HTMLファイルから、ePubやKindle用のファイルに変換するプログラムも自前で用意している。そのため
マークダウンから、ノンストップで電子書籍を作ることができる。
このように、仕事に趣味に、マークダウンを活用している私だが、最近、素敵なプログラムに出会った。
Marp というプログラムだ。副題に Markdown Presentation Ecosystem とあるように、マークダウンのファイルから、PDF や パワーポイントといった、プレゼン用のファイルを生成してくれる。
今回は、この
Marp を紹介したいと思う。
テキストを書くだけで、PDFやパワーポイントのファイルを生成
それでは
Marp を紹介しよう。Marp のWebサイトは英語だが、開発しているのは
日本の会社の日本の人だ。そのため、この手のソフトによくある「日本語が上手く出力されない」といった不具合はない。
たとえば、2ページのプレゼン資料を作りたいとする。
その場合は、以下のように書くだけでよい。短いテキストを書くだけで、見栄えが整ったPDFやパワーポイントのデータを作ることができる。
—
theme: gaia
_class: lead
paginate: true
backgroundColor: #fff
backgroundImage: url(‘https://marp.app/assets/hero-background.jpg’)
—
![bg left:40% 80%](./img/logo_color.png)
# るてんのお部屋
**同人技術書**と**同人ゲーム**のサークル
crocro.com/shop/group/circle.html
—
# サークル紹介
こんな本やゲームを作っています。もっとたくさんありますよ!
* 同人技術書
* HTML5とJavaScriptで作る タワーディフェンス 全コード
* HTML5とJavaScriptで作る 落ち物パズルゲーム 全コード
* レトロ風RPG フルスクラッチ開発 全コード
* 同人ゲーム
* TinyWar high-speed(高速RTS)
* 無限世界SRPG(ローグライクSRPG)
少し解説しよう。「—」がページの区切り記号だ。最初の「—」区切りのブロックは、Marpの設定を書いている。
「![bg left:40% 80%](./img/logo_color.png)」は、画像を左40%の位置に、80%のサイズで表示という意味だ。画像の表示は Marp ではマークダウンから拡張されている。
あとは基本的に、通常のマークダウンと変わらない(
Marpit Markdown)。
仕事先から「急ぎでプレゼン資料を作ってくれ」と言われたときに、とりあえずテキストの原稿を書いて、PDFやパワーポイントとして出力する。そうした時に、Marp は非常に有用だ。文字の原稿だけ書けばよいので、時間がない時にでもどうにかなる。利用環境さえ整っていれば、非常に短時間で仕事をこなすことができる。