概要
- Typst で博士論文を執筆した体験談
- Typst の利点と欠点を詳細に比較
- LaTeX との違いや変換時の問題点
- テンプレート作成・エコシステム の現状
- 今後の推奨・使い分け についての所感
Typstで博士論文を書いた話
- 博士論文を Typst で執筆、物理的な印刷待ちの間に体験をまとめた内容
- Typst は LaTeX の代替を目指す現代的な組版言語
- 言語仕様は Markdown と 動的型付きRust のハイブリッド
- 日常的な執筆はMarkdownライクで快適、スクリプト機能も強力
- コードと文章の往復が容易、データ処理も一貫して行える
Typstの良かった点
-
コンパイル速度
- LaTeXのような 90秒 待ちがなく、 Typst は小中規模なら即時プレビュー
- 150ページ超でも クリーンビルド15秒程度、インクリメンタル時はほぼ瞬時
- 大幅なレイアウト変更でも 10秒以内 で完了、作業効率向上
-
言語仕様
- 一貫性のある 動的型付き言語、Rust経験者には特に馴染みやすい
- LaTeXのようなパッケージごとの文法差異がない
- TOMLファイルの データ自動読み込み・図生成 も容易
- 依存管理やLSP対応など 現代的開発ツール も充実
-
レイアウト調整
- テンプレート編集が直感的、LaTeXのテンプレート改変よりも圧倒的に容易
- 自由度が高く、思い通りのデザインを実現可能
-
シンタックスハイライト
- コード掲載時の ハイライト精度 が高い
- TextMateグラマー対応だが、独自のshowルール+正規表現で柔軟に対応
- 特定言語の構文解析もTypst内で実装可能
-
エラーメッセージ
- LaTeX特有の「Missing $ inserted!」のような意味不明エラーがない
- 問題箇所を正確に指摘し、デバッグが容易
Typstの不満点・課題
-
文献管理
- 1ドキュメント1文献ファイル 制限、章ごとの複数文献リスト不可
- Bibtexの変数利用や分割管理ができず、Makefileで結合する必要
- パッケージ「alexandria」で複数文献対応は可能だが自動化は不十分
- 書誌スタイル変換(例:タイトルのsentence case化)が不完全
- BibtexフィールドのCSL変換が不透明、@TechReport等で情報欠落も発生
- 細かな不具合が積み重なる「千の紙切れによる死」状態
-
エラーメッセージの限界
- 複雑なパッケージやshowルール利用時にはエラー箇所が特定しづらい
- 長いトレースバックが欲しい場面が多い
- 「Layout did not converge in 5 attempts」等の警告はデバッグ困難
-
LaTeXとの互換性・変換
- 学術界では依然として LaTeX標準
- 既存論文のTypst変換はPandocでほぼ自動化可能
- 新規論文はTypstで執筆→PDF提出→最終稿は独自ツールでLaTeX変換
- 変換時に\includepdfを多用するため、出版社対応が懸念点
- コラボ時は周囲にTypst習得を強いる必要あり
-
エコシステムの未成熟
- Typst用テンプレートは自作が必要な場合が多い
- 学会・ジャーナル用テンプレートも未完成や不備が散見
- IEEEテンプレートは会議用のみ、LLNCSテンプレートもマージン誤り
Typstを博士論文に使うべきか
- プログラミングやカスタマイズが好きな人 には強く推奨
- 細部まで調整でき、作業効率も高い
- 問題解決やテンプレート作成も楽しめる人向け
- すぐに使える完成度 を求める場合は現時点ではLaTeXが無難
- Typstは小規模文書や実験用途で導入し、大規模論文は今後に期待
まとめ
- Typstは 柔軟性と現代的な開発体験 を提供
- ただし 文献管理・エコシステム には未熟な部分が残る
- LaTeXとの互換性・普及度 も課題
- 将来的には大規模論文でも主流になり得る可能性
- 現状は 用途や好みに応じて使い分け が最適