☆ linux で tex を使う方法 ☆ ■ パッケージインストール 以下のパッケージをインストール platex + ptex-bin (platex depends on) + platex-base (platex suggests on) + dvi2ps-fontdata-ja (dvi2ps-fontdata-ptexfake depends on) + ptex-base _ dvi2ps-fontdata-ptexfake (ptex-bin depends on) ※ これをインストールしてしまうと, 日本語フォントまわりでうまく いかないので, インストールしないこと gs-ja gv 日本語の含まれた ps ファイルを見るために必要 jtex-bin + jtex-base (jtex-bin depends on jtex-base) jbibtex-base + jbibtex-bin xdvik-ja + dvipsk-ja (xdvik-ja suggests on) dvi2ps dvi2ps-fontdata-a2n dvi2ps-fontdata-bsr + tetex-extra dvi2ps-fontdata-ja dvi2ps-fontdata-n2a dvi2ps-fontdata-rrs dvi2ps-fontdata-rsp dvi2ps-fontdata-tbank dvi2ps-fontdata-three yatex dviutils freefont gsfonts-x11 jdvi2kps jpeg2ps libxfont-xtt libxfont-xtt-dev ptex-jtex sharefont tetex-nonfree tetex-dev vflib2 vflib2-dev vflib2-misc vflib3 vflib3-dev vflib3-bin + t1lib1 acroread ※ pdf を見るのに必要な Acrobat Reader のこと watanabe-vfont ※ このパッケージが含まれていないと, 以下のようなエラーメッセージが 出て, 日本語が表示できない. Unexpected error in "read_ZEIT_char()" ■ パッケージの調べ方 □ パッケージの詳細情報を見るコマンド $ apt-cache showpkg <パッケージ名> 依存情報などなどパッケージの情報を見ることができる. □ パッケージのアーカイブが置いてあるディレクトリ /var/cache/apt/archives に .deb ファイルが置いてある. apt-get で取得したパッケージに関しては, ここに .deb ファイルが 残っている. ■ MS Gothic, MS Mincho フォントを使用する場合 設定によって, この2種類のフォントを使用することもできる. □ 設定ファイルの編集 tex のフォントの設定は /etc/vfontcap ファイルに書き込んである. ただし, このファイルは直接編集せず, /etc/vfont/00vflib2 を編集した後, # update-vfontcap コマンドを使用して /etc/vfontcap に反映する. □ 設定ファイルの編集内容 ・ 明朝体とゴシック体の基本フォント *************************************** min:\ :fc=watanabe-mincho: goth:\ :fc=zeit-gothic: -------------------------------- min:\ :fc=r-microsoft-mincho: goth:\ :fc=r-microsoft-gothic: **************************************** ・ TeX で使用するフォントの設定 **************************************************************** ### for ASCII jTeX ### min|min5|min6|min7|min8|min9|min10|min12|min17|Mincho Font:\ :fc=ricoh-heisei-mincho-w3: goth|goth5||goth6|goth7|goth8|goth9|goth10|goth12|goth17|Gothic Font:\ :fc=ricoh-heisei-gothic-w5: tmin|tmin5|tmin6|tmin7|tmin8|tmin9|tmin10|tmin12|tmin17|Mincho Font:\ :fc=ricoh-heisei-mincho-w3: tgoth|tgoth5||tgoth6|tgoth7|tgoth8|tgoth9|tgoth10|tgoth12|tgoth17|Gothic Font:\ :fc=ricoh-heisei-gothic-w5: bmin:\ :fc=ricoh-heisei-bold-mincho: bgoth:\ :fc=ricoh-heisei-bold-goth: ----------------------------------------------------------------- ### for ASCII jTeX ### min|min5|min6|min7|min8|min9|min10|min12|min17|Mincho Font:\ :fc=min: goth|goth5||goth6|goth7|goth8|goth9|goth10|goth12|goth17|Gothic Font:\ :fc=goth: tmin|tmin5|tmin6|tmin7|tmin8|tmin9|tmin10|tmin12|tmin17|Mincho Font:\ :fc=min: tgoth|tgoth5||tgoth6|tgoth7|tgoth8|tgoth9|tgoth10|tgoth12|tgoth17|Gothic Font:\ :fc=goth: bmin:\ :fc=min: bgoth:\ :fc=goth: **************************************************************** □ フォントファイルの設置・設定 ◆ フォントファイル (**.ttc) を指定のディレクトリに置く. 00vflib2 にもあるとおり, MSフォントは /usr/share/fonts/truetype/ ディレクトリに配置する. (ディレクトリが無い場合は作成すること) 必要なファイルは, msgothic.ttc, msmincho.ttc の2つだろう. ◆ tti ファイルの作成 上記の2つのフォントを利用する場合は, tti ファイルという フォントのインデックスファイルが必要になる. これは, 下記のコマンドで作成可能である. # ttindex msgothic.ttc # ttindex msmincho.ttc ※ ttindex は vflib2-misc パッケージに含まれる. このコマンドで, それぞれ, msgothic.tti, msmincho.tti ファイルが作成される. ◆ fonts ファイルの作成(必要無いらしいが) /usr/share/fonts/truetype/ 以下に /usr/X11R6/lib/X11/fonts/TrueType/ の fonts.dir, fonts.alias を置く. (たぶん, いらない) ■ 使い方 1. tex をカリカリ書く 2. 以下のコマンドで, dvi ファイルを作成する. $ platex ***.tex 3. 以下のコマンドで, dvi ファイルを見る. $ xdvi-ja ***.dvi 4. プリントは, xdvi でプリントアウトできる. ■ emacs 上での yatex の使い方 □ dvi へのコンパイルのショートカット ・ tex から dvi を作成 Ctrl + c, Ctrl + t, j ・ dvi を見る Ctrl + c, Ctrl + t, p □ コンパイル時のエラー行へ移動 コンパイルが失敗した時, Ctrl + c, ' (アポストロフィ) (わざわざ, コンパイルのウィンドウに行って「何行目」を調べるの大変だし) □ yatex コマンドの変更/削除 ・ 変更 Ctrl + c, c ・ 削除 Ctrl + c, k その他に関しては, yatexref.txt を参照のこと ※ この yatexref.txt は http://www.yatex.org/ のクイックリファレンスをパチってきたもの ■ yatex での辞書登録の仕方 yatex では, 本来登録されているコマンドを保管したりできるが, それ以外のコマンドも登録することができる. 登録するには, 保管用のショートカットキーを入力した後, 新規に登録したいコマンドを手動で打ち込めば良い. すると, 入力完了後にそのコマンドを登録するか聞かれるので ユーザ辞書か, ローカル辞書かメモリの内のユーザ辞書を選択し, 登録する. ユーザ辞書に登録された内容は ~/.yatexrc に登録されている. ■ xdvi の使い方 Alt とキーを組み合わせることで, ショートカットキーを使うことができる. 例えば, Alt + q (Quit) で xdvi を終了することができる. □ プリントの仕方 xdvi の Print ボタンを押すと, 文字列を入力できるフォームが 表示される. 始めは lp という文字列が表示されており, ここですぐに 「print」ボタンを押すと, /etc/printcap で デフォルトに指定されているプリンタで印刷される. (xdvi が背後で dvi ファイルを ps ファイルに変換して印刷してくれるので, わざわざ設定する必要は無い.) 別のプリンタで印刷を行う場合は, lp の後ろに -P nozomipr などとすれば, そのプリンタで印刷が可能である. (もちろん, /etc/printcap にて設定されていることが前提である.) ■ xgdvi の使い方 □ インストール xgdvi パッケージをインストール. その他に以下のパッケージがインストール される. xgdvi + dvilib2 + vflib3 □ 使い方 $ xgdvi ***.dvi とすることで表示できる. □ 注意 xgdvi はフォントの設定に vflib3 を使用している. そのため, 以前に vflib3 を使用していない場合は設定をおこなう必要がある. 本来は watanabe-vfont と asiya24 のフォントをインストールして update-vflibcap コマンドをおこなえばよいはずだか, 残念ながらうまく行かなかった. いろいろ試した結果明朝体は見えるようになったが, ゴシック体などは 表示できなかった. 表示の方法については以下のメーリングリストを追っていくと参考になる http://lists.debian.or.jp/debian-users/200202/msg00253.html また, xgdvi の使い方に関しては以下のページを参照のこと http://typehack.aial.hiroshima-u.ac.jp/TeX-Guy/xgdvi/Startup15-ja/node2.html ■ dvi を ps ファイルに変換する方法 以下のコマンドで dvi ファイルを ps ファイルに変換する事が可能である. $ dvi2ps **.dvi > **.ps なお, gs コマンドで **.ps ファイルを見ることが可能である. ■ ps ファイル のビューア ps ファイルを見るツールとしては gs-ja や gv があるが, gv の方がユーザインターフェースとして優れている. ■ ps ファイルを pdf ファイルに変換する方法 以下のコマンドで, ps ファイルを pdf ファイルに変換することが可能である. 変換には, 以下の ps2pdf と ps2jpdf の2種類があるが, 今のところ違いはわからない. $ ps2pdf **.ps なお, 変換された pdf は非常に汚く見えるが, 印刷すると 本来通りのきれいなフォントが印刷される. ■ dvi ファイルを pdf ファイルに変換する方法 dvipdfm パッケージを利用すると良いのだが, バージョンが低過ぎると日本語フォント入りの pdf ファイルが作成できない. 最低でもバージョン 0.13.2c-2 以降が必要となる. (woody ではこのバージョンに達していないので普通に apt-get では 低いバージョンしかインストールできず, 日本語フォント入り pdf ファイル は作成できない.) ==== バージョンが低い場合 ========= 以下のようなエラーメッセージが出てうまくいかない. [1 Something is wrong. Are you sure this is a valid TFM file? どうも, TFM (Truetype Font Metric) ファイルが無いと言われているよう なのだが… ?? ==================================== ある程度のバージョンの dvipdfm パッケージをインストールしようとする ならば, ftp サーバなどにログインし, 新しいバージョンの deb パッケージを 入手するのが良い. 今回のインストールでは最寄りの ftp サーバから dvipdfm_0.13.2c-7_i386.deb をダウンロードしてきた. 後はこれを dpkg コマンドでインストールする. □ 日本語が埋め込まれた gs を pdf に変換するために 上記の方法で, 日本語 dvi を pdf に変換することは可能になったが, 日本語が埋め込まれた eps (または ps) はうまく pdf にすることが できないかもしれない. これは gs (GhostScript) が日本語を扱えないことが原因である. もしも日本語を含む eps や ps ファイルを dvi に含んでおり, それを dvipdfm で pdf に変換したいのであれば, gs で日本語を扱えるようにすると良いだろう. ※ gs-ja.txt を参照のこと. ■ psselect を用いた ps ファイルの分割 psselect を用いると, ps ファイルから任意のページだけを取り出したり, 偶数ページのみ, 奇数ページのみを取り出すことが出来る. □ psselect の基本的な使い方 $ psselect [オプション] [ページ番号] [分割元 PS ファイル] [分割先 PS ファイル] なお, 分割先 PS ファイルを指定しないと標準出力に出力される. ◆ オプション -e 分割元の PS ファイルの偶数ページのみを切り出す対象にする -o 分割元の PS ファイルの奇数ページのみを切り出す対象にする -r 分割したページの並びを逆にする -p[ページ番号] ページを指定する □ 具体的な使用例 ・ test.ps の偶数ページのみを test_even.ps に出力 $ psselect -e test.ps test_even.ps ・ test.ps の 3,5,8-11 ページを逆に並べて test_reverse.ps に出力 $ psselect -r -p3,5,8-11 test.ps test_reverse.ps □ DVI ファイルからこのコマンドを活用して直接印刷する方法 ・ test.dvi ファイルの奇数ページを dvi2ps と lpr コマンドを利用して印刷 $ dvi2ps test.dvi | psselect -o | lpr ・ test.dvi ファイルの 1 〜 20 ページの内の偶数ページを印刷 $ dvi2ps -f 1 -t 20 test.dvi | psselect -e | lpr ・ yaTeX のコマンドをちょっと編集して奇数ページのみの印刷を行う. yaTeX にて Ctrl-c, Ctrl-t, l とするとデフォルトで以下のコマンドが *Message* に表示される. $ dvi2ps -f 1 test | lpr ここで Enter を押せば普通に印刷されるが, ここで以下のようにコマンドを 書き換えると, 奇数のみのプリントが行える. $ dvi2ps -f 1 test | psselect -o | lpr ◇ 参考資料 CNSガイド編集委員, 2001: 1.6 Postscript ファイルの操作 http://www.sfc.keio.ac.jp/guide/cns-guide/2001/12/1/6.html ■ psnup を用いたページ割り付け psnup を用いると, 1つのページに 2ページ分を割り付けるなどすることが 可能になる. 例えば, test.ps を 2ページ割り付けにして test2.ps にする場合は $ psnup -2 test.ps > test2.ps とする. DVI ファイル等から直接 4 ページ割り付けにしてプリントしたい場合には 以下のようにすると良いだろう. $ dvi2ps test.dvi | psnup -4 | lpr ■ Dennoustyle のインストール Windows と違い非常に簡単である. 地球流体電脳倶楽部の以下の場所から dennou-sty-6_0.5_all.deb という ファイルを取得して来る. http://www.gfd-dennou.org/arch/cc-env/TeXmacro/dennou/ もってきたら, 以下のコマンドを使用するだけで必要なことを全て行ってくれる. # dpkg -i dennou-sty-6_0.5_all.deb これで, Dennou-sty が使えるようになる. (かんたんですね) ■ ルビ振り ルビを振るには, プリアンブルに \usepackage{nruby} と書き込み, \ruby{語}{読みがな} とすると良い. 詳しくは, 以下の URL 参照. http://www.biwako.shiga-u.ac.jp/sensei/kumazawa/tex/nruby.html ■ Tgif のインストール お絵書きをするために, tgif パッケージをインストール ・ インストール中の質問 Tgif でのお絵書きのグラウンド(?) のサイズの指定 → a4 を指定 ・ ??? If you turn on the snap-to grid in Tgif, what units do you want it scaled in? What units to use for the grid. Metric Imperial → Metric を選択 tgif の使い方に関してなどは, tgif.txt を参照のこと ■ カラー表示 tex ファイルをカラー表示させる方法を探索中 □ color 関係のパッケージを一通りインストールしてみる. 以下のパッケージをインストール colorgcc libansicolor-perl xcolors xcolorsel 結局, 全然かわらず… □ hilit19 の採用 tex に限らず, pl や C でも, カラー表示ができる, hilit19 という ライブラリ(?) を使用する. ※ 別なのに font-lock というものもあったらしいが, 使い方が わからなかったのでやめた. 以下の行を .emacs に追加することで, hilit19 が使用できるようになる. (if (not window-system) ;; ターミナルで開く場合は無効化する. (setq hilit-background-mode 'dark) ;; 背景が黒の場合のカラー設定 (load-library "hilit19") ) その他, 色の設定も細かく指定できるが, 詳細は .emacs 参照のこと □ font-lock で色付けする方法 hilit19 で, 毎回 Ctrl + Alt + L を押すのが面倒になったため, font-lock で色付けを行う. ◆ font-latex のダウンロード latex での font-lock として, font-latex が配布されている. 現在(2002/05/26)はバージョン8.00が最新である. http://people.debian.org/~psg/elisp/ にて, font-latex パッケージをダウンロードし, emacs の Lisp が格納されているディレクトリ (/usr/share/emacs/site-lisp/ や /usr/share/emacs/20.7/lisp/ など) にコピーしておくと良いだろう. (このlispファイルの読み込みを少しでも速くしたいのであれば, emacs で byte-compile を行って elc ファイルにコンパイルすると良い) ◇ 注意 ただし, 一部の色付けは potato の時にはできなかった. woody にアップデートした際にいつの間にかできるようになっていた. ◆ 使用方法 .emacs ファイルに以下の記述を行うことで font-latex を呼び出し, 色付けを行うことができる. (おそらく, 必要なのは3〜8行目だけ?) (setq YaTeX-use-hilit19 nil) (setq YaTeX-use-font-lock nil) (if window-system (progn (require 'font-latex) (add-hook 'yatex-mode-hook 'font-latex-setup) (add-hook 'yatex-mode-hook 'turn-on-font-lock 'append) )) (cond ((featurep 'font-lock) (defface font-latex-math-face '((((class grayscale) (background light)) (:foreground "DimGray" :underline t)) (((class grayscale) (background dark)) (:foreground "LightGray" :underline t)) (((class color) (background light)) (:foreground "SaddleBrown")) (((class color) (background dark)) (:foreground "burlywood")) (t (:underline t))) "Font Lock mode face used to highlight math in LaTeX." :group 'font-latex-highlighting-faces) (defface font-latex-label-face '((((class static-color)) (:foreground "yellow" :underline t)) (((type tty)) (:foreground "yellow" :underline t)) (((class color) (background dark)) (:foreground "pink")) (((class color) (background light)) (:foreground "ForestGreen")) (t (:bold t :underline t))) "Font Lock mode face used to highlight labels." :group 'font-lock-faces))) (setq YaTeX-font-lock-formula-face 'font-latex-math-face YaTeX-font-lock-label-face 'font-latex-label-face) ◆ 色の変更の方法 着色される色を変更するには, .Xresources に以下のように記述すれば 良い. (もちろん, 設定後に X の再起動が必要になる) Emacs.font-latex-math-face.attributeForeground: Yellow Emacs.font-latex-sedate-face.attributeForeground: Green Emacs.font-latex-bold-face.attributeForeground: LightSalmon □ 参考資料 色の設定の仕方まで載っている結構細かいHP http://www.tk.airnet.ne.jp/nagae/jp/comp/mule/face/hilit.html 実際に使用されている玄人な .emacs http://www.ongs.net/daichi/freebsd/configuration/emacs/emacs http://www.ongs.net/daichi/windows/configuration/emacs/emacs 野鳥について http://www.math.s.chiba-u.ac.jp/~matsu/emacs/emacs21/yatex.html カスタマイズ変数設定一覧 http://mibai.tec.u-ryukyu.ac.jp/cgi-bin/info2www?(yatexj)All%20customizable%20variables .emacs で hilit19 のカラー設定 http://w3.sys.es.osaka-u.ac.jp/~nakamura/manual/linux.txt .emacs の編集 (優) http://www.namazu.org/~tsuchiya/elisp/ emacs-lisp の文法説明 (優) http://emacs-21.ki.nu/dot.emacs/index.html ・ .emacs 内の cond の意味を解説 http://emacs-21.ki.nu/dot.emacs/elisp-cond.html GNU Emacs Lisp Reference Manual (詳しそうだけど難しそう…) http://flex.ee.uec.ac.jp/texi/eljman/eljman_toc.html ・ newline-and-indent と reindent-and-newline-and-indent との違い http://flex.ee.uec.ac.jp/texi/eljman/eljman_214.html ■ emacs でターミナル? emacs を起動し, M-x term と入力すると, ターミナルが立ち上がる. exit で終了した後, C-x, C-k で終了し, 元のエディタ状態に戻る.