教育社会学の勉強・備忘録

教育社会学のお勉強メモ。Macユーザーのための記事もたまに書きます。

Mac OS X にTeXをインストールする初心者向けメモ

2014/12/07 追記:TeXまわりのファイル群の包含関係の図を追加しました。

注意事項

OS X 10.11 El Capitanではこの方法はうまくいかないかもしれません。例えば/usr/localというディレクトリが関わる問題についていろいろと不具合があります(詳しくは「rootless」でおググりください)。

ただそれ以上に、この記事を書いた2年前からTeXのエコシステムはいろいろと変わったので、本記事はもう参考にされないほうが良いと思われます。ただ、TeX周りのいろいろな概念についての解説はまだ役立つと思います。気になる方はお読みください。

:この記事でインストール方法を紹介しているTeX Live(詳しくは後述)のバージョンは2013ですが、現在公開されているTeX Liveの最新のバージョンは2014です。これからインストールする人は2014をインストールすることになるかと思いますが、その点には注意してお読みください。ただインストール手順に違いはありません。

TeX Live 2013は/usr/local/texlive/2013/にインストールされますが、TeX Live 2014は/usr/local/texlive/2014/にインストールされますので、それぞれのバージョンは排他的に設置されます(詳しいことを言うと、/usr/texbinTeXディレクトリへのシンボリックリンクになっていて、2014のインストールによってこのリンク先が2014に切り替わります)。

またパッケージやフォントを追加するためのカスタマイズ領域/usr/local/texlive/texmf-localも上書きされませんので、以前の環境を引き継ぎながら本体を2014へとアップデートすることが可能となっています*1

また、本記事で設定を行うのはpLaTeXですが、現在ではupLaTeXの方が主流になりつつある印象があります。基本的なインストール方法は変わらないのですが、「5. TeX Shop の設定」が少し変わってきます。この点はおなじみTeXWikiのページ(TeXShop/設定 - TeX Wiki)を参考にしてみてください(丸投げ)。

本題

本記事では、TeXとかよくわからん、そもそもMacよくわからん、という方のために少し丁寧に、それぞれの作業がどのような意味を持つのか、ということを踏まえつつインストールの説明をしていきます。

わかりにくい用語や補足的な情報に関しては、ちょくちょく文中に注が入っているので、クリックないしマウスホバーして読んでみてください。また、2015年3月現在でもちょくちょく訂正など加えています。

また、ディレクトリ表記は英語にしていますが、適宜日本語に読み替えてください(「Library」を「ライブラリ」など)。

0. TeX とか TeX Live とか MacTeX とか LaTeX とかいろいろあるけど結局何なの?

TeXをインストールすると言いましたが、これからインストールするものはTeX Liveで、インストールにはMacTeXを用います。そしてLaTeXによって文書作成を行えるように設定を行います*2

ざっくり言ってしまえば、TeXは膨大なプログラム、ファイル群からなった集合体であり、これをまとめて扱いやすく、またメンテナンスしやすくパッケージ化したものがTeX Liveということになります。TeXのコアのプログラムと、一連の命令をまとめた便利なマクロ、TeX自身を拡張した各種エンジン、フォント情報などを詰め込んだものがTeX Liveというわけです。

