# TeX Live (日本語)

関連記事

- TeX Live FAQ
- TeX Live and CJK
- LaTeX

TeX Live は"簡単に立ち上げて使える TeX 文章生成システムです。GNU/Linux を含むほとんどの Unix や Windows に対応したバイナリの包括的な TeX システムを提供します。主要な TeX 関連プログラム、マクロパッケージ、フォントなどを全て含み、世界中の言語をサポートしています。"

より詳しい情報は次を見て下さい: Category:TeX (日本語)

## インストール

公式リポジトリでは TeX Live のパッケージは2つのグループに分けられています:

- texlive-most には TeX Live のアプリケーションが入っています。
- texlive-lang には様々な文字セットや非英語圏の機能が入っています。

必須のパッケージ texlive-core には基本的な texmf-dist ツリーが含まれており、texlive-bin にはバイナリやライブラリ、texmf ツリーが含まれています。texlive-core は上流のディストリビューションの “medium” インストールスキームに基づいています。他のパッケージは全て TeX Live の eponymous コレクションに基づいています。CTAN パッケージがそれぞれのパッケージに含まれているか確かめるには、次のファイルを調べて下さい:

     /var/lib/texmf/arch/installedpkgs/<package>_<revnr>.pkgs

### texlive-most

texlive-core texlive-bibtexextra texlive-fontsextra texlive-formatsextra texlive-games | texlive-genericextra texlive-htmlxml texlive-humanities texlive-latexextra texlive-music | texlive-pictures texlive-plainextra texlive-pstricks texlive-publishers texlive-science

### texlive-lang

- texlive-langcjk
- texlive-langcyrillic
- texlive-langgreek
- texlive-langextra

Note: texlive-langextra はアフリカ・アラビア・アルメニア・クロアチア・ヘブライ・インド・モンゴル・チベット・ベトナムの言語サポートを提供します。

### 代案: TeX Live ネットワークインストール

TeX Live を手動でインストールすることは通常のインストールよりもコントロールが効きプロセスの理解に役立つため Arch Way の主旨に沿います。また、100 MB 以下でフル機能の LaTeX ディストリビューションを取得する唯一の方法であり、使わないような数千のパッケージをインストールする必要がありません。

TeX Live のネットワークインストールについては詳しいガイドが LaTeX Wikibook にあります。

TeX Live をネットワークインストールする情報: http://tug.org/texlive/doc/texlive-en/texlive-en.html#x1-140003

TeX Live のネットワークインストールに関するメリットとデメリットの議論もあります。

texlive がインストールされていることを必要とするプログラム (例: kile) のために AUR から texlive-dummy パッケージを使うことができます。

## 重要事項

- 2009年の9月から updmap のフォントマッピングを処理する方法は改善され、以前よりもインストールが信頼できるものになっています。もし、マップファイルが見つからないというエラーメッセージが表示されたときは、手動で `updmap.cfg` ファイルから削除してください (`updmap-sys --edit` を使うのが理想)。また、`updmap-sys --syncwithtrees` を実行すれば設定ファイルから古くなったマップを自動でコメントアウトすることができます。

- (MKII や MKIV の) ConTeXt フォーマットはインストール時に自動で生成されません。ConTeXT wiki の説明を見て下さい。

- ドキュメントやソースを含むパッケージを [community] リポジトリから取得することができます。また、オンラインで http://tug.org/texlive/Contents/live/doc.html や CTAN で見ることも可能です。

- (上流の) TeX Live は CTAN パッケージの差分更新をするためのツールを提供しています。私たちもパッケージを定期的に更新する予定です (作業をほぼ自動化するツールを書き出しています)。

- TeX Live に入っているツールやユーティリティには ghostscript, perl, ruby に依存しているものがあります。

- TeX Live のヘルプや情報は次を参照してください: http://tug.org/texlive/doc.html と http://tug.org/texlive/doc/texlive-en/texlive-en.html

