読者です 読者をやめる 読者になる 読者になる

毎日もくもく

主に備忘録と日記

Ubuntu 16.04 に TeX Live を入れる

Linux Ubuntu TeX TeXLive

特にこだわりがなければ

$ sudo apt-get install texlive-full

で問題ない. ところが TeX Live については最近だとこんなセキュリティ上の問題があったので,常に最新版に保っておきたい. Linux の各ディストリビューションのパッケージ管理システムでは常に最新版に保たれるとは限らないので,今回は TeX Live のパッケージ管理システムである tlmgr を使う. そのために TeX Live のインストーラを使って環境構築する.

私の環境

手順

 まずは

$ wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz

ミラーサイトから install-tl-unx.tar.gz を取得する. 別にミラーサイトjaist あたりから直接 DL しても良い.

 次に取得したファイルを展開し,インストーラディレクトリに移動する.

$ tar xvf install-tl-unx.tar.gz
$ cd install-tl20161227

install-tl20161227 の数字はいつこの作業をしているのかで変わるので ls などで確認する.

 インストーラディレクトリに install-tl があるので,これを実行する. オプションで DL するリポジトリを指定できる.

$ sudo ./install-tl --repository http://mirror.ctan.org/systems/texlive/tlnet/

これで TeX Live のインストールは終わる. 私は何もしなくても tlmgr が使えたので次のことはしなかったが,もし tlmgr が使えなかったら以下のコマンドを実行する.

$ sudo /usr/local/texlive/2016/bin/x86_64-linux/tlmgr path add

途中の 2016 や x86_64-linux は環境によって異なると思うので,各自で確認されたい.

 一応 TeX Live がちゃんとインストールされたか試験する.

\documentclass{jsarticle}
\begin{document}
Hello World.
私は人間です.
\begin{equation}
  \int_{a}^{b} f(x) dx = F(b) - F(a)
\end{equation}
\end{document}

という内容のファイルを ex.tex という名前で保存し,次のコマンドを実行する.

$ platex ex.tex
$ dvipdfmx ex.dvi

正常ならこれで ex.pdf が生成されるので,ちゃんと文字が出力されているか見てみる.

f:id:xartaky:20161227173100p:plain

TeX Live のアップデート

 次のコマンドを実行する.一行目は初回だけでOK.

$ sudo tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet
$ sudo tlmgr update --self --all

フォントの埋め込み

 例えば IPAex フォントを埋め込む場合は

$ sudo kanji-config-updmap-sys ipaex

を実行すれば良い.

latexmk を使う

2017/2/18 追記: 最近は Atom で編集して同じく Atom の PDF ビューアで見ているのでいちいち別のビューアを開かれると鬱陶しい. そのため .latexmkrc をちょっといじった.内容は TeX Wiki 参照.

 最初に TeX の試験をしたときには platexdvipdfmx というコマンドを使用した. 次の ~/.latexmkrc というファイルを作成することで latexmk というコマンドを打てば自動的に pdf が作成され,tex ファイルやそれが依存するファイルに変更があるたびに pdf を作り直してくれる.

#!/usr/bin/perl
$latex = 'platex -guess-input-enc -src-specials -interaction=nonstopmode -synctex=1';
$latex_silent = 'platex -interaction=batchmode';
$dvips = 'dvips';
$bibtex = 'pbibtex';
$makeindex = 'mendex -r -c -s jind.ist';
$dvi_previewer = 'start dviout';
$dvipdf = 'dvipdfmx %O -o %D %S';
$pdf_previewer = 'xdg-open';
$preview_continuous_mode = 1;
$pdf_mode = 3;
$pdf_update_method = 4;

新しいパッケージの追加

 TeX を使っているとデフォルトでは入っていないパッケージを使いたくなるときがある. そのようなときは自分で sty ファイルなどを DL して適当な場所に置く必要がある. sty ファイルを置く場所は他の sty ファイルの場所にならう.

$ kpsewhich hoge.sty

これで hoge.sty がどこに置かれているか分かる. 上記のコマンドでおそらく /x/xx/xxx/xxxx/hoge/hoge.sty みたいな出力を得るので,新しく DL した sty ファイルを例えば /x/xx/xxx/xxxx/new/new.sty に置く.

 これだけでは新しいパッケージを使えないので

$ sudo mktexlsr

を実行して,LaTeX が参照するファイルの一覧表みたいなものを更新する必要がある.

参考

 基本的には TeXWiki を,.latexmkrc についてはこちらのブログを参考にした.