TeXLiveは1年おきにアップデートを行っているようです。TeXLive2020がリリースされていたので以前と同じ方法でインストールしていきます。

TeXLive

特に新機能の目当てもなくTeXLive最新バージョンを追従する必要があるのか?とも思えますがtlmgrのメッセージたびたび促されるのとTeXの場合は日本語まわりで毎年いくらでも改良がくわえられていてもおかしくはないし根本的なソフトウェアの作りにはまだまだドラスティックな改善の余地がある。特に日本語まわりに関しては新しいほど何もトラブルなくいくようになっているしTeXLiveは現状デフォルトでそれに追従しているありがたいTeXディストリビューションだ。texmfのツリー構成とか面倒なことを考えなくていい。

だから現状のベストプラクティスとして2020年からTeXを始めるならTeXLiveの最新版を使おう。そもそも年1で計画的にアップデートが配信されるフリーソフトウェアのコミュニティも珍しいのではないかと思うしTeXLive2019から移項する意義も十分にあるだろうとい思う。

インストール手順

インストール時の手順をトレースしていこう。所要時間は構成にもよるが20分ほどかかるので注意が必要。

(1)TeXLiveの公式ページに行って「download」をクリック。

(1)TeXLiveの公式ページのスクリーンショット

(2)「install-tl-windows.exe」をクリックしてダウンロードして実行する。

(2)TeXLiveの公式ページでdownloadをクリックしたあとのスクリーンショット

(3)場合によってはMicrosoft Defender SmartScreenが作動する。「詳細情報」をクリックすると実行ボタンが出現する。

(3)Microsoft Defender SmartScreenが作動したスクリーンショット

(4)SmartScreen画面の下部に現れた実行ボタンをクリックしてinstall-tl-windows.exeを起動する。PCが危険にさらされる可能性はありません(多分)。

(4)Microsoft Defender SmartScreenが作動したスクリーンショット(2)

(5)最初からInstallにチェックが入っているのでそのままNextをクリックする。

(5)TeXLiveインストーラの展開画面のスクリーンショット

(6)Installを押してインストーラの展開を開始する。

(6)TeXLiveインストーラの展開の直前画面

(7)インストーラが展開されている。ボタンの名前はInstallだがこの時点でインストールが始まるわけではない。インストーラが展開されるだけだ。

(7)TeXLiveインストーラの展開中画面のスクリーンショット(1)

(8)Show Detailをクリックしてみるとこのような感じになっている。Tempの一時ファイルが気になる場合はインストールが終わった後に削除しに行こう。

(8)TeXLiveインストーラの展開中画面のスクリーンショット(2)

(9)インストーラの展開が終わるとインストーラが起動する(ちょっと何言ってるかわからない)。例によっていつものTeXLiveキャラクターが出現する。待機していると近いミラーサーバから必要なものを落として勝手に次の画面に進んでしまうため、このキャラクターが見られる時間は少ない。ゆえにこの画面キャプチャはある意味貴重かもしれない。

(9)TeXLiveインストーラ「マスコットキャラクター」スクリーンショット

(10)TeX Live 2020 インストーラという小さい画面。オプションがTexWorksの有無とデフォルトの用紙サイズしか存在しない。ディスク容量は約6GBと表示されている。例によってこの6GBには不必要なものもたくさん含まれているので「高度な設定」からインストール内容を調整していく。

(10)TeXLiveインストーラ最初の画面のスクリーンショット

(11)このような画面になる。ディレクトリ構成に関する部分、インストール内容の部分、オプション部分に分かれている。オプションの部分はいろいろ心当たりはあるが今回はいじらないことにする。「さらに表示」を押してみる。

(11)TeXLiveインストーラ「高度な設定」画面のスクリーンショット(1)

(12)メインツリー、TEXMFSYSVAR、TEXMFSYSCONFIGとその下にもTEXMFVARとTEXMFCONFIGのディレクトリ構成が表示された。TeXLive2019をひとしきり使った限り普通にtlmgrを使っている場合はメインツリー以外はほとんど何も更新されていなかった。複数ユーザを想定しているようだがディレクトリ部分は特に調整の必要は無いだろう。

