texlive2010には標準でplatex/ptexが同梱されている.

texlive-langcjkにはjsclassesが含まれている(@Archlinux).

ただ,pxdviはないっぽい.

しかし,dvi->pdfはdvipdf, dvipdfm, dvipdfmx のどれでも変換できてacroreadで閲覧するとちゃんと日本語表示された.

(どうやらdvipdf=dvips+gs, dvipdfm=dvipdfmxぽい)

つまり,実用にほぼ問題は無いので,texlive2010を使うことにした.

ptexliveのuninstall

% sudo rm -rf /usr/local/texlive
% sudo rm /etc/profile.d/ptexlive.sh

と思ったけど設定ファイルとか参考になるからpathを変更して(新しいtex環境の邪魔にならないように),texlive2010が問題なく

動くようにしてから,アンインストールが良いと思った.

texlive2010のinstall

とりあえず全部install.

% sudo pacman -S texlive-bin texlive-most texlive-lang

(なんか心配だったので,一端uninstallしてからinstallした.)

その他のクラスファイルなどのinstall

babelのjapanese
pkgname=texlive-babel-ja
pkgver=1
pkgrel=1
pkgdesc="Japanese options of babel"
arch=('any')
license=('unknown')
url="ftp://ftp.kddilabs.jp/CTAN/"
install=${pkgname}.install
source=(ftp://ftp.kddilabs.jp/CTAN/language/japanese/japanese/japanese.dtx
    ftp://ftp.kddilabs.jp/CTAN/language/japanese/japanese/japanese.ins)

build() {
    cd $srcdir
    ptex japanese.ins
    install -D ${srcdir}/japanese.dtx ${pkgdir}/usr/share/texmf-dist/tex/generic/babel/japanese.dtx
    install -D ${srcdir}/japanese.ins ${pkgdir}/usr/share/texmf-dist/tex/generic/babel/japanese.ins
    install -D ${srcdir}/japanese.ldf ${pkgdir}/usr/share/texmf-dist/tex/generic/babel/japanese.ldf
}
md5sums=('ebf783c563b6c17b940005ab030fa108'
         'd76d2f5d425eae8a0f5e9f87cc9c25f7')

.install

post_install() {
    texconfig-sys rehash 2>/dev/null
}

post_upgrade() {
    post_install $1
}

makepkg -fci するとyかnか聞かれるが,yで問題ないと思う.

suribt
pkgname=texlive-suribt
pkgver=20070118
pkgrel=1
pkgdesc="suribt"
arch=('any')
license=('unknown')
url="http://www.keisu.t.u-tokyo.ac.jp/research/suribt/"
install=${pkgname}.install
source=(http://www.misojiro.t.u-tokyo.ac.jp/suribt/suribt-20070118.zip)

build() {
    cd $srcdir
    install -d ${pkgdir}/usr/share/texmf-dist/tex/platex/suribt
    install -m 644 suribt.* ${pkgdir}/usr/share/texmf-dist/tex/platex/suribt
}
md5sums=('318364bf7af4e88cd83e9d0ad888a820')

.installは同上.

lyxの設定

変更は以下.

「設定」->「ファイル処理」->「変換子」-> 「DVI->Postscript」

変換子をdvipsに.

「設定」->「ファイル処理」->「ファイル書式」-> 「DVI」

閲覧プログラムをxdviに.

ちなみに,日本語表示方法は不明.

suribtを使う

suribtはマイナーなスタイルファイルなので,lyxで標準では用意されていない.

しかし,ほぼjsbookだろうということで

~/.lyx/layouts/suribt.layoutとして

#% Do not delete the line below; configure depends on this
#  \DeclareLaTeXClass{book (suribt)}
# Japanese new book textclass definition file.

# This style provides japanese features 
Provides japanese 1

# Input general definitions
Input book.layout

を作成し,lyxで「ツール」->「再初期設定」を実行すれば良い.

また,suribtで変更したtodayがbabelのjapaneseによって再度変更されるので,

プリアンブルに \title,\authourの他に

\def\datejapanese{%
  \def\today{%
    \if西暦%
      \number\year 年%
      \number\month 月%
      % \number\day 日%
    \else
      平成\the@heisei 年%
      \number\month 月%
      % \number\day 日%
    \fi}
}

と書いて,戻してやると幸せになれるはず.

dvipdfmxでのフォント埋め込み

dvipdfで作成したpdfはipaフォントが埋め込まれていた.

これは多分,/usr/share/ghostscript/8.71/Resource/Init/cidfmapに

/IPAMincho		<< /FileType /TrueType /Path (/usr/share/fonts/TTF/ipam.ttf) /CSI [(Japan1) 6] >> ;
/IPAGothic		<< /FileType /TrueType /Path (/usr/share/fonts/TTF/ipag.ttf) /CSI [(Japan1) 6] >> ;
/Ryumin-Light	   	/IPAMincho
/GothicBBB-Medium	/IPAGothic

という記述があるからだろう.多分.

しかし,dvipdfmxで

rml	H	ipam.ttf
rmlv	V	ipam.ttf
gbm	H	ipag.ttf
gbmv	V	ipag.ttf

のようなファイルを利用してIPAフォントを埋め込もうとするとipam.ttfとかipag.ttfが見つけられないと文句がでる.

kpsewhichとかいうやつが探すらしい.

どうやらサーチパスはtexmf.cnfで設定されているらしい.

通常は/usr/share/texmf/web2c/texmf.cnfにあるがArchlinuxではこれはシンボリックリンクになっている

実体は/etc/texmf/web2c/texmf.cnfにある(別にどちらを編集しも問題ないが).

このtexmf.cnfのOSFONTDIRをコメントアウトする.

% OSFONTDIR is to provide a convenient hook for allowing TeX to find
% fonts installed on the system (outside of TeX).  An empty default
% value would add "//" to the search paths, so we give it a dummy value.
OSFONTDIR = /usr/share/fonts

すると

% kpsewhich ipam.ttf
/usr/share/fonts/TTF/ipam.ttf

ところで,ptexlive2009ではこの設定をしてなかったし,こんな風な設定ファイルではなかった.

しかし,ipam.ttfは埋め込めた記憶がある.何故?

ptexliveの場合はdvipdfmx用fontmap(?)が(ptex-ipa-ttf.mapとか)

texmf/fonts/map/dvipdfm/ptexlive/

以下に存在した.

そこで,それらを

/usr/share/texmf-dist/fonts/map/dvipdfm/ptexlive

におくことにした.texmf-distなのは,jsclassesがtexmf-distにあるから.

pkgname=texlive-ptexlive-fontmap
pkgver=1
pkgrel=1
pkgdesc="dvipdfm fontmaps from ptexlive"
arch=('any')
license=('unknown')
install=${pkgname}.install
source=(ptexlive-fontmap.tar.gz)

build() {
    cd $srcdir
    install -d ${pkgdir}/usr/share/texmf-dist/fonts/map/dvipdfm/ptexlive
    install -m 644 ptexlive/*.map ${pkgdir}/usr/share/texmf-dist/fonts/map/dvipdfm/ptexlive
}
md5sums=('318364bf7af4e88cd83e9d0ad888a820')
md5sums=('d95468afa386fd63f76de95c023aeb79')