LaTeX (TeX) のインストールと入門12

背景

数学の教材を作るにあたっては,数式をそれなりの見映えで出力する必要があります。数学の教材を作成するソフトウェアは複数ありますが,私は様々な理由から LaTeX (TeX)34 を使っており,また LaTeX の使用を広めたいと思っています。

そこで,少しでもあなたの LaTeX の導入が楽になるように,この記事を提供します。

教材作成になぜ LaTeX がよいと思うか,については別途解説しています

目的

  • LaTeX (LuaLaTeX) を用いて文書が作成できるようになる。
  • LaTeX (LuaLaTeX) を用いた教材作成に役立つ環境を紹介する。

前提

内容

インストールと練習7

インストールには長くて数時間かかります。コンピュータの電源を入れ続けられる・インターネットに接続し続けられる環境かを確認のうえ始めてください。

この記事の内容を一度に熟そうと思う場合は,休日をこのために使うつもりでいたほうがよいでしょう。もちろん,分割なさってもよいでしょう。

Windows の拡張子を表示

LaTeX を使うか否かにかかわらず,常に拡張子を表示しておくことをおすすめします。

  1. エクスプローラを開いてください。
    • 何か適当なフォルダを開くのでも構いません。
  2. 上部にある[表示]タブをクリックしてください。
  3. 右にある[オプション]をクリックしてください。
  4. フォルダーオプションが開きます。
  5. 上部にある[表示]タブをクリックしてください。
  6. [詳細設定]から[登録されている拡張子は表示しない]のチェックを外してください
  7. [OK]をクリックします。

参考: TeX Wiki / TeX Live / Windows / インストール8

TeX Live によるインストール

  1. Installing TeX Live over the Internet9 を開いてください。
    • 説明を読みながら進むために,新しいタブ・ウィンドウで開いてください。
  2. 序盤にある下線付きの[install-tl-windows.exe]をクリックしてください。
  3. インストーラがダウンロードされます。
  4. ダウンロードされた install-tl-windows.exe 開いてください。
    • パソコンの使用者全員で使うときは,右クリックののち[管理者として実行]をクリックしてください。
    • パソコンの他のユーザーは使わないときは,通常のダブルクリックでかまいません。
  5. 画面の指示に従ってインストールしてください。
    • [Windows によって PC が保護されました]などと表示されるときは,[詳細情報]をクリックしたのちに[実行]をクリックしてください。

参考: TeX Wiki / TeX Live / Windows / インストール8

作業フォルダの作成

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

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

  • C:\texliveworkspace というフォルダを作成し,この中で教材を作成します。
  • ひとつの文書に対してひとつのフォルダを用意します。
    • たとえば,これからの練習に対して workplace フォルダの中にさらに tutorial というフォルダを作り,その中に .tex ファイルを置きます。
  • フォルダをソートしやすいように,日付か番号を振っておきます。

TeXWorks の使用

執筆には TeXworks の使用をおすすめします。

  1. スタートメニューの[TeX Live 2022(年度)]/[TeXworks editor]をクリックし,起動してください。
  2. 使いかたはこの記事が丁寧です10

