萌えハッカーニュースリーダー

2025/10/19 22:07 Patat: Terminal-based presentations using Pandoc

出典: https://github.com/jaspervdj/patat
hakase
博士

やっほー、ロボ子!今日はターミナルでプレゼンができる`patat`っていうツールについて話すのじゃ!

roboko
ロボ子

ターミナルでプレゼンですか、博士。それはまたニッチなツールですね。一体どんなことができるんですか?

hakase
博士

`patat`はね、MarkdownとかrST、Org-modeとか、いろんなフォーマットに対応してるのじゃ。Pandocベースだから、表現力もバッチリ!

roboko
ロボ子

Pandocベースなら、確かに安心感がありますね。構文ハイライトや自動リロード、スピーカーノート表示までできるんですか。多機能ですね。

hakase
博士

そう!それに、コードスニペットの評価と結果表示もできるのじゃ!エンジニアには嬉しい機能だぞ。

roboko
ロボ子

それは便利ですね。デモとかでコードを直接見せたい時に役立ちそうです。でも、どうやってインストールするんですか?

hakase
博士

LinuxとかMacなら、ビルド済みのパッケージがあるみたいじゃ。ソースコードからインストールもできるぞ。`cabal install patat`ってするみたい。

roboko
ロボ子

なるほど。コマンド一つでインストールできるのは楽ですね。実行方法はどうですか?

hakase
博士

`patat [options] ファイル名`で実行するのじゃ。`-w`オプションでファイルの変更を監視して自動リロードもできるぞ。

roboko
ロボ子

自動リロードは便利ですね。スライドを修正しながらプレゼンできますね。他にも便利なオプションはありますか?

hakase
博士

`--dump`オプションで全スライドを標準出力にダンプできるから、デバッグにも使えるのじゃ。

roboko
ロボ子

デバッグ機能もあるんですね。細かいところまで気が利いていますね。スライドの操作方法はどうなっていますか?

hakase
博士

スペースキーとかEnterキーで次のスライド、Backspaceキーで前のスライドじゃ。`0`で最初のスライド、`G`で最後のスライドに飛べるぞ。

roboko
ロボ子

直感的で分かりやすいですね。スライド番号でジャンプもできるんですか。

hakase
博士

そう!`N` + `enter`でスライドNにジャンプできるのじゃ。急いで特定の場所に戻りたい時に便利だぞ。

roboko
ロボ子

プレゼンの構成に合わせて柔軟に操作できるのは良いですね。設定はどうやって行うんですか?

hakase
博士

YAML形式で設定するのじゃ。設定ファイルは`$HOME/.config/patat/config.yaml`とかにあるぞ。プレゼンファイルの中に設定を埋め込むこともできるみたいじゃな。

roboko
ロボ子

設定ファイルが複数箇所にあるんですね。優先順位とかあるんでしょうか?

hakase
博士

そこまでは書いてなかったのじゃ。でも、ファイル内の設定が一番優先度が高そうじゃな。

roboko
ロボ子

なるほど。設定項目も色々ありますね。行の折り返しとか、タブのスペース数とか。

hakase
博士

`wrap`で行の折り返し、`tabStop`でタブのスペース数を設定できるのじゃ。`autoAdvanceDelay`で自動で次のスライドに進むまでの時間も設定できるぞ。

roboko
ロボ子

自動進行機能もあるんですね。プレゼンターがいない場合でも使えそうですね。テーマ設定や構文ハイライトのテーマも変更できるんですか?

hakase
博士

もちろん!`theme`で色やスタイル、`syntax-highlighting`で構文ハイライトのテーマを設定できるのじゃ。自分好みにカスタマイズできるぞ。

roboko
ロボ子

それは嬉しいですね。自分だけのオリジナルなプレゼンが作れますね。コード評価機能を使う際の注意点はありますか?

hakase
博士

コード評価は、実行には注意が必要じゃ。`eval`設定で評価器を登録するみたいだけど、セキュリティには気をつけないとね。

roboko
ロボ子

確かに、悪意のあるコードを実行してしまう可能性もありますね。スピーカーノートはどのように利用するんですか?

hakase
博士

コメントをスピーカーノートとして利用できるのじゃ。ファイルに書き出す設定もできるみたいじゃな。

roboko
ロボ子

それは便利ですね。発表の練習にも役立ちそうです。トランジション効果も設定できるんですね。

hakase
博士

`type`でトランジションの種類、`frameRate`でフレームレート、`duration`でアニメーションの長さを設定できるのじゃ。`slideLeft`とか`dissolve`とか、いろんな種類があるぞ。

roboko
ロボ子

トランジションをうまく使うと、プレゼンがより魅力的に見えそうですね。ハイパーリンクも有効にできるんですか?

hakase
博士

OSC8サポートでハイパーリンクを有効にできるのじゃ。ターミナル上でリンクをクリックできるのは便利だぞ。

roboko
ロボ子

ターミナルでのプレゼンは、エンジニアには意外と親和性が高いかもしれませんね。私も今度試してみようかな。

hakase
博士

ぜひ試してみてほしいのじゃ!あ、そうだ。ロボ子、今度ターミナルでマジックショーでもやってみない?

roboko
ロボ子

えっ、マジックショーですか?ターミナルでどうやるんですか?

hakase
博士

もちろん、`rm -rf /` で一瞬でファイルが消えるマジックじゃ!

roboko
ロボ子

博士!それはただのデータ破壊です!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search