=================================================== 日本語 TeX ディストリビューション ptexlive-20110322 =================================================== ptexlive は UNIX 上の日本語 TeX 環境を提供します。 TeX Live 2009 という TeX ディストリビューションと組み合わせて用い、 アスキー社の日本語 pTeX や関連する日本語パッチ類を追加します。  ptexlive が TeX Live 2009 に追加するものは以下の通りです。 コマンド: ptex, platex, pbibtex, mendex, pdvitype, etc. pdvips, pxdvi, updmap(?), makejvf マクロ:  jsclasses, UTF, OTF  そもそも TeX Live 2009 のコンパイルには、 コンパイラ環境(GNU make, bison, flex, ed を含む)が必要です。 更に ptexlive には GNU patch, GNU bash が必要です。 ghostscript, 日本語フォントも別に必要です。 ptexlive は、改変再配布の可能な自由ソフトで構成されています。 新たに書き下ろした部分のライセンスは、修正 BSD です。 ------------------------------------------------------------------- ptexlive のインストール作業の前に、 TeX Live 2009 をインストールしておきます。 TeX Live 2009 にはインストール方法がいくつかあります。 (a) DVD をマウントして PATH を通す (b) DVD から HDD にインストール (c) ネットインストーラで HDD にファイル展開 (d) OS 付属 TeX パッケージを利用 このうち、ptexlive では (b) でインストールすることを前提とします。 (a) でも等価な動きをしそうです。 (c)(d) では必要ファイル(主にソース)が手に入りませんのでダメです。 具体的には、 http://www.t.ring.gr.jp/pub/text/CTAN/systems/texlive/Images/ から texlive2009-20091107.iso.xz (1.4GB) を入手し、この中のファイルを読み込み、 root 権限で "install-tl" を実行します。 メニューの中では "I" コマンドを選んで、 /usr/local/texlive/2009 にすべてのパッケージをインストールします。 ディスク節約のヒント: インストールスキーマを選択して部分的にインストールした場合でも、 動作する場合があるようです。しかし、動作検証はしていませんので、 自己責任でお願いします。また、/usr/local/texlive/2009 の下に 必要なディレクトリは texmf, texmf-dist, tlpkg の3つだけで、 bin はなくても大丈夫です。arch の違うものをインストールしても 大丈夫ということです。  PATH に関しては、ここではまだ何もしません。 コンパイル作業の後に、TeX Live とは異なるディレクトリに PATH を通します。 iso.xz のファイルを読み込むには、いくつもの方法がありますので、 Wiki に解説を譲ります。 http://tutimura.ath.cx/ptexlive/?iso.xz%A4%CE%C6%C9%A4%DF%BC%E8%A4%EA ------------------------------------------------------------------- この先は ptexlive というディレクトリを作って、作業することにします。 おおまかな流れとしては、ptexlive-20YYMMDD.tar.gz を展開して、 いくつかの設定を行い、make を実行し、最後に PATH を通します。 ***/ptexlive/ -+- ptexlive-20YYMMDD.tar.gz +- ptexlive.cfg(後から作る) (ファイル展開) $ cd ***/ptexlive $ gzip -cd ptexlive-20YYMMDD.tar.gz | tar xvf - $ cd ptexlive-20YYMMDD (カスタマイズ) ptexlive.cfg の中で、TeX Live 2009 DVD のマウント先を指定します。 $ cp ptexlive.sample ../ptexlive.cfg $ emacs ../ptexlive.cfg "ISO_DIR=/media/TeXLive2009" などの行を有効にします。 以前の ptexlive.cfg があれば、流用できるかもしれません。 (とは言え、ベースとなる TeX Live のバージョンが変われば、流用できません。) (ユーザ権限でコンパイル) $ make あるいは、分割して実行するなら $ make all0 $ make otf (OTFパッケージも入れるなら) $ make font $ make test とします。テストが正常に終了することを確認します。 ただし、Ghostscript 関連の警告は無視するしかないでしょう。 (root 権限でインストール) $ su # make install # exit (作業用ファイルの削除) $ make distclean (PATHの設定) /usr/local/texlive/p2009/bin/arch にパスを通します。 ('arch' の部分は環境によって変化します。) $ export PATH=/usr/local/texlive/p2009/bin/arch:$PATH # sh/bash の場合 % setenv PATH /usr/local/texlive/p2009/bin/arch:$PATH # csh/tcsh の場合 などを実行すれば一時的に変更できます。 (csh/tcsh ユーザなら rehash もお忘れなく。) 恒久的に設定するには、個人ユーザの場合は ~/.bashrc や ~/.tcshrc に書き込みます。 全ユーザ共通に設定するには、 /etc/profile.d/texlive.sh /etc/profile.d/texlive.csh のようなファイルに書き込みます。 この設定が有効になるのは、次にログインしたときです。 何かエラーがあった場合は、"../ptexlive.cfg" というファイルに カスタマイズ項目を書き込みます。 何を書き込むかは、"ptexlive.sample" を参照して下さい。 アンインストールは、インストールしたディレクトリを ばっさりと消せば OK です。"make uninstall" でも同じです。 CMap は TeX Live 2009 DVD に入っているものを利用します。 ptetex-cmap-20090506.tar.gz はもう不要です。 既に TeX が入っている環境では、 新旧の TeX を混ぜて使わないように注意します。 TEXMF のような環境変数は何も設定せず、 PATH の通し方で対処します。 使いたいものがコマンドサーチパスの中で 先に見つかるようにすれば OK です。 ptexlive と TeX Live 2009 の使い分けも同様です。 両方を PATH に含めると、おかしな動きをしそうです。 ------------------------------------------------------------------- xdvi と emacs とで相互ジャンプするには、 /var/tmp/ptexlive2009/texlive-20091011-source/texk/xdvik/xdvi-search.el を適切な場所にコピーしてください。 /usr/local/share/emacs/site-lisp/ あたりが適当でしょうか。そして、 ~/.emacs.el にも以下のように書き込みます。 ;;; TeX src-special のための設定 (if (load "xdvi-search" t) ; 必須 (server-start) ; 必須 (progn (custom-set-variables '(server-switch-hook (quote (raise-frame)))) ; 窓を上に (custom-set-faces) (add-hook 'yatex-mode-hook '(lambda () (define-key YaTeX-mode-map "\C-c\C-j" 'xdvi-jump-to-line))) )) /usr/local/texlive/p2009/texmf/xdvi/XDvi も見直しが必要かもしれません。 ただし、個人設定を上書きするのなら、 ~/.Xresources あるいは ~/.Xdefaults のほうが適切でしょう。 ------------------------------------------------------------------- 以下は細かい話 ------------------------------------------------------------------- 各スクリプトの作業内容は以下の通りです。 編集の必要があっても、なるべく直接は編集せず、 "../ptexlive.cfg" というファイルを作って書き込むのがよいでしょう。 ptexlive のバージョンが変わっても、 "../ptexlive.cfg" はなるべくそのまま使えるようにしています。 0. ./common.sh 以下のスクリプトで共通なものをまとめて宣言しています。 各スクリプトの先頭で読み込まれます。 "ptexlive.cfg" があれば読み込みます。 1. ./1check-archive.sh 必要なファイルが壊れてないかをチェックします。 2. ./2extract-src.sh 実行ファイルのソースなどを展開します。 3. ./3make-install.sh コンパイル/インストールを行います。 4. ./4extract-texmf.sh データファイル texmf などをコピーします。 5. ./5macro.sh 追加のマクロをインストールします。 7. ./7font-search.sh フォント設定を自動で行います。 8. ./8test.sh 簡単なテストを行います。 9. ./9realloc.sh インストール/アンインストール等を行います。 "make" では 1〜5, 7〜8 の動作を連続して行います。 手動でコンパイルしたい時は、 "make x" でファイルの展開を、 "make c" でコンパイル/インストールを、 "make macro" でマクロの更新を行います。 "make font" でフォント設定を行います。 "make test" で簡単な動作確認をします。 "make all3" では、次の動作も含めます。 "make otf" で齋藤修三郎さんの OTF パッケージも インストールできます。ただし、かなりの時間と、 ディクスを 100MB 近く消費します。 最後に root になって "make install" します。 ------------------------------------------------------------------- TeX Live の ./configure のオプションのうち、 役に立ちそうなものを簡単に紹介しておきます。 --enable-shared 共有ライブラリを使います。 (環境によってはうまくコンパイルできないこともあるようです。) 実行ファイルのサイズを節約できますが、 /usr/local/texlive/lib を次のような方法の いずれかで登録する必要があります。 -- /etc/ld.so.conf に追記して ldconfig を実行 -- LD_LIBRARY_PATH に追記 どうしても捜し出してくれないライブラリがある時は、 環境変数を次のようにして設定するとうまくいくかもしれません。 CPPFLAGS="-I/usr/local/include -I/usr/sfw/include -I/opt/sfw/include -I/usr/openwin/include" LDFLAGS="-L/usr/local/lib -L/usr/sfw/lib -L/opt/sfw/lib -L/usr/openwin/lib" LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/sfw/lib:/opt/sfw/lib:/usr/openwin/lib ------------------------------------------------------------------- インストールに使うパッチ類の一覧です。 archive/ http://w32tex.org/generic/dvipsk-5.98-p1.7b-tl2009.tar.gz http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/jvf/jis.tar.gz ftp://jupiter.fsci.fuk.kindai.ac.jp/pub/ptex/utils/jmpost-0.04b.tar.gz http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/jvf/makejvf-1.1a.tar.gz http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/mendex/mendexk2.6f.tar.gz http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/jvf/morisawa.tar.gz nkf-2.0.9-autoconf.patch.gz http://osdn.dl.sourceforge.jp/nkf/37177/nkf-2.0.9.tar.gz omegaware111.patch http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/tetex/ptex-src-3.1.11.tar.gz http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/tetex/ptex-texmf-2.5.tar.gz http://tutimura.ath.cx/~nob/tex/ptexlive/ptexenc/ptexenc-1.1.0.tar.xz http://www.ns.musashi-tech.ac.jp/~inoue/Pages/TeX/updmap-3.0-4.diff updmap-cmsuper.patch updmap-nostop.patch xdvik-20080717-texlive2008.diff.gz babel/ http://www2.tba.t-com.ne.jp/ing/ing/babeltestJIS.tex http://www2.tba.t-com.ne.jp/ing/ing/japanese.zip cmap/ http://download.macromedia.com/pub/opensource/pdfmapping/mappingresources4pdf_2unicode.tar.Z macro/ http://oku.edu.mie-u.ac.jp/~okumura/jsclasses/jsclasses-100314.zip otfstable-speedup.patch http://psitau.at.infoseek.co.jp/otfstable.zip http://psitau.at.infoseek.co.jp/otfcurrent.zip utfsrc-speedup.patch http://psitau.at.infoseek.co.jp/utfsrc.zip security/ tetex-2.0.2-dvipdfm-security.patch tetex-3.0-CVE-2007-0455.patch tetex-3.0-CVE-2007-0650.patch tetex-3.0-badscript.patch texlive2007-CVE-2007-3387.patch ------------------------------------------------------------------- 開発は VineLinux 5.0 で行っています。 当然ながら動作保証はできかねますので、自己責任でお使い下さい。 ptexlive に含まれている pTeX, pxdvi などには、 単独配布物に ptexlive 独自のパッチが加わっている場合があります。 従って、動作不良があっても個別の開発者には連絡せず、 まずは以下にお知らせ下さい。 http://tutimura.ath.cx/ptexlive/?%C6%B0%BA%EE%CA%F3%B9%F0 (TeX Live 2009 でも発現するバグはこの限りではありません。) 同梱のパッチ類は再配布可能なものを選んだつもりです。 (そうでないものがあればご連絡下さい。) 詳細は LICENSE ファイルをご覧ください。 新たに著作権の発生したスクリプト類は、pTeX と同様に、 (修正)BSDライセンスの下で、自由に改変・再配布を行って下さい。 連絡先、最新版の配布場所は以下の通りです。 土村 展之 (tutimura(a)nn.iij4u.or.jp) http://tutimura.ath.cx/ptexlive/ -------------------------------------------------------------------