Source Hut

硬派な github って感じで、 yasushisakai.com をホストさせてもらってる。

で、硬派なので、外からのリソースを一切読みこまないという制限があり、その哲学は別にいいんだけど、数式を表現するのに MathJax をセルフホストしないといけない。

MathJax

で、そのまま MathJax セルフホストしようとすると大変な事になって。というのも 176MB もあって、いちいちアップロードするのに馬鹿みたいに帯域を使う事になるので、なんとか必要最低限にしたいわけです。それでみつけたのが、 https://git.sr.ht/~zackw/minify-mathjaxminify.cfg をいじって、走らせると、3.7MB くらいにしてくれる。

[GENERAL]
git_repo   = https://github.com/yasushisakai/MathJax.git

git_branch  = v2.6-latest

compression = false

compression_threshold = 5%

do_not_compress = .gz .bz .bz2 .xz .zip .rar .Z        # archives
                  .jpg .jpeg .png .gif .svgz           # images
                  .woff .woff2                         # fonts
                  .pdf .odt .ods .odp                  # documents
                  .mp3 .m4a .ogg .oga .flac            # audio
                  .mpg .wmv .avi .ogv                  # video

[FILES]
MathJax.js
extensions/AssistiveMML.js
extensions/HelpDialog.js
extensions/MatchWebFonts.js
extensions/MathEvents.js
extensions/MathMenu.js
extensions/MathZoom.js
extensions/toMathML.js
jax/element/
images/

# changed since it was used in the minimal example
config/TeX-AMS_CHTML.js

jax/input/MathML/
jax/output/CommonHTML/
jax/output/PreviewHTML/
jax/output/NativeMML/
extensions/CHTML-preview.js
extensions/mml2jax.js
extensions/MathML/
fonts/HTML-CSS/TeX/eot/
fonts/HTML-CSS/TeX/otf/
fonts/HTML-CSS/TeX/svg/
fonts/HTML-CSS/TeX/woff/
  • mathjax のレポジトリを fork しておく
  • 途中の minify.cfgconfig/TeX-AMS_CHTML.js

で、 ./minify とたたけば、 Mathjax.xxxxxx というディレクトリが出来る。それを org-mode で書き出す時の mathjax として指定すればいい。よくわからないから、 custom-set-variables で変更した。

 '(org-html-mathjax-options
   '((path "/static/Mathjax.d4ab1b35/MathJax.js?config=TeX-AMS_HTML")
     (scale "100")
     (align "center")
     (font "TeX")
     (linebreaks "false")
     (autonumber "AMS")
     (indent "0em")
     (multlinewidth "85%")
     (tagindent ".8em")
     (tagside "right")))

ちゃんとできてるかな?

When \(a \ne 0\), there are two solutions to \(ax^2 + bx + c = 0\) and they are \[x = {-b \pm \sqrt{b^2-4ac} \over 2a}.\]

Date: 2022-08-06 Sat 20:23