現在、仕事場のマシン (FreeBSD 2.1.7R) では ASCII pTeX 2.1.4 (SJIS) を、 自宅 (FreeBSD 2.2.2R) では ASCII pTeX 2.1.5 (SJIS) をインストールして 使っています。
ASCII pTeX はコンパイル時に使用文字コードを EUC/SJIS/JIS のなかから 選べるのですが、私は SJIS を選びました。 これは、以前から DOS 環境で書いてきたテキストを、 文字コード変換することなく処理したいためです。
仕事場のマシンでは、 (株)アスキーのサイト (http://www.ascii.co.jp/pb/ptex/) などからソースを get してきてインストールしましたが、 自宅のほうは、 ports (ftp://jaz.jp.freebsd.org/pub/FreeBSD/ports-current/japanese/platex-sjis.tar.gz) を使ってインストールしました。後者のほうがはるかにラクです。
[ /usr/ports/japanese に platex-sjis.tar.gz を展開 ] # cd /usr/ports/japanese/platex-sjis # make install [ 必要なソースコードを自動的に get してきて展開し、 パッチ当て、コンパイル、インストールが始まる ]
これだけです (ただし、インターネットに接続されていることが必要です)。
仕事場のマシンでは、以前、xdvi の kpathsea ライブラリに対応したバージョン (xdvik-1.8f) で、VFlib による日本語表示を行うためのパッチが fj.comp.texhax に流れていて、これを使って FreeBSD 2.1.5R 上で コンパイルしたものをそのまま使っています。ただ、これは pTeX の縦書きに 対応していません。縦書きのものは、後述の dvips で PostScript ファイルに 変換してから ghostview で見るという方法をとっています。
自宅のマシンでは、FreeBSD 2.2.2R 付属の packages にある jp-xdvi300-17.tgz を pkg_add でインストールしています。
xdvi や後述の Ghostscript で日本語を表示・印刷するためには、 日本語 TrueType フォントが利用できる VFlib というライブラリを使います。 VFlib は最近は packages に含まれています。
dvips の日本語対応版はなぜか FreeBSD の ports コレクションに含まれていない ため、(株) アスキーのサイト から dvipsk のソースと日本語対応パッチをとってきてコンパイル・インストール しました。
Ghostscript の最新版 5.10 に日本語対応・各種プリンタ対応を施された ports (ftp://jaz.jp.freebsd.org/pub/FreeBSD/ports-current/japanese/vfghostscript5.tar.gz) があるので、それを使うのが早いでしょう。
なお、最近の Ghostscript は PDF ファイル出力が可能になっていますが、 上記の日本語対応版 Ghostscript では出力時に日本語テキストが ビットマップに変換されるので、 Acrobat Reader 上での検索やカット・アンド・ペーストができません。 この問題に対処するパッチが http://www.ldl.jaist.ac.jp/~akr/nonresearch/free-software/ghostscript/gs_jpdf.tar.gz にありましたので、 さきの ports でソースを展開したあと、このパッチを当てました。
[ /usr/ports/japanese に vfghostscript5.tar.gz を展開 gs_jpdf.diff はディレクトリ $GS_JPDF にあるものとする ] # cd /usr/ports/japanese/vfghostscript5 # make extract [ 必要なソースを自動的に取ってきて展開される ] # cd work/gs5.10 # patch -p1 -s > $GS_JPDF/gs_jpdf.diff # cd ../.. # make install [ コンパイル、インストールが始まる ]
ghostview は packages にあるものをそのままインストールしました。
プリンタは、仕事場では EPSON LP-8300、自宅では Canon BJC-420J を 使っていますが、どちらも別の Windows95 マシンに接続されています。 そのため、SAMBA を利用してネットワーク経由で印刷するという方法をとって います。
まず、Windows マシン上でプリンタを共有設定しておきます。
次に、SAMBA のオリジナルパッケージに含まれる smbprint を /usr/local/bin に置き、chmod 755 しておきます。 (smbprint は smbclient を起動してデータをリモートプリンタに送る シェルスクリプトですが、なぜか FreeBSD の packages のなかに入っていません。) 必要に応じて、最終行の smbclient のパスを変更しておきます。
(自宅の場合) ディレクトリ /var/spool/lpd に bjc420j を作り (モード777)、 そのなかに以下のように記述したファイル .config を作ります。
server=プリンタの接続されたWindowsマシン名 service=プリンタの共有名 password="パスワード"
/etc/printcap をエディタで開き、以下のようなエントリを追加します。
bjc420j|Canon BJC-420J:\ :cm=Canon BJC-420J:\ :sd=/var/spool/lpd/bjc420j:\ :af=/var/spool/lpd/bjc420j/acct:\ :if=/usr/local/bin/smbprint:\ :mx#0:\ :lp=/dev/null:
これで、gs で -sDEVICE=bjc600 オプションをつけた出力を lpr -P bjc420j の入力として渡せば、印刷ができるようになりました。
私はエディタにはもっぱら Mule を使用しています。 AUC TeX という Emacs Lisp パッケージにより、Mule 上で TeX マクロの 補完入力や、pTeX・xdvi・dvips 起動を行っています。 (同様の目的で作られた YaTeX という Emacs Lisp パッケージがありますが、 私はまだ利用したことがありません。)
TeX で原稿をタイプセットして、PDF の出力を得るには、以下の手順をとっています。
PDF の利点のひとつには、Acrobat Reader 上で文字列の検索や カット・アンド・ペーストができることがあります。しかしそのためには、 上記の流れの途中でフォントがアウトラインやビットマップに変換されてしまわない ことが必要です。
まず原稿作成時に、METAFONT で作成される Computer Modern などのフォントでなく
PS フォントを使う必要があります。これは、psnfss パッケージを
インストールして (CTAN サイトの macros/latex/packages/psnfss にあります)、
原稿ファイルのプリアンブル部に \usepackage{psnfss}
と書いて
おくことで可能です。(フォントのエンコーディングの違いに注意しなければならない
場面もありますが……。)
また、VFlib により日本語対応した Ghostscript は、出力のさいに日本語フォントを
ビットマップに変換してしまいます。これを避けるには、Ghostscript に対して
上記に挙げた日本語 PDF 出力対応パッチをあてて
コンパイル・インストールし、
-dNOKANJI -sDEVICE=pdfwrite
オプションをつけて
PDF ファイルに出力します。
Windows 環境の場合は、Ghostscript でなく 本家の Adobe Acrobat を使って PS → PDF 変換を行うとよいでしょう。(私はまだ持っていませんが)
最近、pdftex というシステム (CTAN サイトの systems/pdftex にあります) が 登場しましたが、私はまだ試していません。