最近、ゼミ関係でたくさん .ipynb を作っている (岡本・柳澤 [1] で興味がある話題を説明してみなさい、 という軽いノリのゼミをしている)。 MarkDown 形式で TEX 風の数式がすいすい使えて、便利ですね。
すべての学生が .ipynb 使えるわけではないので、PDF にしたい。
| LATEX に変換する |
jupyter nbconvert --to latex kakuritsu.ipynb |
この Mac には jupyterlab_pygments がないと叱られた。はいはい。
| MacPorts でインストール |
sudo port install py314-pygments sudo port install py314-jupyterlab_pygments |
| これは失敗する。 |
pdfplatex kakuritsu.tex |
あ、pdftex ないと言われる。それはそうだ。lualatex にするんだっけ?
lualatex kakuritsu |
あ、一応 pdf できたけれど、日本語の文字が抜けている。えーと。
.tex の先頭を次のようにする。
\documentclass[11pt]{ltjsarticle}
\usepackage{luatexja}
|
| 再度挑戦 |
lualatex kakuritsu |
最初に変換した .ipynb は ChatGPT に作ってもらったものなので、 \author{ChatGPT} とした。
| Makefile にこういうことを書く |
.SUFFIXES: .ipynb .tex .pdf .tex.pdf: lualatex $< .ipynb.tex: jupyter nbconvert --to latex $< ./modify_head.pl $@ |
ここで modify_head.pl はかなりいいい加減に作った Perl スクリプト。
| modify_head.pl |
#!/opt/local/bin/perl -pi~
s/\\documentclass\[11pt\]\{article\}/\\documentclass[11pt]\{ltjsarticle\}\\usepackage\{luatexja\}/
|
しばらく、過去に作った .ipynb を PDF に変換する作業をしてみることにする。