- システム全体の設定ファイルは `/usr/share/texmf-config` にあります。ユーザー別の設定ファイルは `~/.texlive/texmf-config` の下に置いて下さい。`$TEXMFHOME` は `~/texmf` で `$TEXMFVAR` は `~/.texlive/texmf-var` です。

- ローカルの texmf ツリーのスケルトンは `/usr/local/share/texmf` にあります: このディレクトリは tex グループのメンバーに書き込みが許可されています。

### 用紙サイズ

デフォルトのページサイズを A4 以外 ("Letter" など) に設定したい場合は、次のコマンドを実行してください:

    $ texconfig

このコマンドは他の便利な設定を変更するのにも使えます。

### アップデート時の "formats not generated" エラー

このバグレポートを参照してください。

Note: 実験的なエンジン LuaTeX を使っていない場合は、無視してかまいません。

ハイフネーションパターンの設定ファイル `language.def` や `language.dat` に `texlive-core` の初期リリースに入っているファイルへの参照が含まれているときにこのエラーがよく発生します。特に、名前が頻繁に変わるドイツ語の最新の実験的なハイフネーションパターンが原因です。現在はドイツ語のパターンは `dehyph{n,t}-x-2009-06-19.tex` になっています。

この問題を解決するには、次のファイルを削除するか: `/usr/share/texmf-config/tex/generic/config/language.{def,dat}` 新しいバージョンを使って更新する必要があります: `/usr/share/texmf/tex/generic/config/language.{def,dat}` その後、次を実行してください

    # fmtutil-sys --missing

### フォント

デフォルトでは、さまざまな TeX Live パッケージに入っているフォントを Fontconfig から自動で利用することができません。XeTeX や LibreOffice などからフォントを使えるようにしたいときは、以下のようにシンボリックリンクを作成するのが一番簡単です:

    # ln -s /usr/share/texmf-dist/fonts/opentype/public/<some_fonts_you_want> ~/.fonts/OTF/ (or TTF or Type1)

fontconfig で利用できるようにするには、次を実行してください:

    # fc-cache ~/.fonts
    # mkfontscale ~/.fonts/OTF (or TTF or Type1)
    # mkfontdir ~/.fonts/OTF (or TTF or Type1)

また、texlive-bin には TeX Live によって使用されるフォントディレクトリのリストが入ったファイル `/etc/fonts/conf.avail/09-texlive-fonts.conf` が含まれています。このファイルを利用するには次を実行して:

    # ln -s /etc/fonts/conf.avail/09-texlive-fonts.conf /etc/fonts/conf.d/09-texlive-fonts.conf

それから fontconfig を更新してください:

    # fc-cache && mkfontscale && mkfontdir

Note: This may cause conflicts with XeTeX/XeLaTeX if the same fonts are (separately) available to both TeX and Fontconfig, i.e. if multiple copies of the same font are available on the search path.

## TeXLive Local Manager

TeXLive Local Manager は Firmicus によって提供されているユーティリティで、Arch Linux 上の TeX Live 環境を便利に管理することができます。 AUR の texlive-localmanager-git を見て下さい。

    Usage: tllocalmgr
           tllocalmgr [options] [command] [args]

           Running tllocalmgr alone starts the TeXLive local manager shell
           for Arch Linux. This shell is capable of command-line completion!
           There you can look at the available updates with the command 'status'
           and you can install individual CTAN packages using 'install' or 'update'
           under $TEXMFLOCAL. This is done by creating a package texlive-local-<pkg>
           and installing it with pacman. Note that this won’t interfere with your
           standard texlive installation, but files under $TEXMFLOCAL will take
           precedence.

           Here are the commands available in the shell:

    Commands:
                  status   --   Current status of TeXLive installation
               shortinfo * --   Print a one-liner description of CTAN packages
                    info * --   Print info on CTAN packages
                  update * --   Locally update CTAN packages
                 install * --   Locally install new CTAN packages
              installdoc * --   Locally install documentation of CTAN packages
              installsrc * --   Locally install sources of CTAN packages
               listfiles * --   List all files in CTAN packages
                  search * --   Search info on CTAN packages
             searchfiles * --   Search for files in CTAN packages
                 texhash   --   Refresh the TeX file database
                   clean   --   Clean local build tree
                    help   --   Print helpful information
                    quit   --   Quit tllocalmgr

            The commands followed by * take one of more package names as arguments.
            Note that these can be completed automatically by pressing TAB.

            You can also run tllocalmgr as a standard command-line program, with
            one of the above commands as argument, then the corresponding task will
            be performed and the program will exit (except when the command is 'status').

            tllocalmgr accepts the following options:

    Options:     --help          Shows this help
                 --version       Show the version number
                 --forceupdate   Force updating the TeXLive database
                 --skipupdate    Skip updating the TeXLive database
                 --localsearch   Search only installed packages
                 --location      #TODO?
                 --mirror        CTAN mirror to use (default is mirror.ctan.org)
                 --nocolor       #TODO

