平衡点
2014/12/05
_ Debian 8.x (Jessie) での TeX 環境
この記事は「TeX & LaTeX Advent Calendar 2014」の 12/05 分の記事です.昨日は @CardinalXaro の 「LaTeXで踊る -TeX & LaTeX Advent Calendar 2014- 」でした(...おお,本当に踊ってるよ).
さて.
一昨年の Advenct Calendar で Ubuntu 12.04/Debian Squeeze での TeXLive (>=2012) 環境 という話を書きました.また(その前の日に)次期安定版 Debian 7.0 'Wheezy' での TeX 環境(特に pTeX 環境)についてなんて事も書いていました(こちらはDebian/Ubuntu JP Advenct Calendar の記事です).
今年の話題はその改訂版になります.なんか @iwamatsu にもネタ振られたし: --nigauri.org--(2014-10-13)
(2014-12-05 08:00 誤字修正)
(2014-12-05 08:30 誤字修正) pLaTeX, upLaTeX の場合に,dvips→ps2pdfwr として PDF を生成する場合にしか触れていないのですが,Postscript 経由で PDF を生成せざるを得ない場合を除いて,dvipdfmx を使う方が良いと思います.
(2014-12-05 09:00 追記) TeXLive リリースマネージャであり,Debian の TeXLive のパッケージメンテナでもある Norbert Perining さんによる Writing Japanese in LaTeX : Part 1 – Introduction | There and back again が同じ日に公開されています.英語の記事ですが,現在使える TeX Engine での日本語組版についてのサマリがありますので,参考になるかと思います.
パッケージとして提供されている TeXLive の状況
昨年 の G.W. にリリースされた Debian 7.x (Wheezy) から,パッケージとして提供されている TeX 環境は TeX Live ベースへ移行しています.Wheezy で提供されている TeX 環境は TeXLive 2012 でしたが,Jessie で提供される TeX 環境は Debian -- Details of package texlive-full in jessie によれば 2014.20141024-1 となっています.TeXLive 2014 + 10/24までの更新,ですね:
% pdflatex This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2015/dev/Debian) (preloaded format=pdflatex) restricted \write18 enabled. ,**
とか
% platex This is e-pTeX, Version 3.14159265-p3.5-130605-2.6 (utf8.euc) (TeX Live 2015/dev/Debian) (preloaded format=platex) restricted \write18 enabled. ,**
みたいに.
ちなみに Debian の TeX 関連パッケージは基本的に TeXLive のリリース版を適切に分割してまとめることで生成されています.「バージョンが古い」とか「○○が無い」という場合には,CTAN: Comprehensive TeX Archive Network に登録されていないか,CTAN に集録されている版の更新が遅れているのが原因(であることが多い)です.
新規インストール
何も考えずに
% sudo apt-get install texlive-full
でも良いですが,結構なサイズになります(とはいえ,今時数GB程度だと気にならないかと思いますけれど).
個別にインストールする場合は以下の通り.
とりあえず pTeX,upTeX を使えるようにする:
% sudo apt-get install texlive-lang-japanese
上記パッケージを install することで, ptex2pdf も使えるようになります.
XeTeX, LuaTeX も使えるようにする:
% sudo apt-get install texlive-xetex % sudo apt-get install texlive-luatex
DVI と PDF の Viewer はお好みで:
% sudo apt-get install evince xdvik-ja
default デスクトップ環境は Gnome ですから,PDF の閲覧には Evince を使うのかな? 日本語の表示が可能な xdvi, いわゆる pxdvi は xdvik-ja としてパッケージングしています(とはいえ,今なら直接 PDF を閲覧するのが良いと思いますが...).
旧バージョンからのアップグレード
今のところ特にハマり所はありません(無い筈).普通にアップグレードできました.wheezy → jessie のアップグレードに関する(全体の)ドキュメントは現在鋭意修正・更新中ですので,もしTeX関連のアップグレードに失敗するみたいでしたら,御気軽にご連絡下さい or BTS に投稿下さい.
日本語が扱えるTeX あれこれ
昨年の TeX Advent Calender の記事ですが, @_yuu_ による LaTeX - TeX処理系御伽話 なんかが参考になるのではないでしょうか?
個人的には,
- pLaTeX: (計算機にそれほど詳しくない)他人とデータのやりとりをする時(共著なんか)
- XeLaTeX or LuaTeX: 個人で作業する時,もしくは複数人でも説明が楽な相手の場合
と使い分けています.
以下,処理系毎に「現状」に関してまとめていきます.
pTeX
多分,多くの人々が現状では p(La)TeX をお使いかと思います.共著作業の際に(年上の方々に)説明するのが楽ですし,学会のTeXフォーマットが p(La)TeX 前提だったりするので,わりと離れられませんよね....
dvipdfmx, dvips+ps2pdfwrを使用した日本語フォントの埋め込みと xdvik-ja での表示の制御に関して.以前提供されていた updmap-setup-kanji{,-sys} コマンドは kanji-config-updmap{,-sys} コマンドに rename されていますので,
フォントを埋め込まない場合:
% kanji-config-updmap noEmbed or % sudo kanji-config-updmap-sys noEmbed
IPAexフォントを埋め込む場合:
% sudo apt-get install fonts-ipaexfonts # <-- install されていなかったら. % kanji-config-updmap ipaex or % sudo kanji-config-updmap-sys ipaex
で,一通り設定が終わります.
ただし,現状では dvips + ps2pdfwr での処理がちょっと半端(?)です.
まず, noEmbed を指定した場合.
platex → dvips で生成された PostScript では実フォント名が用いられません(望んだ動作だと思います).しかしながら,これを ps2pdfwr で処理すると, Ryumin-Light, GothicBBB-Medium として /usr/share/fonts/truetype/fonts-japanese-{mincho,gothic}.ttf が埋め込まれます(これらのフォントは alternatives で切り替え可能です).
この挙動の制御は Ghostscript の管轄で,Debian の場合は /etc/ghostscript/cidfmap.d/90gs-cjk-resource-japan1.conf で設定されています(この設定のおかげで,PostScript 内で Ryumin-Light, GothicBBB-Medium で指定されている場合でも gs で表示が可能なわけです). noEmbed なのに PDF 生成までやると /usr/share/fonts/truetype/fonts-japanese-{mincho,gothic}.ttf が埋め込まれるってのは混乱しないかな,とか思ったりもします(PDFの規格としては埋め込むのが正しいですが).
次に, ipaex を指定した場合. platex→dvips で PostScript を生成すると,ファイル中のフォント指定が IPAex{Mincho,Gothic}-H になります. ですが,現在 Debian で提供されている Ghostscript には,IPAexフォントのエントリがありません(ので gs での Postscript 表示, ps2pdfwr での PDF 生成に失敗します).以下の手順で設定が必要です:
/etc/ghostscript/cidfmap.d/ 以下に, 10-local-ipaexfonts.conf 等の名前で以下のファイルを置きます. 番号はとりあえず 10 番台にしました.
/IPAexMincho << /FileType /TrueType /Path (/usr/share/fonts/opentype/ipaexfont-mincho/ipaexm.ttf) /SubfontID 0 /CSI [(Japan1) 6] >> ; /IPAexGothic << /FileType /TrueType /Path (/usr/share/fonts/opentype/ipaexfont-gothic/ipaexg.ttf) /SubfontID 0 /CSI [(Japan1) 6] >> ; /IPAMincho << /FileType /TrueType /Path (/usr/share/fonts/opentype/ipafont-mincho/ipam.ttf) /SubfontID 0 /CSI [(Japan1) 6] >> ; /IPAGothic << /FileType /TrueType /Path (/usr/share/fonts/opentype/ipafont-gothic/ipag.ttf) /SubfontID 0 /CSI [(Japan1) 6] >> ;
以下を唱えます
% sudo update-gsfontmap
これで, Ghostscript から IPAex{Mincho,gothic} が見えるようになり,IPAex フォントを埋め込んだ PDF を生成することができます.
upTeX
状況は pTeX と変わりませんので kanji-config-updmap{,-sys} で設定して下さい.
ただし, dvips→ps2pdfwr の場合には,ちゃんとグリフ探せない場合がありますね.新しく文書を書き始める場合には dvipdfmx を使う方が良い思いますが,必要に迫られて dvips→ps2pdfr でPDFを生成する場合には,どうしたら良いかな....
XeTeX
パッケージで提供されている ZXjatype, ZXjafont, BXjscls のバージョンは
- ZXjatype: v0.6
- ZXjafont: v0.2
- BXjscls: v0.3a
となっていますので,とりあえず日本語での組版に困る事はないでしょう(BXjscls が古い...?). 例えば以下のソースを xelatex で typeset することで,IPA{明朝,ゴシック}が埋め込まれた PDF が生成されます.
# source: tex \documentclass[a4paper]{bxjsarticle} \usepackage{zxjatype} \usepackage[ipa]{zxjafont} \usepackage{xltxtra} \begin{document} \section{幸田露伴「雲のいろ〳〵――卿雲」} 景雲といひ、卿雲といひ、慶雲といへる、しかと指し定められたる雲にはあらざるべし。 卿雲爛たり糺縵〻たり、といへる、煙にあらず雲にあらず紫を曳き光を流す、といへる、 大人作矣、五色氤氳、といへる、金柯初めて繞繚、玉葉漸く氤氳、といへる、 還つて九霄に入りて沆瀣を成し、夕嵐生ずる處鶴松に歸る、 といへる詩の句などによりて見れば、歸するところは美しき雲といふまでなり。 \end{document}
luaTeX
LuaTeX-ja も更新されています.例えば以下のソースを lualatex で typeset することで,IPAex{明朝,ゴシック}が埋め込まれた PDF が生成されます.
# source: tex \documentclass{ltjsarticle} \usepackage[ipaex]{luatexja-preset} \begin{document} \section{幸田露伴「雲のいろ〳〵――卿雲」} 景雲といひ、卿雲といひ、慶雲といへる、しかと指し定められたる雲にはあらざるべし。 卿雲爛たり糺縵〻たり、といへる、煙にあらず雲にあらず紫を曳き光を流す、といへる、 大人作矣、五色氤氳、といへる、金柯初めて繞繚、玉葉漸く氤氳、といへる、 還つて九霄に入りて沆瀣を成し、夕嵐生ずる處鶴松に歸る、 といへる詩の句などによりて見れば、歸するところは美しき雲といふまでなり。 \end{document}
番外: pdfLaTeX で日本語組版
pdfLaTeX で処理を行ないたい場合には,パッケージが提供している BXjscls が古い(v0.3)ので github: zr-tex8r/BXjscls より取得して install しましょう.そうすると,例えば以下を pdflatex で typeset することで,PDF が生成されます.
# source: tex \documentclass[pdflatex,jadriver=standard]{bxjsarticle} \begin{document} \section{幸田露伴「雲のいろ〳〵――卿雲」} 景雲といひ、卿雲といひ、慶雲といへる、しかと指し定められたる雲にはあらざるべし。 卿雲爛たり糺縵〻たり、といへる、煙にあらず雲にあらず紫を曳き光を流す、といへる、 大人作矣、五色氤氳、といへる、金柯初めて繞繚、玉葉漸く氤氳、といへる、 還つて九霄に入りて沆瀣を成し、夕嵐生ずる處鶴松に歸る、 といへる詩の句などによりて見れば、歸するところは美しき雲といふまでなり。 \end{document}
「tlmgr 使いたいんですけれど...?」
Ubuntu 12.04/Debian Squeeze での TeXLive (>=2012) 環境 の 2014 版を実行することになります.新しい equivs 用の control ファイルは Debian support - TeX Live - TeX Users Group で提供されていますので,これを使って下さい.
詳細は以前の記事を参照下さい.
まとめ
以上,駆け足でしたが,現在の Jessie での TeX 環境についてまとめてみました.Ubuntu は最近まったく触らなくなったので良く知りませんが,14.04 あたりなら,そんなに状況は変わっていないんじゃないかと思います.
そんなこんなで.
明日は mattskala の予定です.よろしくお願いします.
参考文献
- 次期安定版 Debian 7.0 'Wheezy' での TeX 環境(特に pTeX 環境)について
- Ubuntu 12.04/Debian Squeeze での TeXLive (>=2012) 環境
- Writing Japanese in LaTeX : Part 1 – Introduction | There and back again
- KeN's GNU/Linux Diary | Debian SqueezeでのGhostscriptフォント設定方針
- Debian -- Details of package texlive-full in jessie
- LaTeX - TeX処理系御伽話
- Debian support - TeX Live - TeX Users Group
- TeX Wiki