💡
Sphinxでphysicsパッケージしたい
はじめに
physics
パッケージは物理学関連の数式の入力をサポートするコマンド群。
数式を多用する Sphinx ドキュメントで使いたいと思っていたのだけど、Sphinx v3
が使っていた MathJax v2
での設定方法がよく分からなくて断念してた。
先日、Sphinx v4
がリリースされ、デフォルトが MathJax v3
に変更されたので、再び設定を試してみたらあっさりと使うことができちゃった。
Sphinx
の設定ファイルに追記する内容
- 設定ファイル(
conf.py
)に、HTML 出力と PDF 出力のそれぞれに関係する設定を追記する
make html
)
HTML 出力(-
mathjax3_config
を追記し、次の値に設定する
conf.py
mathjax3_config = {
"loader": {"load": ["[tex]/physics"]},
"tex": {"packages": {"[+]": ["physics"]}},
}
- 数式が使われているページの HTML のソースは以下のようになる
数式を使っているページのソース
...
<script async="async" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
<script>window.MathJax = {"loader": {"load": ["[tex]/physics"]}, "tex": {"packages": {"[+]": ["physics"]}}}</script>
...
make latexpdf
)
PDF 出力(- LaTeX のプリアンブルの設定を追加する
-
\
はエスケープして\\
にする必要がある
conf.py
latex_elements = {
"extrapackages": "\\usepackage{physics}"
}
- 出力した LaTeX ドキュメントは以下のようになる
プリアンブル
...
\usepackage{physics}
...
関連ドキュメント
physics
パッケージとは
- どんなコマンドがあるかは PDF を確認する
- PDF は
$ texdoc physics
で開くことができる - 個人的にものすごい便利と思ってるパッケージのひとつ。できれば学生の時に知っておきたかった・・・
Sphinx で MathJax を設定するには
-
Sphinx v4
からMathJax v3
がデフォルトになったことが書いてある -
mathjax3_config
に辞書型で設定した値が、MathJax
の`window.MathJax``に渡される
physics
パッケージを設定するには
MathJax で
まとめ
physics
パッケージが使えて幸せ 🥰
Discussion