練習13

  1. TeXWorks が起動していることを確認してください。
  2. まず,作業フォルダとファイルを作っておきましょう。
    1. [ファイル]/[名前を付けて保存]をクリックしてください。
    2. すでに決めた作業フォルダを開いてください。
    3. [YYYYMMDD_tutorial]という名前のフォルダを作ってください(ウィンドウ左上の[新規フォルダ]をクリックしてください)(YYYYMMDD には 20220727 のように日付を入れます)。
    4. 今作った[YYYYMMDD_tutorial]フォルダを開き,tutorial.tex というファイル名で保存してください。
  3. 次の文章を入力してみましょう。色は気にしなくてかまいません。コピー&ペーストも可能です。
    \documentclass{ltjsarticle}
    \begin{document}
    \section{Lua\LaTeX-jaの練習}
    \subsection{はじめまして,Lua\LaTeX}
    さあ,これから一緒にLua\LaTeX を使う体験をはじめましょう。
    それはきっと素晴らしいものになるはずです。
    \end{document}
    
  4. TeXworks の左上に緑の矢印があります。その右のプルダウンメニューから,[LuaLaTeX]を探してクリックしてください。
  5. 緑の矢印をクリックしてください。
  6. 自動的に組版され,文書が表示されたことでしょう。
    • 先ほどあなたが書いた,LaTeX への命令と文書が書かれたものをソースと呼びます。
    • [YYYYMMDD_tutorial]フォルダには,tutorial.pdf ができています。
    • ソースから PDF を得ることをタイプセットと呼びます。
    • PDF ファイルをほかのソフトウェアで開いているうちは,TeXworks のタイプセットが効かなくなります。注意してください。
  7. ソースと PDF の違いを見ておきましょう。
    • \documentclass{ltjsarticle} とは,ltjsarticle という名前で決められている配置に従って組版するという命令です。
    • \begin{document}\end{document} は文書の始まりと終わりを表します。
    • \documentclass...\begin{document} よりも前にありました。文書に対する設定は, \begin{document} よりも前に書きます。この領域をプリアンブルと呼びます。
    • \section{Lua\LaTeX-jaの練習} は「1. LuaLATEX-jaの練習」に変わっていますね。\section という命令は,番号を自動で計算して表示し,太字し,節の見出しを作ってくれるのです。
    • \subsection は小節の見出しを作ってくれます。
    • \LaTeX と書いた部分が「LATEX」の A と E の位置がずれたものになっています。\LaTeX という命令は LaTeX のロゴを出力します。
    • 節見出しの「-ja」と「の練習」の間に微小な空白があることに気づきましたか。基本的に,欧文と日本語,数式と本文のような空白については自動で処理してくれます。
    • ソースの改行が無効になっています。欧文中ではスペースになります。
    • 文章が右端で自動的に折り返されています。
  8. 毎回プルダウンメニューから LuaLaTeX を選ぶのは手間なので,既定にしてしまいましょう。
    1. TeXworks の[編集]/[設定]をクリックし,[タイプセット]タブをクリックしてください。
    2. [タイプセットの方法]下部の[デフォルト]から LuaLaTeX を探し,クリックしてください。
    3. [OK]をクリックしてください。
  9. ここから先は,TeX Wiki の LaTeX 入門15にしたがいましょう。ただし,あなたは LuaLaTeX・TeXworks・TeX Live を使っています。読み替える部分は示しますので,注意してください。
    • すべての個所において,次のように置き換えてください。
      • \documentclass[dvipdfmx]{jsarticle}
        \documentclass{ltjsarticle}
      • PDF を開く
        → TeXworks の右側に表示される
        • PDF ファイルを直接開いてももちろんよいのですが,開いたままでは次のタイプセットができません。
    • 元気があればすべて読んでいただくことをお勧めしますが,少なくとも次の部分は試してみてください。
    • 簡単な数式 (1)16
    • 簡単な数式 (2)17
    • 各種パッケージの利用18
      • 「パッケージファイルの場所」以降は後ほど必要になりますが,別途解説しています(後述)。TeX Live を使ってインストールしていれば,すでに大量のパッケージは使える状態に設定されていますから,今この瞬間は飛ばしても問題ありません。
    • レポート19
    • 図表20
      • \usepackage[dvipdfmx]{graphicx}
        \usepackage{graphicx}
        LuaLaTeX では,[dvipdfmx] と書いてはいけません。
      • apple.png は .tex ファイルと同じフォルダに置いてください。
    • 相互参照とリンク21
      • 「(u)platex で処理」はもちろん「lualatex で処理」です。
      • \usepackage[dvipdfmx]{hyperref}
        \usepackage[unicode]{hyperref}
    • 慣れてきたら,自分でマクロを作ってみましょう22。これこそが LaTeX を使う醍醐味です。
  10. 教材らしい体裁にしてみましょう。
    1. The Japanese Educational Preamblesにある最新版をダウンロードしてください。
    2. the Japanese Educational Preambles を適切な場所に置き,mktexlsr してください。よく分からなければ,こちらで解説しています
    3. The Japanese Educational Preambles 見本のソースファイルをダウンロードしてください。
    4. 作業フォルダに移動させ,LuaLaTeX でタイプセットしてみてください。
    5. 無事に PDF ファイルが生成されれば成功です!
    6. 適当に書き換えて遊んでみてください。
  11. ぜひ,ともに LaTeX による教材作成を楽しみましょう! 今後も LaTeX を使っていこうと思われるのなら,ひとつは本を持っておかれることをおすすめします。

少し慣れたところで直接使うべきパッケージの説明も読めば,より自由に使えるようになるでしょう

TeXworks のフォントを変更

TeXworks に既定で使われるフォントは,残念ながらあまり執筆には向いていません。ソースコードが読みやすくなるように,プログラミング向けフォントの導入をおすすめします。おすすめのフォントと設定の方法も別途解説しています

構造と表現の分離25

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

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

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

書籍での学習26

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

詳細

端末へのインストール権限がないかたへ

クラウド上のサービスなどで LaTeX をご利用になる場合も,お手元にソースファイルを残しておくことを強くお勧めいたします。突然サービスが終了したとしても,資産が残るようにするためです。

直接使うべき引用パッケージの説明

The Japanese Educational Preambles の LuaLaTeX 版で読み込まれるものです。公式のマニュアルは英語であることもままあります。その場合は,非公式な解説文も併せて紹介します。

参考

