気の向くままに ~備忘録@wiki~
LaTeX
最終更新:
shirayuu
LaTex は、非常に綺麗な数式を記述できる組版ソフトのこと。
LaTeX の設定に関しては、 Ubuntu では、 JapaneseLocalizedDerivative/LaTeXForJapanese を参考にするとスムーズに環境を整えることができる。
本稿でも、JapaneseLocalizedDerivative/LaTeXForJapanese にしたがってインストールを進める。
- 参考
Ubuntu
ubuntu の設定に関してはバージョンの表記が特にないところは、9.10以前に関するところ。しかし、共通する部分も多いはずです。
パッケージのインストール
$ sudo apt-get install latex-env-ja $ sudo apt-get install latex-extra-ja $ sudo jisftconfig add
これで、LaTeX の組版を行うことが出きるようになる。 PS や PDF の変換、表示もできる。
CMAP 関係のインストール
$ sudo apt-get install cmap-adobe-japan1 cmap-adobe-japan2 cmap-adobe-cns1 cmap-adobe-gb1 gs-cjk-resource ghostscript
さらに様々なフォントに対応するために、追加の CMAP をインストールする。
やてふのインストール
$ sudo apt-get install yatex
ビューアーのインストール
$ sudo apt-get install evince gv
LaTeX 作り上げた各種ファイルを閲覧するためのソフト。 PS なら、gv を使うと良いだろう。 PDF に関しては、Adobe を使うがのちを参考にしてほしい。
PDF ビューア のインストール。
$ sudo apt-get install adobereader-jpn
PDF のビューアーは、Adobe が最も無難に思える。
起動は以下のコマンドで行える。
$ acroread
EUC-JP 環境時の注意
初回起動時については、環境変数 LC_ALL が EUC-JP 環境だと以下のエラーが出る。
$ acroread このオプションは利用できません (利用可能な全てのオプションは --help で確認して下さい)
そのため、
$ export LC_ALL=ja_JP.UTF-8 $ acroread
とする。
その後は、EUC-JP 環境でも問題なく起動する。
Xdvi の設定
xdvi の デフォルトフォントを変更する。 任意のフォントを表示させたい場合は、以下を参考にする。
使用するフォントの優先順位を変更
まず、以下のディレクトリへ移動する
$ cd /etc/defoma/hints/
各ファイルの Xdvi のフォント表示の優先順を決定する Priority の 値を調べる。 日本語フォントに関するファイルは以下のファイル(ubuntu のバージョンにより存在しないファイルもあります)。
- ttf-ipafont.hints
- ttf-ipamonafont.hints
- ttf-kochi-gothic.hints
- ttf-kochi-mincho.hints
- ttf-vlgothic.hints
- ttf-sazanami-mincho.hints
それぞれの、優先度を調べるために以下のコマンドを実行(以下の結果もバージョンにより異なります)
$ grep "Priority" ttf-ipa* ttf-kochi* ttf-vl* ttf-sazanami* ttf-ipafont.hints: Priority = 20 ttf-ipafont.hints: Priority = 20 ttf-ipafont.hints: Priority = 20 ttf-ipafont.hints: Priority = 20 ttf-ipafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-kochi-gothic.hints: Priority = 50 ttf-kochi-mincho.hints: Priority = 50 ttf-vlgothic.hints: Priority = 50 ttf-vlgothic.hints: Priority = 50 ttf-sazanami-mincho.hints: Priority = 50
ubuntu のバージョンに異なりますが、 ゴシック体は VL フォント を採用し、明朝体は、東風明朝かさざなみ明朝 が採用されているようです。
フォントは好みによりますが、今回はこれをゴシック体を、IPAゴシック、明朝体をIPA明朝に変更します。
そのためには、ttf-ipafont.hints の Priority を 50 以上にするか、その他のフォントのPriorityを下げれば変更できます。
$ sudo vi ttf-ipafont.hints
今回は、ttf-ipafont.hints の Priority を 80 に設定します(ttf-ipafont.hintsを編集する)。 例えば
$ pwd /etc/defoma/hints $ sudo vi ttf-ipafont.hints
編集結果を以下のコマンドで再確認します。
$ grep "Priority" ttf-ipa* ttf-kochi* ttf-vl* ttf-ipafont.hints: Priority = 80 ttf-ipafont.hints: Priority = 80 ttf-ipafont.hints: Priority = 80 ttf-ipafont.hints: Priority = 80 ttf-ipafont.hints: Priority = 80 ttf-ipamonafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-ipamonafont.hints: Priority = 20 ttf-kochi-gothic.hints: Priority = 50 ttf-kochi-mincho.hints: Priority = 50 ttf-vlgothic.hints: Priority = 50 ttf-vlgothic.hints: Priority = 50
その後以下のコマンドで反映。
$ sudo defoma-font reregister-all ttf-ipafont.hints $ sudo defoma-font register-all ttf-ipafont.hints $ sudo update-vfontmap
コマンド実行後、適当な dvi ファイルを開く
$ xdvi tex.dvi
反映されたか確認する。
vfontmap の変更
上記の方法を用いるのがよいかと思うが直接パスを指定する方法もある。
日本語用のクラスファイルはのフォントは /etc/texmf/vfontmap.d/20xdvik-ja.map の内容に従うためこれを参照する
$ cat /etc/texmf/vfontmap.d/20xdvik-ja.map @Mincho Roman|Mincho@ rml JIS-H % ASCII pTeX rmlv JIS-V % ASCII pTeX dm JIS-H % NTT jTeX @Gothic SansSerif|Gothic@ gbm JIS-H % ASCII pTeX gbmv JIS-V % ASCII pTeX dg JIS-H % NTT jTeX
これを次の用に変更
$ cat /etc/texmf/vfontmap.d/20xdvik-ja.map ## @Mincho Roman|Mincho@ /usr/share/fonts/truetype/ipafont/ipam.ttf rml JIS-H % ASCII pTeX rmlv JIS-V % ASCII pTeX dm JIS-H % NTT jTeX ## @Gothic SansSerif|Gothic@ /usr/share/fonts/truetype/ipafont/ipag.ttf gbm JIS-H % ASCII pTeX gbmv JIS-V % ASCII pTeX dg JIS-H % NTT jTeX
/etc/texmf/vfontmap.d/20ptex-jisfonts.map も同様に無理やり変更
$ cat /etc/texmf/vfontmap.d/20ptex-jisfonts.map ### For ptex-jisfonts ## @Mincho Roman|Mincho@ /usr/share/fonts/truetype/ipafont/ipam.ttf rml-jis JIS-H ## @Gothic SansSerif|Gothic@ /usr/share/fonts/truetype/ipafont/ipag.ttf gbm-jis JIS-H
その後
$ sudo update-vfontmap
で設定を反映する。
dvipdfmx 関連
dvipdfmx を使えるようにする
dvipdfmx をインストールした直後では dvipdfmxを実行させても
$ dvipdfmx <dvifile> ** WARNING ** Could not open config file "fontmapsx".
とこのように fontmapsx がない!と怒られる。
そこで、次の手順で dvipdfmxを使えるようにする。
$ sudo ln -s /etc/texmf/dvipdfm /etc/texmf/dvipdfmx
フォント関連で参考になるページ
http://tutimura.ath.cx/ptetex/?%A5%D5%A5%A9%A5%F3%A5%C8%A4%CE%BD%B8%C3%E6%B4%C9%CD%FD
PDF に変換する際に使用するフォントを指定する
dvipdfmx のフォントは Xdvi と設定ファイルが異なるのでそれ用の設定が必要となる。 dvipdfmx のフォント設定は /etc/texmf/dvipdfm/jis-cjk.map に記述されている。 最初はおそらく
%% for jis fonts of ptex-jisfonts rml-jis H Ryumin-Light gbm-jis H GothicBBB-Medium
となっていると思われる。
これを任意のフォントを使うためには、/usr/share/texmf/fonts 内にフォントを存在させる必要がある。 例えば、
$ sudo mkdir -p /usr/share/texmf/fonts/truetype $ cd /usr/share/texmf/fonts/truetype $ ln -s /usr/share/fonts/truetype/ipafont/ipam.ttf $ ln -s /usr/share/fonts/truetype/ipafont/ipag.ttf
として、IPA フォントのリンクを貼る。 次に、 /etc/texmf/dvipdfm/jis-cjk.map を編集して IPA フォントを使うようにする。
%% for jis fonts of ptex-jisfonts rml-jis H ipam.ttf gbm-jis H ipag.ttf
とする。 一応、mktexlsr などで LaTeX 周りの設定とかを更新しておく。
$ sudo mktexlsr $ sudo update-texmf
おそらくこれで、
$ dvipdfmx report
など適当な dvi ファイルを pdf に変換したとき IPA フォントが使用されているはず。
ubuntu 10.04
Xdvi の設定
ubuntu 10.04 では、前準備として、IPAフォントの hints ファイルがないため、代わりにTakao フォントの hints ファイルを作ってみました。Defoma (DEbian FOnt MAnager) で TrueType フォントを管理するを参考にしながら hints ファイルを作っていきます。
$ sudo apt-get install libfont-freetype-perl $ defoma-hints -c --no-question truetype /usr/share/fonts/truetype/takao/TakaoGothic.ttf > ttf-takaofont.hints $ defoma-hints -c --no-question truetype /usr/share/fonts/truetype/takao/TakaoMincho.ttf >> ttf-takaofont.hints
すると、次のような内容になる。
category truetype begin /usr/share/fonts/truetype/takao/TakaoGothic.ttf Family = TakaoGothic FontName = TakaoGothic-Regular Encoding = Unicode GeneralFamily = Roman Weight = Medium Width = Variable Shape = Normal Upright Priority = 20 end category truetype begin /usr/share/fonts/truetype/takao/TakaoMincho.ttf Family = TakaoMincho FontName = TakaoMincho-Regular Encoding = Unicode GeneralFamily = Roman Weight = Medium Width = Variable Shape = Normal Upright Priority = 20 end
既存の /etc/defoma/hints/ttf-ipamonafont.hints をみながら次のように編集する。
category truetype begin /usr/share/fonts/truetype/takao/TakaoGothic.ttf Family = TakaoGothic FontName = TakaoGothic-Regular Encoding = Unicode Location = English Japanese Charset = JISX0208 JISX0201 JISX0212 GeneralFamily = Gothic Weight = Medium Width = Fixed Shape = NoSerif Upright Priority = 80 X-Foundry = Takao X-Family = gothic X-Weight = medium X-Slant = r Transform = Slant Boldize CIDSupplement = 0 end category truetype begin /usr/share/fonts/truetype/takao/TakaoMincho.ttf Family = TakaoMincho FontName = TakaoMincho-Regular Encoding = Unicode Location = English Japanese Charset = JISX0208 JISX0201 JISX0212 GeneralFamily = Mincho Weight = Medium Width = Fixed Shape = Serif Upright Priority = 80 X-Foundry = Takao X-Family = mincho X-Weight = medium X-Slant = r Transform = Slant Boldize CIDSupplement = 0 end
プロポーショナルフォントの設定はないけど使わないと高をくくって省略しました。この作成した ttf-takaofont.hints を /etc/defoma/hintsに移動させる。
$ sudo cp ttf-takaofont.hints /etc/defoma/hints/
そして、登録させる。
$ cd /etc/defoma/hints/ $ sudo defoma-font register-all ttf-takaofont.hints
これで設定が反映される。フォントが変わったのか分かりづらいので比較画像を作ってみました。
上がIPAモナフォント、下が Takao フォント 違いはないですね・・・。
dvipdfmx の設定
はじめから、/etc/texmf/dvipdfmx/dvipdfmx.cfg は存在するので、/etc/texmf/dvipdfmx に f jis-cjk.map を追記すればいい。
$ echo f jis-cjk.map | sudo tee -a /etc/texmf/dvipdfmx/dvipdfmx.cfg
その後,jis-cjk.map を記述すればよい.
dvipdfmxを実行したときに
** WARNING ** Failed to load AGL file "pdfglyphlist.txt"... ** WARNING ** Failed to load AGL file "glyphlist.txt"...
とpdfglyphlist.txt,glyphlist.txtがないとエラーが吐き出されたときは W32TeX の dvipdfm-w32.tar.bz2 にあるものを流用すればよい.
$ wget http://w32tex.org/current/dvipdfm-w32.tar.bz2 $ tar jxvf dvipdfm-w32.tar.bz2 $ find . | grep pdfglyphlist.txt
./share/texmf/fonts/map/agl/pdfglyphlist.txt
$ cd ./share/texmf/fonts/map/agl/ $ sudo cp -v pdfglyphlist.txt glyphlist.txt /etc/texmf/dvipdfmx
`pdfglyphlist.txt' -> `/etc/texmf/dvipdfmx/pdfglyphlist.txt' `glyphlist.txt' -> `/etc/texmf/dvipdfmx/glyphlist.txt' また、
** ERROR ** Could not find encoding file "H".
とフォントがないとエラーが吐き出されたときは、 cmap が適切なディレクトリにないため/etc/texmf/texmf.cnf にある CMAPFONTS を次のように書き換える。
CMAPFONTS = .;$TEXMF/fonts/cmap// % 変更前 CMAPFONTS = .;$TEXMF/fonts/cmap//;/usr/share/fonts/cmap// % 変更後
そして、
$ sudo update-texmf
と設定の更新させる。
この設定においては、次のページを参考にさせていただきました。
ubuntu 10.10
xdvi
10.04 のように dvipdfmx をタイプすると DVI から PDF 変更時にエラーが吐き出されることはありませんでした。しかし、xdvi で dvi を閲覧したときゴシック体がM+もしくはVLゴシック系なのが気になります(人により異なります)。xdvi のフォント表示を決める設定ファイルである/etc/texmf/vfontmap.d/20xdvik-ja.mapを見てみると次のようになっていました。
@serif@ rml JIS-H % ASCII pTeX rmlv JIS-V % ASCII pTeX dm JIS-H % NTT jTeX @sansserif@ gbm JIS-H % ASCII pTeX gbmv JIS-V % ASCII pTeX dg JIS-H % NTT jTeX
どうやら、/etc/fonts/conf.d/69-language-selector-ja-jp.confの内容が反映されているようです。同ファイルの内容を書き換え、フォントの優先度を変更すると同様のことが発生します。
解決方法として@マークに挟まれているフォントの一般名を
- serif→Ryumin
-
sansserif→GothicBBB
と変更し以下のようにします。
@Ryumin@ rml JIS-H % ASCII pTeX rmlv JIS-V % ASCII pTeX dm JIS-H % NTT jTeX @GothicBBB@ gbm JIS-H % ASCII pTeX gbmv JIS-V % ASCII pTeX dg JIS-H % NTT jTeX
そのあと、$ sudo update-vfontmap
で設定を反映させます。また、jsarticleも同様に反映させたいので、/etc/texmf/vfontmap.d/20ptex-jisfonts.mapの内容も### For ptex-jisfonts @Ryumin@ rml-jis JIS-H @GothicBBB@ gbm-jis JIS-H ### For ptex-jisfonts
とします。もちろん、変更後以下のコマンドで反映させます。$ sudo update-vfontmap
ただし、/etc/fonts/conf.d/69-language-selector-ja-jp.conf のRyuminとGothicBBBの内容を次のようにIPA(Takeo)系を採用するように次のように変更する必要があります。## 前略 ## <match target="pattern"> <test qual="any" name="family"> <string>Ryumin</string> </test> <edit name="family" mode="prepend" binding="strong"> <string>Takao P明朝</string> <string>IPA P明朝</string> <string>IPA モナー P明朝</string> <string>梅P明朝</string> <string>さざなみ明朝</string> <string>東風明朝</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>GothicBBB</string> </test> <edit name="family" mode="prepend" binding="strong"> <string>Takao Pゴシック</string> <string>IPA Pゴシック</string> <string>IPA モナー Pゴシック</string> <string>UmePlus P Gothic</string> <string>梅Pゴシック</string> <string>VL Pゴシック</string> <string>さざなみ ゴシック</string> <string>東風ゴシック</string> </edit> </match> ## 後略 ##
こうして、Gnome などに使用されるフォントと xdvi に使用されるフォントを切り分けます。
Ubuntu 11.04
latex-env-ja パッケージが無くなっていたため,別ページを作りました.
LaTeX のパッケージ
詳しくは、TeX Wiki を参考にすればいい。 ubuntu では、/usr/share/texmf-texlive/tex/latex/に存在している。 何かパッケージを加えるときはこのディレクトリに保存すればよい。 その後、
$ sudo mktexlsr
と mktexlsr コマンドを実行する。
パッケージのメモ書き
パッケージに関して非常に分かりやすくまとめてある Webページ http://www.biwako.shiga-u.ac.jp/sensei/kumazawa/tex.html