LaTeX (TeX) へのご案内

概要

LaTeX (LuaLaTeX) を用いて文書が作成できるようになるまでの導入方法と,LaTeX (LuaLaTeX) を用いた教材作成に役立つ環境をご紹介いたします。

背景

数学の教材を作るにあたっては,数式をそれなりの見映えで出力せねばなりません。数学の教材を作るソフトウェアはいくつもありますが,私は LaTeX (TeX)1 を使っており,それを広めたいと思っています。

前提

  • コンピュータ上にソフトウェアをインストールすることができる。
  • クラウド上のサービスを使うことができる。
  • ソフトウェアのマニュアルを読むことができる。

内容

大きく分けて,インストールして使う方法とクラウド上で使う方法があります。インストールには長くて数時間かかります。ひとまずクラウド上で使ってみて,気に入ればインストールするのもよいでしょう。

試しに触ってみる

作業場所を作る

LaTeX は,ソースコードから PDF を作るときにいくつかのファイルを生成します。また,貼り付ける画像ファイルなども管理せねばなりません。深く考えずに .tex ファイルを作ると散らかります。作業場所を決めましょう。

どのようにしても自由ですが,私は次のようにしています。

構造と表現の分離

ここで述べることこそが,LaTeX を使う最も大きな理由です。

私たちが文章を読むとき,無意識的に構造と表現を合わせて汲み取っています。たとえば,空行ののちに中央寄せ太字の文字があれば,それをタイトルだと思うでしょう。同じように,1. 2. 3. ……と縦に数字が並べば,それを箇条書きだと思うでしょう。ここまで極端な例ではなくとも,太字になっているところがあれば重要だとみなすでしょう。 タイトル・箇条書き・重要といったものは文章の構造です。一方,空行ののち中央寄せ太字・数字が縦に並ぶ・太字といったものは文章の表現です。

WYSIWYG(ディスプレイで作るものと仕上がりが同じ)なソフトウェア(Microsoft Word や Studyaid D.B.)で文章を書いているとしましょう。このとき頭の中には構造があり,実際には表現を入力することが多いでしょう。Microsoft Word には,構造を残す機能が少しはありますが,文章中のすべてをそれで済ませるのはかえって手間です。したがって,本文中の太字は,頭の中でそれぞれの意味が異なっていても,機械から見ればいずれも単なる太字にまとめられてしまいます。「見出しの太字は太字のままに,強調の太字は下線に変えよう」と思ったとしても,機械はそれらを見分けられません。したがって,手で直すほかはありません。

LaTeX はソースコードを入力してタイプセットすることによって仕上げます。ソースコードには構造を入力します。たとえば,節の見出しは \section{...},強調は \em{...} などです。それらをどのような見映えにするかは,タイプセットのときに LaTeX が処理します。たとえば \section とあれば前後に空白を取り・自動的に番号を振り・太字にして出力する,\em とあれば太字にする,などと決められているのです。したがって,本文中の太字は,太字だと指示されているのではありません。構造が指示されているのです。「見出しの太字は太字のままに,強調の太字は下線に変えよう」と思ったときには,「\em をどう出力するか」という命令を書き換えればよいのです。

LaTeX の特徴が少しでも伝わり,興味を持っていただけますように。よろしければ,試しに触ってみてください

詳細

書籍での学習

LaTeX を使い続ける気になられたら,本を1冊を手元に置いてじっくり学ぶことをお勧めします2。そうすることで,LaTeX が何をしているのかが分かり,トラブルが減り・対処できるようになります。また,新たな知見を自分で取り入れる力もつきます。困ったときに web 上の記事を調べるだけでは体系的な理解ができませんし,自分の環境に合っていない記事・古い記事を読んでしまいかえって混乱するかもしれません。私は「LaTeX2e 美文書作成入門」で学びました。

参考

基本的な内容

慣れたころに読んでいただくと有意義なもの9

  1. TeX の作法
  2. 作業環境の向上
  3. パッケージの追加
  4. TeX の動きかた
  5. 命令の作りかた
  6. 読みもの

TeX に詳しくなりたくなったときに有意義なもの

  1. プログラミング的な機能
  2. 自分で命令を作るにあたっての参考
  3. 自分で作った命令の共有
  4. 読みもの

