LuaTeXの段落再コンパイルは1ms——大規模ドキュメントのリアルタイム編集を実現する「texlode」

Real-Time LuaTeX: Recompiling Large Documents in 1ms [pdf]

本稿は、LuaTeXのノード構造から直接ディスプレイリストを抽出することで、段落単位の再コンパイルを約1msで実現し、ブラウザベースの書籍執筆ツール「texlode」を構築した事例を報告する。行分割は段落ローカルであり、ページ分割はグローバルだが知覚的に即時性を要しないため、編集ループをブロックする必要はない。ベンチマークでは、段落単位の再コンパイルは文書サイズに依存しないO(1)レイテンシを示し、Typstの増分コンパイルがO(n)でスケールするのと対照的である。トレードオフとして、表示中のページ以外は一時的に不整合が生じるが、バックグラウンドで収束する。

レイアウトは、再生成する成果物ではなく、操作できる連続的な量になる。

この日のほかの記事

2026-07-18