- 追加された行はこの色です。
- 削除された行はこの色です。
*UNIX系OSでのteTeX,pTeX,pLaTeX2eのインストール [#f27134a5]
*Make [#b0e9d8ed]
今は次のptetexを使う方法がお薦めです。下のほうに長々と書いてあることを読むと混乱しますので,読まないでください。
ここでは、Make を LaTeX と組み合わせて使う方法を説明します。
** teTeX-3.0 + ptetex3 [#saac55c2]
teTeX はUNIX類似OS用の TeX ディストリビューションです。
[[ptetex:http://www.nn.iij4u.or.jp/~tutimura/tex/ptetex.html]]
は teTeX と pTeX 一式を簡単にインストールするための土村さん作のツールです。
ここでは2005年2月に出た新しい teTeX-3.0 とそれをベースにした pTeX
を,ptetex3 を使ってインストールしてみます。
//2005年10月以降、md5, gmd5sum 等は自動判定で使い分けるようになりました。GNU sed ももう不要です。
// //Mac OS Xの場合は,あらかじめ
// //[[GNU coreutils:http://www.ring.gr.jp/pub/GNU/coreutils/]]
// //に含まれるmd5sumコマンドをインストールしておくか、my_option というファイルを作って
// // MD5CHECK=md5check
// //と書いておきます。
// //[[GNU sed:http://www.ring.gr.jp/pub/GNU/sed/]] は 2005/ 6/27 以降は不要になりました。
/usr/local/src/tetex-src-3.0 と /usr/local/teTeX と ~/.texmf-var と ~/.texmf-conf と ~/texmf
がすでにある場合は消すか名前を変えておきます。
適当なディレクトリを作り,その中に
[[tetex-src-3.0.tar.gz:http://www.ring.gr.jp/pub/text/CTAN/systems/unix/teTeX/3.0/distrib/tetex-src-3.0.tar.gz]],
[[tetex-texmf-3.0po.tar.gz:http://www.ring.gr.jp/pub/text/CTAN/systems/unix/teTeX/3.0/distrib/tetex-texmf-3.0po.tar.gz]],
[[ptetex3:http://tutimura.ath.cx/~nob/tex/ptetex/ptetex3/]]-2006????.tar.gz (最新の日付のもの),
//%%[[ptetex-cmap:http://tutimura.ath.cx/~nob/tex/ptetex/ptetex-cmap/]]-2006????.tar.gz%% (←もう不要)
をダウンロードし,その中で次のようにします(ターミナルでコマンドを打ち込みます)。
(ptetex-cmap は 2005年11月11日以降ほぼ不要になりました。)
tar xzvf ptetex3-2006????.tar.gz
// tar xzvf ptetex-cmap-2005????.tar.gz (もう不要)
cd ptetex3-2006????
cp my_option.sample ../my_option (オプションを変更したいなら)
オプションを変更したいならこのmy_optionというファイルを適宜編集します。
make
make otf (オプション)
make babel (オプション)
make font
// (cd ../ptetex-cmap-2005????; make) (もう不要)
/usr/local/teTeX/bin にパスを通します。
フォントについての設定は updmap(個人ごと)または updmap-sys(システム全体)で行います。
例えば dvips はデフォルトでは基本35書体を埋め込みませんが,埋め込むようにするには次のようにします。
updmap-sys --setoption dvipsDownloadBase35 true
Macではさらに次のようにしてヒラギノを埋め込むようにできます。
// (2006年4月以降の ptetex3)
updmap-sys --setoption kanjiEmbed hiragino
// (2006年3月以前)
// updmap-sys --nomkmap --disable otf-noEmbeddedFont.map
// updmap-sys --enable KanjiMap otf-hiraginox.map
逆に和文フォントを埋め込まないようにするには次のようにします。
updmap-sys --setoption kanjiEmbed noEmbed
make testでテストできます。
Macではmake testの前にX11を立ち上げておきます(あるいはmy_optionでxdviを使わない設定にします)。
xdviはsrc specialsに対応しています。
Emacsで使う場合は,[[YaTeX]]の設定はREADMEに書いてあります。
[[AUCTeX]]でも使えます。
/usr/local/teTeX/share/texmf/xdvi/XDvi
でemacsclientを呼び出すようにしてありますが,Carbon Emacsなら
/Applications/Emacs.app/Contents/MacOS/bin/emacsclient にしておきます(他の場所でも設定可)。
// 途中でエラーが出ますが,/usr/local/teTeX/share/texmf/fonts/opentype/
// に STSongStd-Light-Acro.otf,MSungStd-Light-Acro.otf,HYSMyeongJoStd-Medium-Acro.otf
// のシンボリックリンクを張っておけば通ります。
-----
以下は古い情報です。ptetex3が内部でやっていることを理解するため以外には必要ないと思います。
#contents
**News [#i9c0909b]
*Make とは何か? [#g7efa508]
-[040723]
[[URWフォントのバグ:http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?URW]]
Make は、定型的なファイル変換作業を自動化するツールです。
LaTeX では Make を使うことで、texソースファイルからPDFやdviファイルを生成する作業を自動化できます。
**はじめに [#a05fe117]
Make はUNIX 用のユーティリティツールとして古い歴史を持ち、さまざまな実装があります。
その中で現在多く用いられているのは、[[GNU Make:http://www.gnu.org/software/make/]] です。
使い方や設定ファイル(Makefile)の文法は、基本的な部分は統一されているものの、実装ごとの拡張機能もあります。
特にGNU Makeは多くの拡張機能を持っています。
一世代前の teTeX-2.0.2(Web2C 7.4.5),pTeX-3.1.5 を Linux
や FreeBSD や Solaris や Mac OS X(gcc 2.x
または [[3.x:http://oku.edu.mie-u.ac.jp/~okumura/linux/gcc.html]])にソースからインストールした記録です。
なお、一般に Make はC言語などのプログラムをコンパイルするときに多く用いられます。
Make について調べるとこうしたプログラムのコンパイルを前提とした情報が出てくることが多いので、注意してください。
多くの Linux ディストリビューションにはすでに日本語対応の TeX ツール群が含まれています(コマンド名は pxdvi
や pdvips など p が頭に付く場合があります)のでソースからインストールする必要はありません。
詳しくはこの TeX Wiki の各ディストリビューションについての記述をご覧ください。
*Make のインストール [#c29bc068]
>土村さんが
[[ptetex -- teTeX 用日本語パッチ集:http://www.nn.iij4u.or.jp/~tutimura/tex/ptetex.html]]
を作ってくださいました。
これを使えばもっと簡単にインストールできます。
**macOS [#g1b3ea4a]
>teTeX-2.0.2 には2月28日バージョンと3月1日バージョンがあります。
タイムスタンプが3月1日以降であることをご確認ください。
Xcode のコマンドラインツールをインストールしてください(http://qiita.com/ksato9700/items/8a14189934c9360a668c 参照)。
GNU Make がインストールされます。
>Ghostscript のインストールも必須です。
これについては [[GNU Ghostscript 7.07 on Linux:http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Ghostscript%207.07]]
をご覧ください。
**Linux [#q3c99e20]
>FreeBSD では make を gmake としてください。
多くの場合、初期状態で GNU Make がインストールされています。
>Mac OS X では開発ツール(一部コマンドのインストールには X11)をあらかじめインストールしておくことが必要です。
Mac OS X の make は GNU Make ですのでそのまま使えます。
**FreeBSDなど [#w18263e3]
>Vine Linux 3.0でmakeするための注意は
[[[qa:30713]:http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/30713.html]]
をご覧ください。
初期設定では、BSD Make がインストールされています。
下記の Makefile などが思うように動作しない場合は、GNU Makeのインストールも検討してください。
なお、GNU Makeが「make」ではなく「gmake」コマンドとしてインストールされている場合もあります。
他に参考すべきサイト:
**Windows [#a0e09c4e]
-[[teTeX-2.0 パッケージングメモ:http://www.nn.iij4u.or.jp/~tutimura/tex/tetex2.html]]
(土村さん)
-[[Mac OS XにTeXをインストールしよう:http://macptex.appi.keio.ac.jp/~uchiyama/macosx/]]
(内山さん)
Windows 用 の GNU Make のインストールをしてください。
[[MinGW]] や [[Cygwin]] などをインストールすれば GNU Make もインストールされます。
**teTeX のインストール [#p46b71c8]
なお、Windows用のMakeにはGNU Makeのほか、マイクロソフト社のnmakeなどがあります。nmakeは、Visual Studioに付属します。
下は /usr/local/teTeX/ 以下にインストールする方法です。
/usr/local/ 以下にインストールするなら --prefix=/usr/local としてください。
*Makeの使い方 [#q2810aac]
xdvik 関係は後で日本語化したものを別途インストールすることを考えて,ここでは省略します。
X Window System を使わない(標準状態の Mac OS X など)なら --without-x も必要です。
**Makefile の作成と Make の実行 [#b022f4c0]
用意するもの:
Makeを実行してTeXソースファイルからPDFや.dviなどのドキュメントファイルを生成する手順は、次のとおりです。
+ texソースファイルと同じディレクトリーに「Makefile」という名前の設定ファイルを作成する
+ texソースファイルと同じディレクトリーで、make コマンドを実行する
-http://www.ring.gr.jp/pub/text/CTAN/systems/unix/teTeX/2.0/distrib/tetex-texmf-2.0.2.tar.gz
-http://www.ring.gr.jp/pub/text/CTAN/systems/unix/teTeX/2.0/distrib/tetex-src-2.0.2.tar.gz
***Makefile の作成 [#j674e7ce]
mkdir -p /usr/local/teTeX/share/texmf
mkdir -p /usr/local/src
tar xvzf tetex-texmf-2.0.2.tar.gz -C /usr/local/teTeX/share/texmf/
tar xvzf tetex-src-2.0.2.tar.gz -C /usr/local/src/
cd /usr/local/src/tetex-src-2.0.2/
./configure --prefix=/usr/local/teTeX --disable-multiplatform --without-xdvik --without-oxdvik
make world
Makefile は、Make 設定ファイルの文法に従って記述します。
基本的な文法は次のとおりです。
make world は make all install と同等ですので make install は不要です(Thanks: 河村くん)。
ターゲット: 必須項目
<タブ>コマンド
/usr/local/teTeX/bin にパスを通します。
古い TeX が他の場所にインストールされている場合は,そのパスより先に /usr/local/teTeX/bin
がなければなりません。
ターゲットは、生成されるファイルの名前です。
1つの Makefile で複数のターゲットを指定することもできます。
その場合、make コマンド実行時に「make ターゲット」とすることで生成するファイルを設定できます。
ターゲットを指定せずに make コマンドを実行すると、Makefile で最初に指定されたターゲットが生成されます。
また通常は、ターゲットのファイルがすでに存在して更新日時がすべての必須項目ファイルの更新日時よりも新しい場合、ターゲットファイルの更新は不要と判断され、コマンドは実行されません。
export PATH=/usr/local/teTeX/bin:$PATH # sh/bash
setenv PATH /usr/local/teTeX/bin:$PATH # csh/tcsh
set path=(/usr/local/teTeX/bin $path) # 上と同じ
必須項目は、ターゲット生成のために必要なファイルです。
1つのターゲットに対して複数の必須項目を指定できます。
必須項目のファイルが別の部分でターゲットとして指定されている場合、まずはそのファイルが生成されます。
which latex と打ち込んで /usr/local/teTeX/bin/latex と出ることを確認します。
コマンドは、必須項目からターゲットを生成するためのコマンドです。なおコマンドの前に付ける<タブ>は、スペースに変えると正常に動作しません。
which [[dvips:http://www.radicaleye.com/dvips.html]]
と打ち込んで /usr/local/teTeX/bin/dvips と出ることを確認します。
***基本的な Makefile [#xfdbcbf5]
これらがうまくいかないなら,bash なら hash -r,tcsh なら rehash してみてください。
例として、『LaTeX2e 美文書作成入門 改訂第6版』P.31 の test.tex ファイルの \documentclass{jsarticle} を \documentclass[uplatex]{jsarticle} に変更したものが ~/latex ディレクトリーに作成してある状態から PDF を生成することを考えます。
まずはテキストエディタなどを使い、test.tex と同じディレクトリーに Makefile を次の内容で作成します。
うまくいったら,上の PATH 設定は .bashrc や .tcshrc の類で設定しておきましょう。
test.pdf: test.dvi
dvipdfmx $<
とりあえず英語だけですが,うまくいくか実験してみましょう。
次のようなファイル hello.tex を作ります。
test.dvi: test.tex
uplatex -interaction=batchmode $<
\documentclass{article}
\begin{document}
Hello, \TeX!
\end{document}
コマンド中の「$<」は必須項目を表し、この場合は「test.dvi」と「test.tex」になります。
なお、makeからuplatexコマンドを呼び出しているときにエラーが発生しても途中で止まらないよう、uplatexコマンドにオプション「-interaction=batchmode」を付けています。
次のように打ち込んでテストしましょう。
***Make の実行 [#icc67860]
latex hello # hello.tex を hello.dvi に変換
dvips -Ppdf hello # hello.dvi を hello.ps に変換
gv hello.ps # プレビューのテスト
lpr hello.ps # 印刷のテスト
Makefile を保存したあとターミナル上で test.tex のディレクトリーで make コマンドを実行します。Makefile に記述したコマンドが呼び出され、PDFが生成されます。
このあとは、test.tex が更新されたり生成された test.pdf が削除されたりしなければ、再度make コマンドを実行しても、Makefile に記述したコマンドは呼び出されません。
macOS や Linux 上でのコマンド実行例を以下に示します($ は、プロンプト文字)。
Mac OS X なら上の代わりに pdflatex hello
と打ち込んで hello.tex を hello.pdf に変換し,open hello.pdf
と打ち込むか,あるいは Finder でダブルクリックしてみてください。
$ cd ~/latex/
$ ls
Makefile test.tex
$ make
uplatex -interaction=batchmode test.tex
This is e-upTeX, Version 3.14159265-p3.4-u1.11-130605-2.6 (utf8.uptex) (TeX Live 2014/dev)
restricted \write18 enabled.
entering extended mode
dvipdfmx test.dvi
test.dvi -> test.pdf
[1]
25751 bytes written
$ ls
Makefile test.aux test.dvi test.log test.pdf test.tex
$ make
make: `test.pdf' is up to date.
$
これ以降で,何かエラーが起きたなら mktexlsr(または texhash)と打ち込んでみてください。
こうすると /usr/local/teTeX/share/texmf/ls-R
というデータベース(といっても単に texmf
ディレクトリ以下のリストを収めたテキストファイル)が更新されます。
***より実用的な Makefile [#rc4136ab]
より実用的な Makefile として、次の内容が考えられます。
**pTeX,pLaTeX2e のインストール [#g69f2dc9]
TARGET := test.pdf
※以下ではRingサーバのミラー http://www.ring.gr.jp/pub/text/TeX/ascii-ptex
をご紹介していますが,オリジナルの配布元は ftp://ftp.ascii.co.jp/pub/TeX/ascii-ptex/
です。
.PHONY: all clean distclean
ここでは文字コード EUC 用に作ってみます。
Shift JIS 用に作るには ./configure sjis です。
all: $(TARGET)
用意するもの:
clean:
$(RM) *.aux *.log *.dvi
-http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/tetex/ptex-texmf-2.3.tar.gz
-http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/tetex/ptex-src-3.1.5.tar.gz
distclean: clean
$(RM) $(TARGET)
tar xvzf ptex-texmf-2.3.tar.gz -C /usr/local/teTeX/share/texmf/
mktexlsr
tar xvzf ptex-src-3.1.5.tar.gz -C /usr/local/src/tetex-src-2.0.2/texk/web2c/
cd /usr/local/src/tetex-src-2.0.2/texk/web2c/ptex-src-3.1.5
./configure euc
make
make install
mktexlsr
%.pdf: %.dvi
dvipdfmx $<
ついでに dvips(k) も済ませてしまいましょう。
%.dvi: %.tex
uplatex -interaction=batchmode $<
用意するもの:
「%.dvi: %.tex」のように記述されている行はパターンルールといい、拡張子を元に動作ルールを決めます。
「%.dvi: %.tex」は任意の.texファイルから.dviファイル、「%.pdf: %.dvi」は任意の.dviファイルから.pdfファイルを作成するルールを定めています。
-http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/dvips/dvipsk-jpatch-p1.6a1.tar.gz
-http://www.ring.gr.jp/pub/text/TeX/ptex-win32/utils/udvips-5.94a-p1.6a1.patch
この Makefile では次の機能を実現しています。
tar xvzf dvipsk-jpatch-p1.6a1.tar.gz -C /usr/local/src/tetex-src-2.0.2/texk/dvipsk/
cp udvips-5.94a-p1.6a1.patch /usr/local/src/tetex-src-2.0.2/texk/dvipsk/
cd /usr/local/src/tetex-src-2.0.2/texk/dvipsk/
patch -p1 <dvipsk-5.92b-p1.6a1.patch
patch -p1 <udvips-5.94a-p1.6a1.patch
./configure --prefix=/usr/local/teTeX --disable-multiplatform
make
make install
cd /usr/local/teTeX/share/texmf/dvips/pstricks/
patch </usr/local/src/tetex-src-2.0.2/texk/dvipsk/PSTricks.patch
- texソースファイルの名前が「test.tex」以外の場合でも、Makefile 1行目の「test.pdf」を変更するだけで対応できる
- make clean を実行すると、PDF生成時に一緒に生成された.aux、.log、.dvi ファイルが削除される
- make distclean を実行すると、.aux、.log、.dvi ファイルに加えて PDF が削除される
dvips(k) を使うには,さらに次の修正が必要です。
まず /usr/local/teTeX/share/texmf/dvips/config/kanji.map
というファイルを作り,次のように書き込みます。
本当はこの段階では最初の4行しか要りませが,後のために余分に設定しておきます。
LaTeX実行時に多数生成される中間ファイルを削除するとき、手動で行うと誤って必要なファイルを削除してしまうなどのトラブルが起こる可能性があります。make clean や make distclean を設定して用いれば、こうしたトラブルを減らすことができます。
rml Ryumin-Light-H
rmlv Ryumin-Light-V
gbm GothicBBB-Medium-H
gbmv GothicBBB-Medium-V
ryumin-l Ryumin-Light-H
ryumin-l-v Ryumin-Light-V
gtbbb-m GothicBBB-Medium-H
gtbbb-m-v GothicBBB-Medium-V
futomin-b FutoMinA101-Bold-H
futomin-b-v FutoMinA101-Bold-V
futogo-b FutoGoB101-Bold-H
futogo-b-v FutoGoB101-Bold-V
jun101-l Jun101-Light-H
jun101-l-v Jun101-Light-V
unimin Ryumin-Light-UniJIS-UCS2-H
unigoth GothicBBB-Medium-UniJIS-UCS2-H
ただし、この Makefile では次のような場合に正常に動作しない可能性があります。
新しいファイルを作ったら必ず mktexlsr と打ち込んでおきましょう。
- 相互参照や目次などを生成する場合
- 画像を参照していたり、tex ソースを複数のファイルに分けていたりする場合
- 索引や文献リストを生成する場合
さらに,/usr/local/teTeX/share/texmf/dvips/config/config.ps
の適当なところ,たとえば
% This shows how to add your own map file.
% Remove the comment and adjust the name:
% p +myfonts.map
**相互参照や目次などが含まれる場合 [#xdd98ce4]
の次の行あたりに,次のように追加します。
ドキュメントに次のものが含まれる場合、上記の Makefile ではいずれの場合でも正常にPDFを生成できません。これらを正常に生成するには、複数回LaTeXを実行する必要があるからです。
p +kanji.map
- 相互参照(数式や図・表・脚注の番号参照など)
- 目次
- 図リスト
- 表リスト
いよいよ日本語で実験してみましょう。
さきほどの hello.tex に日本語を加えます。
一般に、LaTeX を実行する回数を多くすれば正常にPDFを作成できない問題が発生する可能性は小さくなる反面、実行には時間がかかるというトレードオフの関係があります。
\documentclass{jarticle}
\begin{document}
こんにちは, \TeX!
\end{document}
***LaTeX を無条件に複数回実行 [#ae41f9a4]
次のように打ち込みます。
正常にPDFを作成できない問題の単純な解決方法は、無条件に複数回 LaTeXを実行することです。次の Makefile では変数 CNT で設定された回数(初期状態では2回)、無条件に LaTeX が実行されます。
platex hello # hello.tex を hello.dvi に変換
dvips -Ppdf hello # hello.dvi を hello.ps に変換
gv hello.ps # プレビューのテスト
lpr hello.ps # 印刷のテスト
TARGET := test.pdf
角藤さん配布の Win32 バイナリ(dvipsk
が日本語版)と違って,上のようにして作った日本語対応バイナリ名は dvips です。
CNT := 2
他のフォントの場合も同様です。
たとえば [[TIPA]] と [[cm-super]]
をインストールしたなら次のようにします(インストールした後で書いてください)。
.PHONY: all clean distclean
p +tipa.map
p +cm-super-t1.map
p +cm-super-ts1.map
p +cm-super-t2a.map
p +cm-super-t2b.map
p +cm-super-t2c.map
p +cm-super-x2.map
all: $(TARGET)
ただ,dvipdfm(x) と共通の設定にすることを考えて,欧文フォントはここではなく
/usr/local/teTeX/share/texmf/web2c/updmap.cfg
のほうに例えば次のように書くのがいいでしょう。
clean:
$(RM) *.aux *.log *.dvi
Map lm.map
MixedMap tipa.map
MixedMap mathabx.map
MixedMap yhmath.map
distclean: clean
$(RM) $(TARGET)
Mixed の付くほうはビットマップフォントも使う場合です。
%.pdf: %.dvi
dvipdfmx $<
このように書いておいて updmap コマンドを実行すると自動的に map ファイルが更新されます。
%.dvi: %.tex
for i in `seq 1 $(CNT)`; do uplatex -interaction=batchmode $<; done
>ただ,このようにして作った dvipdfm*.map は
cmex7 default fmex7 -r
cmex8 default fmex8 -r
cmex9 default fmex9 -r
になってしまうようです。
この3行から -r を取らないと,括弧が出ないなどのトラブルが起こることがあります。
昔 Thomas Esser に連絡したはずなのですが,直してもらえていません。
いずれにしても \usepackage{type1cm}
すべきで,そうすれば上のトラブルには引っ掛かりません。
Makeの実行方法は、基本的なMakefileの場合と同じです。作成されたPDFファイルで、特に相互参照や目次などの問題がないか確認してください。
**jis/jisg/morisawa フォント関連 [#se06be7a]
この方法でも、LaTeX 実行の回数がまだ足りず、引き続きPDFが正常に作成できない場合もあります。そのときは、変数 CNT の数を増やします。
また、逆に LaTeX 実行の回数が多すぎるため、余計に時間がかかることも考えられます。
jis/jisg フォントメトリック関連です。
私の [[新ドキュメントクラス:http://oku.edu.mie-u.ac.jp/~okumura/jsclasses/]]
を使う際に必要です。
***ログファイルに警告のある場合の実行 [#z88e6381]
用意するもの:
LaTeX を無条件で実行してから、ログファイルに警告がある場合にだけさらに LaTeX を実行することもできます。
次のMakefileでは、CNT 変数で指定された回数分LaTeX を実行してから、ログに相互参照未定義の警告がある場合だけLaTeXを実行するようにしています。
ログに相互参照未定義の警告があるかどうかは、shシェルのif文と grep(fgrep) を組み合わせて判定しています。
また、相互参照に誤りがある場合はLaTeXを何回実行してもログに相互参照未定義の警告が出るので、相互参照未定義の警告がある場合のLaTeX実行は最大3回としています。
-http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/jvf/jis.tar.gz
TARGET := test.pdf
tar xvzf jis.tar.gz
mv jis/tfm/ptex/* /usr/local/teTeX/share/texmf/fonts/tfm/ptex/
mv jis/vf/* /usr/local/teTeX/share/texmf/fonts/vf/ptex/
CNT := 2
morisawa 関連です。
たとえば上の [[新ドキュメントクラス:http://oku.edu.mie-u.ac.jp/~okumura/jsclasses/]]
に含まれる morisawa.sty で使えます。
.PHONY: all clean distclean
用意するもの:
all: $(TARGET)
-http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/jvf/morisawa.tar.gz
clean:
$(RM) *.aux *.log *.dvi
tar xvzf morisawa.tar.gz
mv morisawa/tfm/dvips/* /usr/local/teTeX/share/texmf/fonts/tfm/ptex/
mv morisawa/tfm/ptex/* /usr/local/teTeX/share/texmf/fonts/tfm/ptex/
mv morisawa/vf/* /usr/local/teTeX/share/texmf/fonts/vf/ptex/
distclean: clean
$(RM) $(TARGET)
最後に mktexlsr しておきます。
%.pdf: %.dvi
dvipdfmx $<
**新ドキュメントクラス [#p826d2d8]
%.dvi: %.tex
for i in `seq 1 $(CNT)`; do uplatex -interaction=batchmode $<; done
for i in `seq 1 3`; do if grep -F 'Rerun to get cross-references right.' `basename $< .tex`.log; then uplatex -interaction=batchmode $<; else exit 0; fi; done
[[新ドキュメントクラス:http://oku.edu.mie-u.ac.jp/~okumura/jsclasses/]] をインストールします。
なお、LaTeXを複数回実行する方法の詳細については、『LaTeX2e美文書作成入門』P.161の「(p)LaTeXを適切な回数繰り返し実行する方法 」を参照してください。
用意するもの:
**画像やLaTeXファイルが挿入されている場合 [#mf500793]
-http://oku.edu.mie-u.ac.jp/~okumura/jsclasses/jsclasses.zip
Makeは基本的に、必須項目として指定されているファイルが更新された場合に実行されます。
LaTeXソースファイルで \includegraphics 命令によって挿入された画像や、\include や \input 命令で挿入された LaTeX ファイルが更新されていても、上記の Makefile では Make が実行されず反映されないことがあります。
cd /usr/local/teTeX/share/texmf/ptex/platex
mkdir js
cd js
unzip jsclasses.zip
mktexlsr
さらに、PDF, PNG, JPEG 形式の画像ファイルを挿入しているときは、バウンディング情報が必要です。
**mendexk のインストール [#s635011c]
そのため、画像ファイルおよびLaTeXファイルの依存関係は、Makefileに反映する必要があります。
たとえば、画像 tiger.pdf を挿入している場合は、次のようにMakefileを記述します。
「test.dvi: tiger.pdf」が、画像ファイルの依存関係を表します。
mendex(k) は makeindex を日本語化したものです。
TARGET := test.pdf
用意するもの:
CNT := 1
-http://www.ring.gr.jp/pub/text/TeX/ascii-ptex/mendex/mendexk2.5a.tar.gz
.PHONY: all clean distclean
tar xvzf mendexk2.5a.tar.gz -C /usr/local/src/tetex-src-2.0.2/texk/
cd /usr/local/src/tetex-src-2.0.2/texk/mendexk2.5a/
all: $(TARGET)
Makefile で以下の部分を修正します(teTeX-2.0.2 の kpathsea は 3.4.5 です)。
test.dvi: tiger.pdf
# インストール先を DISTDIR に指定する
DISTDIR = /usr/local/teTeX/bin
# for kpathsea-3.*
CFLAGS = -O -DKPATHSEA -DKPATHSEA3
PROGLINK = $(kpathsea_link) $(OBJS) $(kpathsea_3)
# for no kpathsea
#CFLAGS = -O
#PROGLINK = $(CC) $(OBJS) -o $(PROGRAM)
clean:
$(RM) *.aux *.log *.dvi
仕上げです。
unknown escape sequence の警告は無視してかまいません。
distclean: clean
$(RM) $(TARGET)
make
make install
%.pdf: %.dvi
dvipdfmx $<
**dvipdfmx(旧 dvipdfm 日本語版)のインストール [#b872d2da]
%.dvi: %.tex
for i in `seq 1 $(CNT)`; do uplatex -interaction=batchmode $<; done
for i in `seq 1 3`; do if grep -F 'Rerun to get cross-references right.' `basename $< .tex`.log; then uplatex -interaction=batchmode $<; else exit 0; fi; done
[[dvipdfm:http://gaspra.kettering.edu/dvipdfm/]]
を平田さんが日本語化されました。
平田さんのサイトは現在
[[土村さんがミラー:http://www.nn.iij4u.or.jp/~tutimura/hirata/]]
してくださっています。
***挿入された画像やLaTeXファイルの調査 [#h0229340]
挿入された画像ファイルやLaTeXファイルを調査するためには、LaTeXソースファイルを直接さがす方法と、.flsファイルを使う方法があります。
CJK 版の開発は [[The DVIPDFMx Project:http://project.ktug.or.kr/dvipdfmx/]] に引き継がれました。
このページから最新のソースをいただいてきて次のようにインストールします。
***ソースファイルの調査 [#wd3d562f]
挿入された画像ファイルやLaTeXファイルを調査するときは、LaTeXソースファイルを手動(目視)でさがすほかに、sed をつかってリスト出力することもできます。
>古い teTeX では /usr/local/teTeX/share/texmf/dvipdfm/config
がファイルになっているので dvipdfmx の上書きインストールが失敗します。
teTeX 2.0.2 では大丈夫です。
次の例では、test.texファイルから \includegraphics 命令で指定された画像ファイルのリストを出力します。ただし、コメントやverbatim環境内などに記述された画像ファイルもリストに含まれるため、それらは除外する必要があります。
tar xvzf dvipdfmx-20031207.tar.gz -C /usr/local/src/tetex-src-2.0.2/texk/
cd /usr/local/src/tetex-src-2.0.2/texk/dvipdfmx-20031207
./configure --prefix=/usr/local/teTeX --with-kpathsea=/usr/local/teTeX
make
make install (configファイルを上書きしたくなければ make install-exec)
mktexlsr
$ sed -e 's/}/}%/g' test.tex | sed -e 'y/}%/}\n/' | sed -n -e 's/.*\\includegraphics\(\[[^]]*\]\)\{0,1\}{\([^}]*\)}$/\2/p'
configure のオプションには必要に応じて --with-png=DIR,--with-zlib=DIR
も付けます。
20030805 から OpenSSL は不要です。
***.flsファイルの調査 [#u6148f74]
/usr/local/teTeX/share/texmf/dvipdfm/config/dvipdfmx.cfg が設定ファイルになります。
この中の
LaTeXに -recorderオプションをつけて実行すると出力される.fls ファイルを元に調査することもできます。次のコマンドで、test.tex ファイルからtest.fls ファイルを生成します。
f cmr.map
f psbase14.map
f lw35urw.map
$ uplatex -interaction=nonstopmode -recorder test.tex
はコメントアウト(頭に % を付ける)して,代わりに
.flsファイルには、LaTeX処理で入出力されるファイルがリストになっています。入力ファイルと出力ファイルはそれぞれ、INPUTとOUTPUTではじまる行に記録されます。また、TeXのシステムファイルもリストに含まれます。そのため、TeXのシステムファイル以外の入力ファイルを表示するには、
次のようにします。
f dvipdfm.map
$ grep '^INPUT' test.fls | grep -v `kpsewhich -expand-var '$TEXMFROOT'` | sort | uniq
INPUT test.aux
INPUT test.tex
INPUT tiger.pdf
INPUT tiger.xbb
を入れます ← 配布段階で対応していただきました。
(dvipdfm.map は /usr/local/teTeX/share/texmf/dvips/config の中にあり,dvipdfm_dl14.map
または dvipdfm_ndl14.map へのシンボリックリンクになっています(それぞれフォントをダウンロードする/しない)。
ダウンロードする方にしておけば,Times Roman が Times New Roman に置き換えられるといった心配はなくなります。
ただしダウンロードされるのは URW の互換フォントです。
デフォルトではダウンロードしないになっています(この方が軽い PDF ができますが Acrobat Reader で Times
や Helvetica が Times New や Arial で置き換えて表示されます)。
*PDF作成の実例 [#s60e963b]
実行ファイル名は dvipdfmx です。
最後の x を忘れないように!
Make は、コマンド実行時のカレントディレクトリにある Makefile を読み込んで、その記述と引数に応じた処理を行います。以下に、LaTeX 文書の処理に用いた Makefile の実例を示します。
この dvipdfmx ではいくつかの CMap ファイルが必須です。
[[GNU Ghostscript 7.07 on Linux:http://oku.edu.mie-u.ac.jp/~okumura/linux/gs707.html]]
のページを参考にして Ghostscript をインストールされたかたは /usr/local/share/ghostscript/Resource
の下にたくさんの CMap ファイルがありますので,これを
/usr/local/teTeX/share/texmf/dvipdfm
の中にシンボリックリンクしておきます。
FILENAME = doc001
TEX = $(FILENAME).tex
IDX = $(FILENAME).idx
DVI = $(FILENAME).dvi
PDF = $(FILENAME).pdf
PDFOUT = $(FILENAME)_enc.pdf
cd /usr/local/teTeX/share/texmf/dvipdfm
ln -s /usr/local/share/ghostscript/Resource .
all:
make tex
make tex
make idx
make tex
make dvipdf
make pw
distclean:
make clean
rm $(PDFOUT)
clean:
rm *.aux *.dvi *.idx *.ilg *.ind *.log *.out *.toc *~ $(PDF)
tex:
uplatex $(TEX)
idx:
makeindex $(IDX)
dvipdf:
dvipdfmx $(DVI)
pw:
pdftk $(PDF) output $(PDFOUT) owner_pw foobar
[[Acrobat Reader:http://oku.edu.mie-u.ac.jp/~okumura/linux/acroread.html]]
をインストールされたかたは /usr/local/Acrobat5/Resource/Font
も同様にシンボリックリンクして使えそうです。
この場合、用意した LaTeX 文書ファイルは doc001.tex という名前です。makeindex コマンドで索引を生成するのと、[[pdftk]] でコピー・ペースト・印刷の禁止、パスワードの付与を行うために、
これで動くはずです。
テストしてみましょう。
- LaTeX での処理を2回
- makeindex
- LaTeX で最終処理
- dvipdfmx で PDF ファイル生成
- 生成した PDF ファイルを基に、pdftk でパスワード付与した PDF を生成
platex hello # hello.tex を hello.dvi に変換
dvipdfmx hello # hello.dvi を hello.pdf に変換
という順番での処理を行う必要があります。
また、処理終了後、あるいは処理を中断するときには、中間生成ファイルや PDF 等を必要に応じて削除する必要があります。
できた hello.pdf をダブルクリックして見てください。
このようなときに、上のような Makefile を作成しておくと、
Acrobat Reader なら完璧に見えますが,古い Mac OS X(10.3 以前)の「プレビュー」では明朝がゴシックで代用されてしまいます。
少し重くなってもいいからやはりフォントを埋め込みたいという場合は,次のようにします。
$ make
Mac OS X のヒラギノなら,まず /System/Library/Fonts
の「ヒラギノ明朝 Pro W3.otf」「ヒラギノ角ゴ Pro W3.otf」へのシンボリックリンクをうまく作り,その名前をそれぞれ HiraMinPro-W3.otf,HiraKakuPro-W6.otf として,dvipdfmx
から見えるところ(たとえば /usr/local/share/ghostscript/Resource/CIDFont
というディレクトリを作ってその中)に入れます。
mktexlsr を忘れないでください。
そして,/usr/local/teTeX/share/texmf/dvipdfm/config/cid-x.map の
(厳密には make all ですが、make は引数なしで実行されたときの default として、Makefile に最初に記述のある "all" を引数にとったときと同じ処理をします)と入力するだけで、上述の一連の処理が全て行われます。
また、
rml H Ryumin-Light
rmlv V Ryumin-Light
gbm H GothicBBB-Medium
gbmv V GothicBBB-Medium
$ make clean
となっているところをコメントアウト(頭に % を付ける)して,代わりに次のように書きます。
と入力すると、文書ファイルと最終生成物である PDF ファイル以外の全てのファイルが削除され、
rml H HiraMinPro-W3.otf
rmlv V HiraMinPro-W3.otf
gbm H HiraKakuPro-W6.otf
gbmv V HiraKakuPro-W6.otf
$ make distclean
他のフォントでも試してみてください。
たとえば小塚フォントなら次のようにします。
で、文書ファイル以外の全てのファイル(最終生成物の PDF ファイルを含めて)が削除されます。
rml H kozminstd-medium.otf
rmlv V kozminstd-medium.otf
gbm H kozgostd-medium.otf
gbmv V kozgostd-medium.otf
* リンク [#i5861f79]
morisawa.sty で使う場合にはさらにフォント定義を cid-x.map に追加します。
次はほんの一例です。
Makefile の書き方は簡単な条件分岐なので、ご覧になるだけでも何となくお分かりになると思います。
ネット上では、"Makefile 書き方" で検索していただければ数多くの解説を参照することができると思います。
ここでは参考に以下ひとつだけ挙げておきます(append 歓迎)。
ryumin-l H Ryumin-Light
ryumin-l-v V Ryumin-Light
gtbbb-m H GothicBBB-Medium
gtbbb-m-v V GothicBBB-Medium
futomin-b H kozminstd-bold.otf
futomin-b-v V kozminstd-bold.otf
futogo-b H kozgostd-heavy.otf
futogo-b-v V kozgostd-heavy.otf
jun101-l H kozgostd-light.otf
jun101-l-v V kozgostd-light.otf
-[[TeX文章をmakeで管理:http://folioscope.hatenablog.jp/entry/2013/07/29/000009]]
- [[Makefileの解説:http://www.am.sanken.osaka-u.ac.jp/~mukaigaw/misc/Makefile.html]]
-[[GNU Makeで楽々コンパイル(Latexも楽々):http://note.chiebukuro.yahoo.co.jp/detail/n36864]]
-[[自分用latex Makefile:https://gist.github.com/1095020]]
-[[thesis-template:https://github.com/ymrl/thesis-template]]
--[[修士論文用のテンプレートを作った:http://mkdir.g.hatena.ne.jp/ymrl/20121112/1352743084]]
-[[texマン:http://utata.hatenadiary.jp/entry/2012/11/03/215140]]
-[[なんかpdf作るために使ったり:https://gist.github.com/programmerMOT/4994126]]
-[[[TeX]Makefileの活用[Make]:http://kevlar.blog137.fc2.com/blog-entry-3.html]]
>JIS外字を扱えるようにするには,さらに
ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/aj16.tar.Z
を /usr/local/share/ghostscript/Resource
で展開しておき,齋藤修三郎さんの
[[UTF16用VF:http://psitau.tripod.co.jp/utf.html]]
から utf パッケージをダウンロードして展開します。
unzip utfbin.zip
cd utfbin
mv vf /usr/local/teTeX/share/texmf/fonts/vf/utf
mv tfm /usr/local/teTeX/share/texmf/fonts/tfm/utf
mkdir -p /usr/local/teTeX/share/texmf/ptex/platex/misc
mv *.sty /usr/local/teTeX/share/texmf/ptex/platex/misc/
mv unicode.map /usr/local/teTeX/share/texmf/dvips/config/
mv unicode-x.map /usr/local/teTeX/share/texmf/dvipdfm/config/
>これで,ヒラギノをお持ちでしたら,/usr/local/teTeX/share/texmf/dvips/config/config.ps
の適当な場所に p +unicode.map と追加し,/usr/local/teTeX/share/texmf/dvipdfm/config/dvipdfmx.cfg
の最後に f unicode-x.map と追加します。
ヒラギノ以外のフォントも使えます。
* 関連項目 [#db55a14a]
>2004/01/07以降のdvipdfmxでは,古い -f 対応パッチを当てないでください。
Make と LaTeX の組み合わせとして次のようなものもあります。
[[otf パッケージ:http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?OTF]] については別ページにしました。
- Latexmk
- OMake
- arara
- Lua スクリプト
- Ruby スクリプト
- Perl スクリプト
- バッチファイル
>Ignoring stream with with multiple segments というエラーが出たら
[[dvipdfm の日本語化:http://www.nn.iij4u.or.jp/~tutimura/hirata/]]
のページにある patch-concat-stream.diff をあててください。
Makefile.in だけエラーが出ますので,パッチを当てた後で Makefile.in
をエディタで開き,dvipdfmx_SOURCES に filter.c concat.c を追加,dvipdfmx_OBJECTS に filter.o concat.o
を追加します。
**Latexmk [#ae6ae029]
>古い epsbox.sty 対応のパッチを野田さんが作ってくださいました [[[qa:23745]:http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/23745.html]]。
これは dvipdfmx-20031207 で取り込まれました (Thanks: 土村さん)。
[[Latexmk - TeX Wiki>Latexmk]] を参照.
**xdvi [#a7bdcae8]
**arara [#vc2756b0]
-https://github.com/cereda/arara
-[[チョット arara してみた件:http://d.hatena.ne.jp/zrbabbler/20180627/1530099380]]
>Mac OS X では内山さんの [[CocoaなpTeX用プレビュアMxdvi:http://macptex.appi.keio.ac.jp/~uchiyama/macosx/mxdvi.html]] のほうが簡単です。
Mac OS X + X11 で xdvi をインストールする方法は内山さんの
[[Mac OS XにTeXをインストールしよう:http://macptex.appi.keio.ac.jp/~uchiyama/macosx/]]
に詳しく載っています。
あるいは統合環境の [[TeXShop]]
を使えばエディタやプレビューアを別途用意する必要もなくなります。
**OMake → 問題が発生する場合は [[Latexmk]] を使用する [#df86b9ce]
http://omake.metaprl.org/
>Plamo 3.3 でのコンパイルについては →
[[[qa:22697]:http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/22697.html]],[[[qa:22702]:http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/22702.html]]。
-[[OMakeマニュアル 日本語訳:http://omake-japanese.osdn.jp/]]
-[[ファイルを分割していると OMake + BibTeX がうまくいかない:http://qiita.com/t_uda/items/c89f300868e6a3707f6c]]
-[[LaTeXのソースを毎回makeしてる情弱は俺まででいい #OMake:http://st63jun.hatenablog.jp/entry/2013/01/30/002642]]
-[[OmakeによるLatexファイルの継続ビルド。べんり。:https://gist.github.com/4602243]]
-[[ぼくのかんがえたさいきょうの小説執筆環境:https://github.com/yoshimuraYuu/myBlog/blob/master/articles/novel.md]]
-[[latex-template:https://github.com/nojima/latex-template]]
-[[[OMake][tex] 複数ファイル:http://ameblo.jp/kaerunyaru/entry-11283143868.html]]
-[[Windowsで快適なLaTeX環境を構築する:http://nojima.hatenablog.com/entry/2012/01/12/205857]]
-[[TeXファイルの変更を監視して自動コンパイル:http://d.hatena.ne.jp/kaishin0527/20110915/1316159313]]
-[[OMakeで快適に論文執筆:TeX編:http://leoclock.blogspot.jp/2009/09/omaketex.html]]
-[[WindowsでOMakeを使って継続ビルド:http://blog.s21g.com/articles/1219]]
-[[OMake つかって LaTeX コンパイルしたら簡単すぎて身長が5cm伸びた:http://d.hatena.ne.jp/hayamiz/20081208/1228727272]]
土村さんの
[[xdvi 日本語化・機能拡張パッチ:http://www.nn.iij4u.or.jp/~tutimura/tex/xdvi.html]]
のページから xdvik-22.40y1 のパッチをいただいてきます。
また,土村さんのパッチの元になった最新の xdvik を CTAN
ミラー,たとえば
[[Ring サーバの /pub/text/CTAN/dviware/xdvik/:http://www.ring.gr.jp/pub/text/CTAN/dviware/xdvik/]]
からいただいてきて作業します:
**Lua スクリプト [#v301e7db]
-[[ptex2pdf]]
tar xvzf xdvik-22.40y1.tar.gz
cd xdvik-22.40y1
zcat xdvik-22.40y1-j1.21.patch.gz | patch -p1
# --with-vflib=vf2ft で FreeType 対応になります。
# うまくいかなければ --with-vflib=vf2ft を外して VFlib でお使いください。
./configure --prefix=/usr/local/teTeX --disable-multiplatform --with-vflib=vf2ft
make
# 次の cd をすれば texmf.cnf が上書きされません (Thanks: takiさん)
cd texk/xdvik
make install
**Ruby スクリプト [#b8eace76]
-[[部門/TeX/ソースファイルが更新されたら自動的にコンパイルするスクリプト:http://www47.atwiki.jp/cscd/m/pages/219.html]]
FreeType2 の include ファイルが /usr/local/include/freetype2/freetype
に入っている場合はこのシンボリックリンクを /usr/local/include/freetype
に作っておかないとうまく探せないかもしれません。
**Perl スクリプト [#kb29316f]
-[[ファイルが更新されたら自動で platex して dvipdfmx する:http://fjyuu.info/watch-platexpdf/]]
--[[platexpdf – github:https://github.com/fjyuu/platexpdf]]
--with-vflib=vf2ft しなかった場合は,/usr/local/teTeX/share/texmf/xdvi/vfontmap
に次のように書いておきます。
**バッチファイル [#n34560fd]
-[[2011.12.14 - Maidsphere // メイドスフィア:http://www.maidsphere.jp/archive/20111214/]], [[2011.3.8 - Maidsphere // メイドスフィア:http://www.maidsphere.jp/archive/20110308]]
min min
tmin tmin
nmin min
goth goth
tgoth tgoth
ngoth goth
jis min
jis-v tmin
jisg goth
jisg-v tgoth
dm min
dg goth
ryumin-l min
ryumin-l-v tmin
gtbbb-m goth
gtbbb-m-v tgoth
futomin-b min
futomin-b-v tmin
futogo-b goth
futogo-b-v tgoth
jun101-l goth
jun101-l-v tgoth
この左辺は tfm 名,右辺は /etc/vfontcap の項目名です。
適宜書き換えてください。
--with-vflib=vf2ft の場合は右辺はフォントへのフルパスにします。
例えば次のようにします。
ソースツリーの texk/xdvik/vfontmap.sample を参考にして補ってください
(左辺はこれ以外に min や goth など上に挙げてあるものを並べます)。
jis /usr/local/share/ghostscript/fonts/kochi-mincho-subst.ttf
jisg /usr/local/share/ghostscript/fonts/kochi-gothic-subst.ttf
jis-v /usr/local/share/ghostscript/fonts/kochi-mincho-subst.ttf
jisg-v /usr/local/share/ghostscript/fonts/kochi-gothic-subst.ttf
私は Linux も Mac OS X も FreeType 対応にしてしまいました。
ついでに,/usr/local/teTeX/share/texmf/xdvi/XDvi
または ~/.Xresources(または ~/.Xdefaults)に次のように標準的な開き方の設定しておくといいでしょう。
XDvi.Geometry: 950x700+0+0
XDvi.shrinkFactor: 5
XDvi.expert: true
XDvi.editor: emacsclient --no-wait +%l %f
! または XDvi.editor: gnuclient -q +%l %f
書き換えたら xrdb -merge ~/.Xdefaults のようなオマジナイが必要です。
Expert モード(右側のメニューがないモード)のオン/オフは x キーです。
(p)latex に -src オプションを与えると,xdvi を Ctrl-左クリック で Emacs の該当ソース個所に飛びます。
逆に,xdvi-search.el を使えば Emacs から xdvi の該当個所に飛べます。
詳細は
[[The Xdvik Homepage:http://xdvi.sourceforge.net/]]
の [[Inverse Search with Xdvi(k):http://xdvi.sourceforge.net/inverse-search.html]]
をご覧ください。
AUCTeX で使う方法は私の [[AUCTeX:http://oku.edu.mie-u.ac.jp/~okumura/texfaq/auctex.html]] のページにも書いておきました。
**udvips [#p7a85c4c]
Unicode対応のdvipsです。
cd /usr/local/src/tetex-src-2.0.2/texk/
mkdir udvipsk
cd udvipsk
cp -p ../dvipsk/* .
ここでMakefileを次のように修正します。
121c121
< DEFS = -DHAVE_CONFIG_H $(XDEFS)
---
> DEFS = -DHAVE_CONFIG_H $(XDEFS) -DUDVIPS
225c225
< program = dvips
---
> program = udvips
これでmakeします。
make clean
make
cp -p udvips /usr/local/teTeX/bin/
**日本語MetaPost [#b626cf65]
角藤さんが
[[hideyukiさん:http://www.sat.t.u-tokyo.ac.jp/~hideyuki/metapost/]]
のソースへのパッチを作ってくださいました [[[qa:17471]:http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/17471.html]]。
このパッチを当てて少し修正したものを念のため
[[jmpost-0.04a.tar.gz:http://oku.edu.mie-u.ac.jp/~okumura/texfaq/jmpost-0.04a.tar.gz]]
として置いておきます。
cd /usr/local/src/tetex-src-2.0.2/texk/web2c/ptex-src-3.1.4/
tar xvzf jmpost-0.04a.tar.gz
cd jmpost-0.04a/
./configure
make
make install
mktexlsr
/usr/local/teTeX/share/texmf/web2c/texmf.cnf を次のように修正します。
MPXCOMMAND.jmpost = pmakempx
MPXCOMMAND = makempx
あとはたぶん export TEX=platex のように環境変数を設定するだけです。
>松山さんも
[[jmpost-0.04-ptex312-cygwin.patch:http://village.infoweb.ne.jp/~fwhw5892/jweb/jmpost-0.04-ptex312-cygwin.patch]]
を作られました。
hideyuki さんの jmpost-0.04 に対するパッチです。
**おまけ [#m65b8b36]
/usr/local/teTeX/share/texmf/dvips/config/config.ps に o |lpr
という行があると「dvips ファイル名」で印刷が始まってしまいます。
この仕様が嫌な人はこの行の先頭に % を付けてコメントアウトしておきましょう。
古い dvips では /usr/local/teTeX/share/texmf/dvips/tetex/config.pdf の G
とだけ書いた行があると不都合があることがありましたが,今は問題ありません。
/usr/local/teTeX/share/texmf 以下にファイルを追加するたびに mktexlsr
または texhash というコマンドを打ち込まなければなりません。
これが面倒な人は,/usr/local/teTeX/share/texmf/ls-R
を削除し,/usr/local/teTeX/share/texmf/web2c/texmf.cnf の
TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN}
の !! をすべて消しておきます。
ついでに,texmf.cnf で
TEXINPUTS = .;$TEXMF/tex/{generic,}//
を
TEXINPUTS = .;$TEXMF/{tex,ptex}/{generic,}//
に変えると,kpsewhich jarticle.cls
と打ち込んだとき jarticle.cls
の場所が見つかるようになります。
フォントの自動作成を /var/tmp/texfonts 以下にするには,
/usr/local/teTeX/share/texmf/web2c/mktex.cnf で
: ${MT_FEATURES=appendonlydir,varfonts}
のようにしておきます。
また,掲示板の [[6863:http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/6863.html]]
にあるように,鈴木秀幸さんのご指摘に従って
/usr/local/teTeX/share/texmf/tex/latex/graphics/dvips.def
を以下のように修正すると特殊な場合に文字のずれがなくなるようです(しかしこれだと xdvi
がうまく働かない? ← 日本語パッチを当てなければ大丈夫のようです。Thanks: 土村さん):
\def\Gscale@start{\special{ps: gsave currentpoint currentpoint translate
\Gscale@x\space \Gscale@y\space scale neg exch neg exch translate}}
\def\Gscale@end{\special{ps: currentpoint matrix currentmatrix transform
grestore matrix currentmatrix itransform moveto}}
[[TeX を使ってみよう:http://oku.edu.mie-u.ac.jp/~okumura/tex/]]
のように CGI で運用するときは,texmf.cnf で openin_any = p
にしておかないと危険かもしれません([[詳細:http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?TeX%E3%82%92Web%E3%81%A7]])。
**新LaTeXのインストール [#xa73b0d0]
2004年3月にリリースされた2003年12月付のLaTeXをインストールしてみます。
ptex-texmf-2.2 は、正式に新LaTeXに対応していますから、必ずこの作業を
して下さい。
適当な近場,たとえば Ring サーバの /pub/text/CTAN/macros/latex/base
をディレクトリごといただいてきて,その中で作業します。
initex unpack.ins
initex latex.ltx
mv /usr/local/teTeX/share/texmf/tex/latex/base ../base-bak
mkdir /usr/local/teTeX/share/texmf/tex/latex/base
mv latex.fmt /usr/local/teTeX/share/texmf/web2c/
mv latexbug.tex testpage.tex lablst.tex idx.tex nfssfont.tex \
small2e.tex sample2e.tex docstrip.tex \
*.ltx *.cls *.clo *.sty *.fd *.def *.cfg \
/usr/local/teTeX/share/texmf/tex/latex/base/
mv *.ist /usr/local/teTeX/share/texmf/makeindex/
cd /usr/local/teTeX/share/texmf/ptex/platex/base/
iniptex platex.ltx
mv platex.fmt /usr/local/teTeX/share/texmf/web2c/
**これから [#k5e73b7d]
teTeX 3 がリリースされています。このページも更新する予定ですが、しばらくお待ちください。
メーリングリストのアーカイブ:
[[tetex-pretest:http://www.mail-archive.com/tetex-pretest%40dbs.uni-hannover.de/]]