基本的な内容

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

  1. TeX の作法
  2. 作業環境の向上
  3. パッケージの追加
  4. TeX の動き
  5. 自分で命令を作る
  6. 読みもの

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

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

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


  1. 追記 2022-07-24。The Japanese Educational Preambles の公開に伴い取り急ぎリンク集として公開していたところ,内容を執筆しました。 ↩︎

  2. 追記 2022-07-27。LuaLaTeX を前提とすることを明確にしました。 ↩︎

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

  4. 追記 2022-08-13。タイトルと最初の LaTeX に (TeX) と解説を追加。 ↩︎

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

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

  7. 改訂 2022-07-27。はじめから LuaLaTeX を導入するように改訂しました。 ↩︎

  8. (Wiki),TeX Live / Windows / ネットワークインストーラの場合。TeX Wiki,参照 2022-07-23。 ↩︎

  9. TeX Users Group,Installing TeX Live over the Internet。TeX Users Group,参照 2022-07-23。 ↩︎

  10. (Wiki),TeXworks / 使い方。TeX Wiki,参照 2022-07-23。 ↩︎

  11. (Q&A),texworksの行番号表示が不安定です。TeX Forum,参照 2022-07-24。 ↩︎

  12. 追記 2022-07-24。 ↩︎

  13. 改訂 2022-07-27。LuaLaTeX ではじめから試せるように書き換えました。 ↩︎

  14. (Wiki),LaTeX入門 / 最初の例 /エラーメッセージが出たら。TeX Wiki,参照 2022-07-27。 ↩︎

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

  16. (Wiki),LaTeX入門 / 簡単な数式 (1)。TeX Wiki,参照 2022-07-23。 ↩︎

  17. (Wiki),LaTeX入門 / 簡単な数式 (2)。TeX Wiki,参照 2022-07-23。 ↩︎

  18. (Wiki),LaTeX入門 / 各種パッケージの利用。TeX Wiki,参照 2022-07-23。 ↩︎

  19. (Wiki),LaTeX入門 / レポート。TeX Wiki,参照 2022-07-23。 ↩︎

  20. (Wiki),LaTeX入門 / 図表。TeX Wiki,参照 2022-07-23。 ↩︎

  21. (Wiki),LaTeX入門 / 相互参照とリンク。TeX Wiki,参照 2022-07-23。 ↩︎

  22. (Wiki),LaTeX入門 / LaTeX マクロの作成。TeX Wiki,参照 2022-07-23。 ↩︎

  23. Haruhiko Okumura,『[改訂第8版]LaTeX2e美文書作成入門』サポートページ。GitHub,参照 2022-07-23。 ↩︎

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

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

  26. 改訂 2022-07-28。書籍での学習のすすめを見出しに立てました。 ↩︎

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

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

  29. (Wiki),TeX を使ってみよう。TeX Wiki,参照 2022-07-23。 ↩︎

  30. 株式会社アカリク,Cloud LaTeX。Cloud LaTeX,参照 2022-07-23。 ↩︎

  31. 株式会社アカリク,独自のスタイル / フォント / パッケージを利用したい。Cloud LaTeX,参照 2022-07-23。 ↩︎

  32. (CTAN),Yukoh Kusakabe。CTAN,参照 2022-07-23。 ↩︎

  33. D. P. Carlisle / The LaTeX Project,Packages in the graphics bundle。CTAN,参照 2022-07-24。 ↩︎

  34. (Wiki),LaTeX入門 / 図表。TeX Wiki,参照 2022-07-24。 ↩︎

  35. Martin Scharrer,The adjustbox Package。CTAN,参照 2022-07-24。 ↩︎

  36. konoyonohana,[LaTeX] adjustbox - Graphics package を補完する汎用ボックス。天地有情,参照 2022-07-24。 ↩︎

  37. 八登崇之,pxrubrica パッケージ。CTAN,参照 2022-07-24。 ↩︎

  38. zr_tex8r,LaTeX 文書で美しい日本のルビを使う ~pxrubrica パッケージ~。Qiita,参照 2022-07-24。 ↩︎

  39. Donald Arseneau,The cases package。CTAN,参照 2022-07-24。 ↩︎

  40. Yarakashi-Kikohshi,場合分けをきれいに書く。Qiita,参照 2022-07-24。 ↩︎

  41. Donald Arseneau,The ulem package: underlining for emphasis。CTAN,参照 2022-07-24。 ↩︎

  42. (不明),【LaTeX】下線・波線・打ち消し線・上線などの引き方。数学の景色,参照 2022-07-24。 ↩︎

  43. Clemens Niederberger,TASKS。CTAN,参照 2022-07-24。 ↩︎

  44. Yoshiki KUMAZAWA,tasks。xyoshiki.web.fc2.com,参照 2022-07-24。 ↩︎

  45. Yukoh KUSAKABE,The asternote package。CTAN,参照 2022-07-24。 ↩︎

  46. Yukoh KUSAKABE,The inlinelabel package。CTAN,参照 2022-07-24。 ↩︎

  47. Yukoh KUSAKABE,The hideanswer package。CTAN,参照 2022-07-24。 ↩︎

  48. Yukoh KUSAKABE,The jpneduenumerate package。CTAN,参照 2022-07-24。 ↩︎

  49. Yukoh KUSAKABE,The jpnedumathsymbols package。CTAN,参照 2022-07-24。 ↩︎

  50. Frank Mittelbach,An environment for multicolumn output。CTAN,参照 2022-07-24。 ↩︎

  51. Yoshiki KUMAZAWA,multicol。xyoshiki.web.fc2.com,参照 2022-07-24。 ↩︎

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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