で、TeX Liveの中に含まれているマクロパッケージにもいくつか種類があるのですが、その中でも主流のマクロパッケージがLaTeXであり、本記事はLaTeXによって文書作成ができるように設定を行います (ちなみに最近はLuaTeXというエンジンがアツいという話です→TeXユーザの集い 2010 八登 崇之 氏:「日本人の知らないTeX」*3

さらに厳密に言うと、LaTeXでは日本語を扱うことができません。LaTeXTeXを利用するマクロパッケージですが、TeX自体が日本語に対応していないためです。本記事は、TeXで日本語が扱えるように拡張したpTeXというエンジンをLaTeXマクロパッケージから利用する拡張である、pLaTeXマクロパッケージを設定します(ややこしいですが、この辺りは気にしなくても大丈夫です。とにかくpLaTeXを使っているのだ、ということが分かれば良いと思います)。

そして「MacTeX」ですが、これはTeX LiveとTeX文書作成に役立つ便利なアプリケーションを同時にインストールをしてくれる、Mac用のインストール・パッケージです。TeXの記述から文書出力まで一元的に行える「TeX Shop」といったアプリケーション*4や、TeXのメンテナンスを行いやすくしてくれる「TeX Live Utility」(後で出てきます)というアプリケーションなど、多くのアプリケーションが同時にインストールされます*5

包含関係を図にすると以下のような感じです。ConTeXtというのもマクロパッケージの一種です。図中では、マクロパッケージごとにTeX本体やフォント、マクロを持つようになっていますが、実際はTeXやフォントは同一のファイルで、各マクロがそれぞれ呼び出しているような形になっています(ベン図ではその様子が表現できなかったのであしからず)。またTeXやLuaTeX自体は「エンジン」であり、LaTeXなどのマクロパッケージがそれを呼び出して使うような形になります。例えば、pTeXを用いたLaTeXpLaTeXであり、XeTeXを用いたLaTeXはXeLaTeXであり、LuaTeXを用いたLaTeXはLuaLaTeXです。

f:id:makasata:20150307172538p:plain

ここまでお読みいただければわかるかと思いますが、MacTeXを用いなくてもTeX環境を構築することは当然可能です。MacTeXは、TeX Liveを基盤として、必要な場所に必要なファイルを置き、適切に設定を行っているだけです。

実際に、MacPortsやHomebrewにもTeX Liveのインストールパッケージが用意されています。MacTeXはあくまでMac OSTeXを利用するための一手段に過ぎないのですが、おそらく現状で最も簡単なインストール手段であるということです。

1. インストール

MacTeX - TeX Users GroupからTeX LiveのインストールパッケージMacTeX.pkgをダウンロードし、インストール。

Latin Modern Fonts と TeX Gyre Fonts もインストールパッケージに含まれているのですが、デフォルトではインストールされません。インストールに進む直前で「カスタマイズ」を押すと、このフォント群もインストールすることができます。僕はLatin Modern Fontsが好きなので、入れておきました。

このフォントはそれぞれ/Library/Fonts/Latin Modern/および/Library/Fonts/TeX Gyre/にインストールされるようです。他アプリケーションからも使えます。

TeXの本体やパッケージ群は/usr/local/texlive/にインストールされます。その中の/usr/local/texlive/2013/TeXの本体で、ここは基本的にいじらず、カスタマイズを行うときは/usr/local/texlive/texmf-localの中をいじるのが良いそうです*6*7

texmf-localはユーザー用の領域として設定されていて、このディレクトリ内に適宜ファイルを配置することで、TeX本体を変更することなく、自由なカスタマイズを行うことができるようです(したがって、初期状態ではtexmf-localディレクトリ内にはほとんどファイルは設置されていません)。

TeX動作の際には両方のディレクトリが読み込まれ、texmf-local > 2013という優先順位で設定が適用されるようです。

2. TeX Live Utility によるパッケージのアップデート

インストールが完了したら、TeX Live Utility.app からパッケージ群*8のアップデートをしましょう*9。「/Applications/TeX/TeX Live Utility.app」にインストールされています。

たまに「更新に失敗しました」みたいなことを言われますが、その場合は「設定 > リポジトリを管理」から、「ASIA > Japan」よりお住まいの地域に地理的に近い(わからなければどれでも良いですが)適当なリポジトリを選んでください(当然ですが全てミラーサイトなのでどのURLにアクセスしても同じです)。

TeX Live Utilityのコアを更新してください」というようなことを言われると思いますので、言われるがまま更新。

その後、「作業 > すべてのパッケージを更新」から、TeX Liveでインストールされたパッケージを最新版に更新します。かなり時間がかかります。MacTeXはある時点でのTeX Liveの最新版をインストールパッケージとして配布しているものですので、アップデートにより最新版に追いつく必要があるわけです。

TeX Liveでアップデートを怠ったからといって何か重大な問題が発生したということは聞いたことはありませんが、数ヶ月に1回くらいは*10アップデート作業を行いましょう。

3. texmf.cnf の編集

利便性を高めるために、こちらのページを参考に設定を行います→texmf.cnf の編集

上記ページではコマンドラインで行なっていますが、Finderから該当ディレクトリに進んで、テキストエディタで保存するのでも良いと思います。

あるいは、一番早いのは、

  1. テキストエディタを開いて、以下の文字列をコピペ
  2. 保存画面を開き「/」キーを押すと保存先が出てくるので、/usr/local/texlive/texmf-local/web2c/texmf.cnfを貼り付けて移動
  3. 保存
  4. /usr ディレクトリ以下はシステムディレクトリなので、保存のためにパスワードが要求されるので入力

以下の文字列をコピペ

shell_escape_commands = \
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\
kpsewhich,\
makeindex,mendex,texindy,\
mpost,pmpost,\
repstopdf,epspdf,extractbb,\

texmf.cnfに以上の文字列を入力し、実際にTeX文章を書いてタイプセットを行うと以下のようなエラーが出ることがあります。「texmf.cnfの最終行が「\」で終わってるよ」ということなのですが、最終行のあとに改行を2つ入れることで僕は解決しました。タイプセット自体には支障はないので、「\」で終わるとどういった問題があるのかはよくわかりませんが…

warning: kpathsea: Last line of file ends with \.

4. 日本語フォントの設定

以下を参考に。 http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac#i9febc9b

OS Xの標準フォントであるヒラギノを使うときには、「ターミナル」から以下を1行ずつ入力し、Enter(コピペ用にプロンプトは省いています*11)。LaTeXで作成するPDFにフォントを埋め込むことができます*12sudoから始まるコマンドでは、お使いのMacのパスワード*13を要求されますのでご注意を。

sudo mkdir -p /usr/local/texlive/texmf-local/fonts/opentype/hiragino/
cd /usr/local/texlive/texmf-local/fonts/opentype/hiragino/
sudo ln -fs "/Library/Fonts/ヒラギノ明朝 Pro W3.otf" ./HiraMinPro-W3.otf
sudo ln -fs "/Library/Fonts/ヒラギノ明朝 Pro W6.otf" ./HiraMinPro-W6.otf
sudo ln -fs "/Library/Fonts/ヒラギノ丸ゴ Pro W4.otf" ./HiraMaruPro-W4.otf
sudo ln -fs "/Library/Fonts/ヒラギノ角ゴ Pro W3.otf" ./HiraKakuPro-W3.otf
sudo ln -fs "/Library/Fonts/ヒラギノ角ゴ Pro W6.otf" ./HiraKakuPro-W6.otf
sudo ln -fs "/Library/Fonts/ヒラギノ角ゴ Std W8.otf" ./HiraKakuStd-W8.otf
sudo mktexlsr
sudo updmap-sys --setoption kanjiEmbed hiragino

一応何をしているのか簡単に解説をすると以下の様な感じになるかと思います。TeXのフォント周りの仕様は僕もなかなか良くわからないです(闇の技術っぽい何かがうまく動いてるみたいな感じです)…

  1. texmf-localにフォントを配置する用のディレクトリを作成、そこに移動
  2. Macに入っているヒラギノフォントから、作成したディレクトリ内にシンボリックリンク(実物がそこにあるかのように見せるもの)を張る
  3. TeXからこの配置したフォントを認識できるように、ファイルのデータベースを更新
  4. ヒラギノフォントを使いなさい、と命令

僕は小塚を使いたいので、以下のコマンドで(コピペ用にプロンプトは省いています)。小塚フォントは、Adobe製品をインストールする際についてきます。

sudo mkdir -p /usr/local/texlive/texmf-local/fonts/opentype/kozuka
sudo ln -fs /Library/Fonts/Koz* /usr/local/texlive/texmf-local/fonts/opentype/kozuka
sudo mktexlsr
sudo updmap-sys --setoption kanjiEmbed kozuka

Mac OS X 10.9 Mavericks から付属するようになった游書体を使いたい場合の設定は少々ややこしいです。こちらの記事をご覧ください→ 游明朝体・游ゴシック体をMac OS XのLaTeXで使う

5. TeX Shop の設定

TeX文書を書くためのソフトウェアはいろいろありますが、僕はTeXShopが好きなのでTeXShopの設定します。

/Applications/TeX/TeXShop.app」にインストールされていますのでこれを起動し、まずはメニューの「TeXShop→アップデートを確認…」からTeXShop自体のアップデートを行いましょう。MacTeXでインストールされるバージョンは少し古いTeXShopで、アップデートに失敗することがあります。その場合は、TeXShopの開発元サイトから最新版をダウンロードして上書きしましょう。

こちら http://pages.uoregon.edu/koch/texshop/texshop.html のページの右上「Direct Download」からダウンロードできます。

設定の方法は、まず「TeXShop→環境設定…」を開いて、基本的には以下を参考に。 http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?TeXShop%2F%E8%A8%AD%E5%AE%9A

このページの「TeXShop 環境設定」(http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?TeXShop%2F%E8%A8%AD%E5%AE%9A#d2699f04)のとおりに設定を行います。

環境設定を行なっていくと「内部設定」のセクションがありますが、今回はその中の一番上の「■ptex2pdf を使用する」を参考に設定しました。

上記のページでいくつか設定の方法がある中の違いは僕もよくわかっていませんが、作成したTeX文章をタイプセットするとき(DVIなりPDFなりに文章を出力するとき)の内部処理を行う際にいろいろな方法が用意されているということになります。

もし上記の「ptex2pdf」で何かしらエラーが出る場合には、他の方法を利用してみてください。

ここまで設定が完了すれば、ひとまずTeXで文章を書き始めることができます。お疲れ様でした。

後ほど、TeXShopの便利な使い方みたいなものでもまとめようかと思っています。

ひと通り設定が終わったら見ておくと良いページ

とりあえず今のところ2ページだけですが、他にもこれはというページがあれば付け足して行こうと思います。

技術的な情報が書いてあるページも一応まとめておきます。

  • TeX: Reference and Examples by David BausumTeX自体に用意されている(=マクロではない)コマンドの一覧です。英語です。
  • /usr/local/texlive/2013/texmf-dist/doc/platex/jsclasses/jsclasses.pdfLaTeXで日本語の文書を作成するときの業界標準とも言える奥村先生作のドキュメントクラス、「jsclasses」の説明書です。「この処理ってどうなってんだ?」「どんなオプションやコマンドが使えるんだ?」みたいなことがあれば読んでみましょう。
  • 日本語組版処理の要件(日本語版):こちらは定番の通称『要件』。日本語の出版物における組版*14の規則が非常によくまとまっています。jsclassesはこの規則にしたがっています。

もしわからないことがあれば

TeXに関する処理の中では何が起きているのか、普通の人にとってはまさにブラックボックスです。パッケージは大量にあるし、コマンドの意味もわからないし…

知ってしまえば案外単純なのかもしれませんが、これを体系的に説明した日本語のドキュメントはほとんどないんじゃないかという気がします。その中でも一番良いとされている(と僕が思う)書籍としては、奥村先生の『美文書作成入門』があります(つい先ごろ新版が発売されました)↓

[改訂第6版] LaTeX2ε美文書作成入門

[改訂第6版] LaTeX2ε美文書作成入門

これを読んだら、(La)TeXに関するだいたいのことはわかるんじゃないか、という気がします。何かわからないことがあれば、大学の図書館にも置いてあると思うので、ぜひあたってみてください。

それでももしわからないことがあれば、とにかくググる

重要なのは、日本語のサイトのみに限定して検索をかけないことです。日本でもいろいろなブログでTeXに関するいろいろなことが書かれていますが、やはり断片的で、欲しい解決策が示されないことも多いです。その点海外のサイトでは、日本語サイトでは見つからない解決策がゴロゴロと出てくることがあります。

そしてもう一つ大事なことは、ちゃんとドキュメントを読むことです。TeX Liveにはいろいろなパッケージがついてきます。そして、その説明もWebサイトにいろいろあったりしますが、最も信頼出来る情報が書いてあるのは、そのパッケージの説明書です。

パッケージの説明書は、以下のいずれかの方法で見つけることができます。説明書のPDFは通常、パッケージ名.pdfという名前になっています。

  • TeX Live Utility の「パッケージ」タブを開いてパッケージの名前を検索し、そのパッケージをダブルクリック。するとパッケージを構成するファイルの情報が出てきますので、説明書PDFを探しましょう。
  • /usr/local/texlive/2014/doc.htmlに、TeXLiveによってインストールされるパッケージがリストアップされています。これをブラウザで開き、⌘+Fでパッケージの名前を検索しましょう。こちらも同じく、パッケージを構成するファイルの情報が出てきますので、説明書PDFを探してみましょう。

ただしこちらもほとんど英語なので、そこは頑張って読みましょう。英語を読む良い機会です。

また、奥村先生が運営しているTeXフォーラムがありますので、そちらで調べると結構有用(でしかもコア)な情報が転がっています。ただ記事がGoogle検索に引っかかりにくいので、フォーラムサイトから直接検索しに行きましょう。

  • TeX Q & A:2001年からある掲示板です。
  • TeX Forum:こちらは新フォーラムで、いろいろと便利に見やすくなっています。

ボヤき

はー、誰かTeXの処理系をわかりやすく解説したサイトとか作ってくれないだろうか…

*1:というわけなので、Macをリカバリしたり、他のMacに環境を移すときなどには、TeX Liveをインストールした後にtexmf-localのみコピーすればよいということですね

*2:TeXTeX Liveの関係についてはこのページが参考になります→なぜ TeX Live なのか

*3:TeXのコアプログラムだけで文書を作成することもできるのですが、よく使う処理などをまとめて、簡単な命令で呼び出しやすくパッケージングなどしてくれているものがマクロパッケージです。マクロパッケージにはいろいろな種類がありますが、その主流がLaTeXです。こうしたさまざまマクロパッケージがTeX Liveには含まれており、TeX Liveをインストールするだけでこうした実行環境を手に入れることができます。で、本記事ではLaTeXを利用することを想定しています、ということです。この辺りの話は少々複雑なので、Wikipediaでいろいろなマクロパッケージのページを読んだりしてみてください。

*4:こういうソフトウェアのことをフロントエンドといいます。ただTeX Shopの場合はフロントエンドに加えてテキストエディタの機能も兼ねているので統合開発環境と呼んだほうがもっとしっくりくるかもしれません。

*5:MacTeXを使わずにTeX Liveをインストールすることも当然できます。MacPortsやHomeBrewでも確か提供されていましたし、自分でTeX Liveのソースコードを落としてきてコンパイルすることも可能です。TeX ShopやTeX Live Utilityなどもそれぞれの公式サイトで公開されているので、自前で用意することができます。

*6:http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac#laf8fccf を参考。

*7:Mac OSのようなUNIX系OSでは、"local"とつくディレクトリは基本的はシステムのコアではなく、ユーザーが自由にカスタマイズするためのディレクトリであることが多いですね。

*8:パッケージとは、TeXにおいてよく使われる処理の一連の流れをひとまとめにして使いしやすくしたファイルのことです。よく使われる処理というのは例えば、脚注を処理するためのパッケージ、図表を挿入するパッケージ、箇条書きを行うパッケージなどです。TeX Liveには最初から多くのパッケージが含まれていますが、最新版でない場合があるためインターネット上のリポジトリ(ファイルの貯蔵庫のようなもの)から最新版を取得する作業が必要になるというわけです。

*9:TeX Liveのアップデートやパッケージ管理を行うコマンドとして、TeX Live自体にtlmgr(the TeX Live Manager)というコマンドが用意されています。このtlmgrのGUIフロントエンドがTeX Live Utilityです。TeX Live Utilityの公式サイトによれば、「TeX Live Utility is a Mac OS X graphical interface for TeX Live Manager. It aims to provide a native Mac OS X interface for the most commonly used functions of the TeX Live Manager command-line tool.」とのことです。

*10:数ヶ月に1回、ということに特に根拠はないですが、TeXのパッケージはものすごく頻繁にアップデートが行われており、3日ほうっておくだけで10個くらいのパッケージがアップデートされていたりするほどです。適度にアップデートは行っておくことをおすすめします。

*11:ふつうこういうコマンドを人に示すときには、慣例としてそれぞれのコマンドの先頭に「$」マークを付けて「これコマンドだよ!」って感じでわかりやすくしますが、逆にそれを知らないと「$」マークもコマンドの一部だと勘違いをしてしまう人がいると思うんですよね(かつて僕がそうでした)…プロンプトの詳しい意味についてはWikipediaを読んでみてください→コマンドプロンプト - Wikipedia

*12:埋め込まないことも可能ですが、原則としてPDFには使用しているフォントを埋め込むことが決められています(たしか)。埋め込まない場合、Windowsなどで見たときに文字化けを起こしたりします。

*13:厳密にはユーザーレベルが「管理者」となっているアカウントのパスワードです。個人でお使いのMacでしたら通常は自分のアカウントが「管理者」レベルになっているので、自分のパスワードをそのまま入力すれば大丈夫です。

*14:「印刷の一工程で、文字や図版などの要素を配置し、紙面を構成すること。」(組版 - Wikipedia