パンの木を植えて

主として数学の話をするブログ

今後使ってみたい,あるいは愛用している静的サイトジェネレータ(SSG)まとめ

\[ %%% 黒板太字 %%% \newcommand{\A}{\mathbb{A}} %アフィン空間 \newcommand{\C}{\mathbb{C}} %複素数 \newcommand{\F}{\mathbb{F}} %有限体 \newcommand{\N}{\mathbb{N}} %自然数 \newcommand{\Q}{\mathbb{Q}} %有理数 \newcommand{\R}{\mathbb{R}} %実数 \newcommand{\Z}{\mathbb{Z}} %整数 %%% 2項演算 %%% \newcommand{\f}[2]{ \frac{#1}{#2} } \]

ここのところ,Web サイトを制作しないといけない事案が多くて,静的サイトジェネレータ (SSG) についていろいろと調査をしました.

そのメモをまとめておきます.

mdbook

rust-lang.github.io

Rust 製のSSG.Rust 開発チームが,Rust のドキュメントを作るために制作したツールらしいですがあまりに完成されていたため Rust のドキュメント以外でも人気.近年急速にシェアを伸ばしている印象があります.コードブロックを文字列としてではなく,コードのまま埋め込むことが可能であるため,コードをたくさん書く必要があるドキュメントを本形式でまとめる際にとても便利です.lean のタクティク逆引きリストとかをこれで作りました.

Zola

www.getzola.org

これも Rust 製のSSG. mdbook のように「コードを埋め込む必要がある書籍」に特化したツールではなくて,一般的なWebサイトを作れる汎用ツール.既存の類似ツールである Jekyll と比較すると,テーマの使用法とカスタマイズ方法がわかりやすく,実行ファイルがバイナリ1つなのですっきりしていて扱いやすい印象です.lean-ja のサイトは悩んだ末にこれで作りました.

欠点として,シンタックスハイライトをあまりカスタマイズできないようで,lean など一般的なハイライトツールが使用できない言語のドキュメントを作るには向かないと思います.

Vite Press

vitepress.dev

私は使ったことがありません.中国語圏でよく使われれているようです.

Zola のように汎用的に使えるツールのようですが,使用例を見る限り Zola よりも javascript を使ってそうな見た目に仕上がる様子.Zola であっても気合を入れれば javascript でフロントエンドを飾ることができるはずですが,こちらの方が楽にできるのかもしれません.使ってみたいところです.

Quartz

quartz.jzhao.xyz

これも使ったことがありません.中国語圏でよく使われているようです.

これの特色は,「デジタルガーデンを作る」という目的に特化しているところ.ぜひ公式サイトを見ていただきたいのですが,記事の間に貼られたリンクをたどって無向グラフを出力します.おもしろいですね.

個人的に,この「デジタルガーデンを作る」という思想はかなり気に入っていて,近いうちに使ってみたいなと思っています.既存ツールとの比較でいえば Scrapbox に似ていて,今後 Scrapbox から Quartz にも手を出すという人が増えそうな予感がします.私的注目度 No1 のSSGです.

(2023年11月5日 追記) Quartz を使ってみましたが,ホットリロードが組み込まれているものの,記事内でリンクを貼るたびに停止するので結構ストレスフルでした.コンセプトは好きなので残念….