LaTeX (TeX) で外部化するファイル位置の登録12
概要
TeX Live に収められていないパッケージや,外部化しようとしているプリアンブルは,そのままでは使えません。それらはコンパイルしようとする .tex ファイルと同じフォルダに置かねばなりません。しかし,都度そのようなことをするのはたいへん手間です。そこで,いわゆる「TeX が見つけられる場所」に置くことで,.tex ファイルと同じフォルダになくともコンパイルすることができるようになります。
具体的には,次のエラーに見舞われたとき3にどうすべきかをお伝えします。ただし,filename には現在使うとしているファイル名が入ります4。
! LaTeX Error: File `filename' not found.
背景
ここしばらく,LaTeX (TeX)56 のインストールするは TeX Live7 が主流になっています。TeX Live を使っていると,ほとんどのパッケージは LaTeX 本体とともに取り込まれるため,深く考えずに \usepackage{...}
とするだけで使えます。
ところが,TeX Live によって TeX をインストールしたときよりも後に作られたパッケージや,TeX Live に収められていないパッケージを使うためには,自分の手でパッケージをインストールするせねばなりません。
また,\input{...}
によってプリアンブルを外部化するときにも,コンパイルする都度ファイルの位置を指定せずに済ませるためには,ファイルを 「TeX が見つけられる場所」に置かねばなりません。ほかにも,署名代わりの画像を載せる,といったときも同じです。
前提
- TeX Live によって TeX のインストールが済んでいる。
- OS が Windows である(他の環境でどこまで似ているのかを知らないため,参考になるかどうかすら分かりません)。
内容
次のとおりに進めてください。
- スタートボタンを右クリックし,Windows Power Shell(管理者)を開きます。
kpsewhich -var-value TEXMFLOCAL
と入力し,エンターキーを押します(コピー&ペーストできます)。- 表示されたフォルダを確かめます。Windows Power Shell の画面は閉じずに置いておいてください。
C:/texlive/texmf-local
となっているのが望ましいと思いますが,C:/texlive/2022/texmf-local
(年号は TeX Live のバージョン)かもしれません。- 年号が入っているとき,このまま進めると将来 TeX Live のバージョンを上げたとき,再びファイルをコピーしなければならないと思われます。それが手間であれば「TeX Live 2022 に更新後 .sty が見えないことへの対処」をお読みください。よく分からなければ,慣れてから考えることにして今はそのまま進めてもひとまず使えます。
- 表示されたフォルダを開きます。
- その中に,好きな名前のフォルダを作ります。
- ダウンロードしてきたパッケージなら,パッケージの名前をフォルダの名前にするとよいでしょう。
- 自分で作ったプリアンブルなら,
mypreamble
などと名づけてください。
- Windows Power Shell に
mktexlsr
と入力し,エンターキーを押します。 - しばらくすると
Updating...
やUpdated...
が複数表示されます。かなりの時間がかかることもあります。しばらく待ってmktexlsr: Done.
と表示されれば終わりです。- 管理者で起動しておかなければ,
Cannot open...
などと表示されて失敗します(最後はmktexlsr: Done.
と言ってきますが,その前の行などを見てください)。そのときは,Windows Power Shell を管理者で起動し,もう一度mktexlsr
してください。何度やっても差しつかえありません。
- 管理者で起動しておかなければ,
- これで,ファイル名だけを(フルパスなしで)
\usepackage{...}
,\input{...}
,\includegraphics{...}
などとしても読み込まれます。
詳細
参考にある記事に技術的な解説があります。
私はこの方法によって The Japanese Educational Preambles を読み込ませているほか,ヘッダに載せる Metaphysica のアイコンも同じように置き,ファイル名のみで \includegraphics
しています。
参考
- LaTeX環境にスタイルファイルを追加する8
- macOS の方法も載っています。
- パッケージの入手,インストール9
- パッケージの入手方法について紹介されています。
- 一覧表の更新 (mktexlsr) について10
mktexlsr
操作の意味が説明されています。
- ! LaTeX Error: File `filename’ not found.11
- パッケージが読み込めていないときのエラーメッセージに関する解説です。
-
追記 2022-07-23。The Japanese Educational Preambles の公開に伴い取り急ぎリンク集としていたところ,記事として仕上げました。 ↩︎
-
改訂 2023-08-12。記事の趣旨に副うよう,タイトルを変えました。旧タイトルは「LaTeX (TeX) パッケージのインストール」です。 ↩︎
-
(Wiki),LaTeX のエラーメッセージ / ! LaTeX Error: File `filename’ not found.。TeX Wiki,参照 2022-07-23。 ↩︎
-
追記 2023-08-12。 ↩︎
-
TeX が組版システム本体の名前で,LaTeX は TeX をより使いやすくするための文書処理システム(フォーマットと呼びます)です。とくに意図しない限り,現在「TeX で文章を書く」とは事実上「LaTeX で文章を書く」ことを意味します。この記事はすべて LaTeX についてのものですが,(TeX) を付しているのは TeX という語のほうが知名度が高く,検索でいらしたかたに伝わりやすくするためです。 ↩︎
-
追記 2022-08-13。タイトルとはじめの LaTeX に (TeX) と解説を加えました。 ↩︎
-
(Wiki),TeX Live。TeX Wiki,参照 2022-07-23。 ↩︎
-
mktia,LaTeX環境にスタイルファイルを追加する。mktia’s note,参照 2022-07-23。 ↩︎
-
(Wiki),各種パッケージの利用 / パッケージの入手,インストール。TeX Wiki,参照 2022-07-23。 ↩︎
-
(Wiki),各種パッケージの利用 / 一覧表の更新 (mktexlsr) について。TeX Wiki,参照 2022-07-23。 ↩︎
-
(Wiki),LaTeX のエラーメッセージ / ! LaTeX Error: File `filename’ not found.。TeX Wiki,参照 2022-07-23。 ↩︎