### 最近の "langukenglish" エラー

`tllocalmgr` コマンドを実行しようとこのエラーが表示されることがあります:

    Can't get object for collection-langukenglish at /usr/bin/tllocalmgr line 103

AUR の texlive-localmanager に ary0 の解決法が載っています。`/usr/share/texmf-var/arch/tlpkg/TeXLive/Arch.pm` を編集して以下のセクションから "langukenglish" を削除してください:

    my @core_colls =
    qw/ basic context genericrecommended fontsrecommended langczechslovak
    langdutch langfrench langgerman langitalian langpolish langportuguese
    langspanish **langukenglish** latex latexrecommended luatex mathextra metapost
    texinfo xetex /;

## .sty ファイルのインストール

TeX Live (と teTeX) は自前のディレクトリインデックス (`ls-R` という名前のファイル) を使っているため、ファイルを TeX ツリーの中にコピーしたときはインデックスを更新する必要があります。そうしないと TeX はコピーしたファイルを認識できません。利用するコマンド:

    # mktexlsr

または

    # texhash

または

    # texconfig[-sys] rehash

インデックスを検索するコマンドラインプログラムは:

    kpsewhich

これを使って特定のファイルを TeX が見つけているか確認できます:

    kpsewhich <filename>

出力はそのファイルのフルパスになります。

### 手動インストール

通常、新しい .sty ファイルは `/usr/share/texmf-dist/tex/latex/<package name>/*` に入ります。このディレクトリがない場合は作成してください。*tex を実行するとディレクトリが自動で検索されます。詳しい説明は次を見て下さい: https://bbs.archlinux.org/viewtopic.php?id=85757

### PKGBUILD を使う

コンピュータ全体で LaTeX パッケージをインストールするときは、メンテナンスを簡単にするために PKGBUILD を使いましょう。AUR の texlive-gantt パッケージをサンプルとして見て下さい:

    # Original autor: Martin Kumm <pluto@ls68.de>
    # Maintainer: masterkorp  <masterkorp@gmail.com>    irc: masterkorp at freenode.org
    # Last edited: 2nd April 2011

    pkgname=texlive-gantt
    pkgver=1.3
    pkgrel=1
    license=('GPL')
    depends=('texlive-core')
    pkgdesc="A LaTeX package for drawing gantt plots using pgf/tikz"
    url="http://www.martin-kumm.de/tex_gantt_package.php"
    arch=('any')
    install=texlive-gantt.install
    source=(http://www.martin-kumm.de/tex/gantt.sty)
    md5sums=('e942191eb0024633155aa3188b4bbc06')

    build()
    {
      mkdir -p $pkgdir/usr/share/texmf/tex/latex/gantt
      cp $srcdir/gantt.sty $pkgdir/usr/share/texmf/tex/latex/gantt
    }

`.install` ファイル:

    post_install() {
      post_remove
      echo "The file was installed in:"
      kpsewhich gantt.sty
    }

    post_upgrade() {
      post_install
    }

    post_remove() {
      echo "Upgrading package database..."
      mktexlsr
    }

Category:

- TeX (日本語)