(12)TeXLiveインストーラ「高度な設定」画面のスクリーンショット(2)

(13)ちなみに「ポータブル設定」を「はい」にするとユーザごとのディレクトリ構成が変更不可になりTEXDIR配下に統一される。これでTEXDIRをUSBメモリなどに設定しておけばTeXLiveをそのUsbにインストールできる。ところで旧時代によくみられたzip単体で動かせるポータブルなソフトウェアだが、2020の時世にUsbでプログラムファイルを持ち歩くということをしている人はどの程度いるのだろうか?モバイルPCを直接持ち歩けばいいだろうとツッコミを入れたくなる(そんなこと言ったらOverleaf使えばこのインストールすら不要なんですけど?ともいえるけど)。

(13)TeXLiveインストーラ「高度な設定」画面のスクリーンショット(3)

(14)「スキーム」の変更で「basicスキーム」を選択する。スキームとはインストールされるパッケージ群を用途や規模によって分類したもの。小さいスキームでも後からパッケージを追加すれば結果的に大きなスキームをインストールしたことと同じことになる。逆も同じ。すなわち後から変更が聞くのでここで深く考える必要はない。

(14)TeXLiveインストールスキームの選択画面のスクリーンショット

(15)「カスタム」も選んでおく。「basicスキーム」のデフォルトはこのようになっている。必要なものがあれば追加すればよいが実際これだけ見てもわからない。後から追加できるので疑わしきものはインストールしないという方針がよいだろう。

(15)TeXLiveインストール内容のカスタマイズ画面のスクリーンショット(1)

(16)ここでは「日本語」、「LaTeX推奨パッケージ」、「数学、自然科学、計算機科学パッケージ」、「画像と図表」を選択した。この選択肢で特に大きな困りごとは起きていない。約1.2GBほど。これでインストールする。

(16)TeXLiveインストール内容のカスタマイズ画面のスクリーンショット(2)

(17)インストールが始まった。経過時間も表示されている。

(17)TeXLiveインストーラがパッケージをインストール中のスクリーンショット(0)

(18)ひたすら続いている。律義にアルファベット順にインストールされているようだ。1個1個のサイズは数百キロバイトだが個数が738パッケージあるので時間と容量がかかる。

(18)TeXLiveインストーラがパッケージをインストール中のスクリーンショット(1)

(19)TeXLiveインストーラがパッケージをインストール中のスクリーンショット(2)

(19)15分ほどかかってパッケージのインストールが修了。その後mktexlsrなどが走ってインスト―ル終了。

(20)TeXLiveインストーラの最後の画面

(20)インストーラを展開したあとの画面が残っていたが一応のこしておいた。Closeで閉じていい。

(21)TeXLiveのインストーラの展開が終わった画面のスクリーンショット

コンパイルのテスト

最後に確認として初期テストを行った。以前まではTeXStudioをTeXを書く環境として使っていたが最近ではVSCode+LaTeX Workshopなるやり方もあるらしい。よっていったん保留で基本に返ってコマンドラインからタイプセットしてみる。パスは最初から通っている。

次の内容のテキストファイルをdocument.texとして適当な場所に保存する。

\documentclass{jsarticle}
\usepackage{amsmath,amssymb,amsfonts}

\begin{document}
二次方程式の解の公式は
\begin{equation}
x = \frac{-b\pm\sqrt{b^2-4ac}}{2a}
\end{equation}
\end{document}

コマンドラインを開いてその場所に移動し、以下を実行する。

platex document.tex
dvipdfmx document.dvi

これでdocument.pdfが生成されていれば成功だ。内容は次のような感じになる。

2次方程式の解の公式をテストコンパイルした結果

パッケージのアップデート

TeXLiveにはtlmgrというコマンドラインツールがついている。コマンドラインツールだがスタートメニューからGUIも呼び出せるようだ。インストール直後には効果が無いかもしれないが定期的に以下を実行するとパッケージを最新にアップデートできる。

tlmgr update --self --all

これのみでTeXLiveを選択する理由になるくらい便利。ちなみにTeX全体のパッケージの更新頻度はかなり高い(ほうだと思う)。久しぶりにやると数十パッケージくらいは更新される。