🚀

HTML内でTypst形式の数式を使う

に公開

概要

HTMLでMathJaxのようにTypstを使用できるJavaScriptを作成しました.
https://github.com/raygo0312/typst2mathjax

実際に,私のWebサイトで動かしています.
https://raygo0312.github.io/study_note/math/ZFC_axioms.html

はじめに

日々Typstを書いているみなさん.また,Typstには興味があるけど,MathJaxでLaTeX数式書いているから中々移行ができていないみなさん.HTML内にTypstを直書きして,数式に"動的に"レンダリングしてくれるプログラムを作成しました.コンパイルの必要がありません.

また,KaTeXを利用しているみなさん.HTML内のTypst数式をLaTeX数式に変換するコンパイラ(Rust)も用意しています.適宜使いやすいようにコードを変更しながらお使いください.

参考文献

https://zenn.dev/arakur/articles/088643e7993449

使い方

リンク先のREADMEをお読みください.
https://github.com/raygo0312/typst2mathjax

必要な修正点

Typstの各コマンドは昔のTypst変換表を手作業で直して利用しているため,記号のフィールドアクセスが不完全であったり,コマンドが古かったりしています.
Typstモジュールの変換機能を使えれば改善できるのかなと考えています.どなたかわかる方がいれば教えてほしいです.

今後は,気づいたときに変換表の修正をしていきます.

手法の方針

  • TypstのコンパイラはGitHub上で公開しているRustで書かれたOSSであるため,Typstのパーサーをするモジュールをインポートすることができる.
  • 数式変換部分をwasm(WebAssembly)にコンパイルすることで,JavaScript内で(つまり動的に)使用可能になる.

結果

これはプログラム適用前です.

今回のプログラム適用後です.

最後にMathJaxを適用します.

余談

Typstの日本語テンプレートjastylestをpreviewに投稿しました.ぜひ使ってみてください.

Discussion