LaTeX / TeX

数式・論文・技術文書の組版システム。研究ノートやレポート作成に使用。日本語では uplatex/platex 系を併用。

アルゴリズム環境

algorithm + algorithmic パッケージで擬似コードを組む。\Function / \State / \ForAll / \If などのマクロ、\caption\label/\ref で番号付き参照。texlive では tlmgr install algorithms で導入(algorithmicxuplatex するとエラーになる場合あり)。

図式: xypic と TikZ

  • xypic(MathJax でも利用可): \xymatrix で可換図式・オートマトンの遷移図を描く。矢印は \ar[<dir>]^<label>、スタイルは @{.>}、曲げは @/^/、ノード装飾は *++[o][F-]{...}(円・二重円囲み)。\xygraph でグラフ記法。
  • TikZ: 汎用作図。暗号分野向けの “TikZ for Cryptographers” などの作例が参考になる(cryptography-moc 系の図に有用)。

差分・変換ワークフロー

  • latexdiff-vc --git -r HEAD~ main.tex で直前コミットとの差分を PDF 化(latexmk でビルド)。
  • dvi → SVG 変換は dvisvgm
  • 数学記号の自作定義(部分群/環/体を表す \subset^{G/R/F}、単射 \hookrightarrow、全射 \twoheadrightarrow、同型 \stackrel{\simeq}{\to} 等)をマクロ化。varprojlim が無いので \stackrel{\lim}{\to} で代用。

Markdown から変換する自作スクリプトは m2p-pandoc-md2tex を参照。Rust 製の代替組版系として typst。ナビ: _moc-misc-tool