\LaTeXはもう古い!令和の組版処理システムは\SATySFiで決まり!

Abstract

TeXのような組版処理システムは、ユーザーが書いたマークアップ言語を処理して、PDFを生成するシステムである。特にTeXは、理工系分野において論文、レポート、スライドなどの用途に広く用いられており、理系大学の新入生たちの一定数が、悪いお兄さん達にそそのかされてTeXを使い始めるケースが多い。しかしTeXにはユーザーにとって不親切な点がいくつか存在する。TeXを書くことはしばしば苦痛であり、ゆえに脱TeXの流れはもっと大きくなってもいいと考える。そこで、これからレポートを書くのにTeXを使おうと思っている人や、今までTeXばかりを使ってきて、他の選択肢を検討したこともない人のために、もっと悪いお姉さんであるところの私が、環境構築も簡単かつTeXの欠点を克服したシステムを持つSATySFiをここで紹介する。


SATiSFiは以下に1つでもあてはまる人におすすめである。

  • TeX の わかりにくいエラーメッセージにうんざりしている
  • プログラミングが好きな人 (特に関数型プログラミングに興味がある人)
  • これから組版システムを使い始める人
  • TeXを使っている人

SATySFiの特徴

SATySFiはTeXと同様、専用のマークアップ言語で書かれたファイルを読み込んでPDFを生成する。ではTeXとの違いは何なのだろうか。

SATySFiの最たる特徴は、マークアップ言語が関数型言語のような性質を持つことで、以下のような機能が実現されていることである。

  • 独自の型システムにより、エラーの発生位置や原因が、より正確に報告される
  • 自作コマンドの定義が、TeXより容易で、かつ読みやすい。

1つ目の機能だけで十分魅力的であるが、2つ目も強力である。自作コマンドは、文書に何度も出てくる何らかの装飾を施したフレーズをコマンド1発で呼び出すことができ、それゆえタイプ量も減るというわけだ。SATySFiのコマンド定義は、プログラミングに慣れ親しんだ人間にとっては簡単であり、型検査によって自分が犯したミスもちゃんと教えてくれる。

入門

SATySFiは入門のための資料が十分に揃っている。

インストール

opam を使ってインストールすると、外部ライブラリを使えるのでこっちがおすすめ。スライドも作れるようになる。

標準ライブラリだけでも十分使用に耐えるだろう。上のが難しかったら、SATySFi wiki に リンクが貼ってあるので、Win/Mac/Linux どれでも問題なく簡単にできるはずだ。

マニュアル

記事投稿時点で、BoothにてSATySFiの日本語公式マニュアルがなんと無料で配布されている。このマニュアルの3章まで読めば、普段のレポート作成に困ることはほとんどないだろう。

booth.pm

エディタ

VSCodeしか勝たん。SATySFiのための便利な拡張機能がある。

まとめ

私はスライド作りに使ってみたが、TeXに比べて「プログラミングをしている」という感覚が強かった。型システムによってエラーがわかりやすいのはとてもありがたい。satyrographosのようなパッケージ管理が標準で入ってくるともっと良いのだが。

興味が湧いたら是非とも1度試してみてほしい。実はこんな記事を書いたのはみんなが使ってSATySFi人口が増えれば、ライブラリとか環境とかの開発が盛んになると思ったから。(他力本願寺)

References