🔖

Marpでカスタムテーマを作る

2023/12/03に公開

今回やりたかったこと

LT 会でサークルの部員として発表するので,Marp でサークル用のカスタムテーマを作って,スライドを作成しました.

Marp とは

Marp とは Markdown を使ったプレゼンテーションのエコシステムです.Marp を使うことで,細かいデザインをこちらから指定することなく,ある程度綺麗なスライドを作ることができます.自動で指定した様式にスライドを整形してくれるので,PowerPoint などでスライドを作成するよりもかなり楽に作成することができます.ただ楽さと引き換えに,細かい指定については行いづらくなっています.(CSS を書けばできないことはない.)

カスタムテーマとは

Marp はデフォルトでも 3 種類ほどスライドテーマが用意されています.そのテーマを使うことで,楽にすぐスライドを作成することができます.また,デフォルトだけでなく,カスタムテーマを自作することもできます.GitHub などにもすでにカスタムテーマが公開されています.自分で作る際も,そこまで大変な作業はいりません.特に,css を触ったことのある人なら簡単に作ることができます.

今回のディレクトリ構成

今回は,以下のようなディレクトリ構成で作業を行いました.

.
├── theme
│   └── mytheme.css
└── slide
    └── slide.md

カスタムテーマの作成

まずはカスタムテーマを反映させるところからやってみましょう.今回は VSCode を使うことを想定して説明します.

拡張機能のインストール

まずは,VSCode に Marp の拡張機能をインストールします.VSCode の拡張機能画面を開き,その検索欄で marp と検索します.そこに Marp for VS Code という拡張機能が出てくるので,それをインストールします.下のリンクカードからもインストールできます.

https://marketplace.visualstudio.com/items?itemName=marp-team.marp-vscode

VSCode にパスを通す

まずは,VSCode が自作テーマを認識してくれるように,パスを設定します.VSCode の 設定画面を開き,その検索欄で marp theme と検索します.そこに Markdown › Marp: Theme の項目が出てくるので ./theme/mytheme.css を追加します.ちなみにここのパスは,ワーキングディレクトリからの相対パスで指定する必要があります.絶対パスでは認識してくれません.今回だと ./theme/mytheme.css となります. 気をつけてください.

VSCode 設定画面

CSS ファイルの作成

つぎに,./theme/mytheme.css ファイルを作成します.いまはテストとして以下の内容をコピペしてみてください.

./theme/mytheme.css
/* @theme mytheme */

@import 'default';

section {
    color: #000;
    padding: 2rem;
    border-radius: 0.5rem;
}

header {
    color: #ccc;
    font-size: 0.5em;
    font-weight: 600;
    top: 0.3rem;
}

footer {
    color: #ccc;
    font-size: 0.5em;
    font-weight: 500;
    bottom: -0.5%;
}

1 番上の /* @theme mytheme */ でこのテーマ名を設定しています.名前を変えたい時は,ここの名前を変更すれば,テーマの名前を変更できます.

markdown ファイルの作成

つぎに,実際にスライドを作っていく markdown ファイルを作成します.いまはテストとして,以下の内容をコピペしてみてください.

./slide/slide.md
---
marp: true
theme: mytheme
---

# 1st slide

this is a test

---

# 2nd slide

this is a test

上の方にある theme: mytheme で,先ほど作成したテーマを指定しています.細かい書式については,ほかに記事がたくさんあるのでそちらを参考にしてください.ここでは省略させてもらいます.

カスタムテーマの設定終了

実際に css の中身を変更していくと,スライドの見た目が変わっていくので,自分の好きなように変更していきましょう.ならない場合はパスの指定を間違えている可能性があるので,もう一度確認してみてください.

Mac だと,command + shift + P でコマンドパレットを開き,Marp: Export slide deck と入力すると,スライドをエクスポートすることができます.プレビューを見たい場合は,command + shift + V と入力すると,プレビューを見ることができます.

まとめ

今回は私はサークルの LT 会でスライドを作成するために,Marp でカスタムテーマを作成しました.カスタムテーマを作成することで,自分の好きなようにスライドを作成することができます.また,カスタムテーマを作成することで,スライドの見た目を統一することができます.私はカスタムテーマを使って以下のようなスライドを作成しました.皆さんもぜひカスタムテーマを作成して,スライドを作成してみてください.

スライド

GitHubで編集を提案

Discussion