「TeX & LaTeX Advent Calendar」で検索しても面白いでしょう。


  1. TeX が組版システム本体の名前で,LaTeX は TeX をより使いやすくするための文書処理システム(フォーマットと呼びます)です。とくに意図しない限り,現在「TeX で文章を書く」とは事実上「LaTeX で文章を書く」ことを意味します。この記事はすべて LaTeX についてのものですが,(TeX) を付しているのは TeX という語のほうが知名度が高く,検索でいらしたかたに伝わりやすくするためです。 ↩︎

  2. (Wiki),TeX Live / Windows。TeX Wiki,参照 2023-08-13。 ↩︎

  3. Spiegel,クラウドで LuaLaTeX-ja。text.Baldanders.info,参照 2023-08-13。 ↩︎

  4. 技術評論社,[改訂第8版]LaTeX2ε美文書作成入門。技術評論社,参照 2022-07-28。 ↩︎

  5. (Wiki),TeXの本。TeX Wiki,参照 2022-07-23。 ↩︎

  6. (Wiki),TeX Live。TeX Wiki,参照 2022-07-23。 ↩︎

  7. (Wiki),LaTeX入門。TeX Wiki,参照 2022-07-24。 ↩︎

  8. Karl Berry / 朝倉卓人訳,TeX Live ガイド 2022。TeX Users Group,参照 2022-07-23。 ↩︎

  9. 追記 2022-07-25。 ↩︎

  10. Sokrates=Chaos,本文に直接 mathbf と書くのをやめよう ~LaTeX 初心者よ,見栄えと構造の分離を意識せよ~。Sokratesさんの備忘録ないし雑記帳,参照 2022-07-25。 ↩︎

  11. 小田忠雄,数学の常識・非常識 — 由緒正しい TEX 入力法。東北数学雑誌,参照 2022-07-25。 ↩︎

  12. 丸田一郎,使ってはいけない LaTeX のコマンド・パッケージ・作法。Ichiro Maruta Homepage,参照 2022-07-25。 ↩︎

  13. 山本裕,SICE著者のためのLATEXべからず集。J-STAGE,参照 2022-07-25。 ↩︎

  14. timestalker,TeX: プリアンブルの外部化。Time Stalker: てきとーろぐ,参照 2022-07-25。 ↩︎

  15. (Wiki),各種パッケージの利用。TeX Wiki,参照 2022-07-25。 ↩︎

  16. Yarakashi-Kikohshi,LaTeX でいろんなパッケージを usepackage する。Qiita,参照 2022-07-29。 ↩︎

  17. zr_tex8r,完全攻略! LaTeX 命令の“引数の規則”。Qiita,参照 2022-07-25。 ↩︎

  18. 慶應義塾大学湘南藤沢メディアセンター,LaTeX/LaTeXにおける文書整形の制御/パラメータ。SFC CNSガイド 2001 年度版,参照 2022-07-29。 ↩︎

  19. (Wiki),LaTeXマクロの作成。TeX Wiki,参照 2022-07-25。 ↩︎

  20. zr_tex8r,完全攻略! LaTeX のマクロ定義。Qiita,参照 2022-07-25。 ↩︎

  21. やまいも,jlreq での箇条書きのインデント調整に関して。。いものやま。,参照 2022-07-25。 ↩︎

  22. Sokrates=Chaos,LaTeX 初心者が知るべきただ一つのコマンド。Sokratesさんの備忘録ないし雑記帳,参照 2022-07-25。 ↩︎

  23. ワトソン,TeX と LaTeX の違い。ラング・ラグー,参照 2022-07-25。 ↩︎

  24. 鹿野桂一郎,なぜあなた(ぼく)はTeXでプログラミングできないのか。Zenn,参照 2022-07-25。 ↩︎

  25. zr_tex8r,TeX言語学習に関する“CAP定理”。Qiita,参照 2022-07-25。 ↩︎

  26. doraTeX,TeX で乱数を使う。TeX Alchemist Online,参照 2022-07-25。 ↩︎

  27. doraTeX,TeX で乱数を使う (2) ~ ランダムなシャッフル。TeX Alchemist Online,参照 2022-07-25。 ↩︎

  28. doraTeX,TeX で乱数を使う (3) ~ 逆置換の活用。TeX Alchemist Online,参照 2022-07-25。 ↩︎

  29. zr_tex8r,xparse パッケージでスゴイ LaTeX マクロを作ろう!。Qiita,参照 2022-07-25。 ↩︎

  30. doraTeX,品詞記号出力マクロを設計しよう。TeX Alchemist Online,参照 2022-07-25。 ↩︎

  31. zr_tex8r,徹底解説! \expandafter 活用術(キホン編)。Qiita,参照 2022-07-25。 ↩︎

  32. zr_tex8r,徹底解説! \expandafter 活用術(ホンキ編)。Qiita,参照 2022-07-25。 ↩︎

  33. 阿部紀行,行取り。にっき♪,参照 2022-07-25。 ↩︎

  34. 阿部紀行,\futurelet。にっき♪,参照 2022-07-25。 ↩︎

  35. 鹿野桂一郎,TeXの脚注をなんとかする。golden-luckyの日記,参照 2022-07-25。 ↩︎

  36. ZR-TeXnobabbler,ヤバくない \text 命令を作る話(bxamstext パッケージ)。マクロツイーター,参照 2022-07-29。 ↩︎

  37. 八登崇之,いつも心に LaTeX を。TeXユーザの集い 2011,参照 2022-07-25。 ↩︎

  38. 朝倉卓人,パッケージ制作のすゝめ。SpeakerDeck,参照 2022-07-25。 ↩︎

  39. Masayoshi Takahashi,クラス・パッケージ作者のためのLaTeX 2ε(抄訳)。Qiita,参照 2022-07-29。 ↩︎

  40. 藤原惟,TeX/LaTeX ミーム集【初心者向け】。Zenn,参照 2022-07-25。 ↩︎

  41. 鹿野桂一郎,TeXで使うプログラミング言語まとめ。Zenn,参照 2022-07-25。 ↩︎

  42. hak7a3,もうひとつのTeXがチューリング完全であることの証明。hak7a3が書き残す何か,参照 2022-07-25。 ↩︎