最終更新日 …
$Date: 2004-06-28 14:38:14+09 $
現在,理系学生や理系研究者にとって必須な能力の一つとして,
「TeX を扱えること」が当然のように挙げられるようになっている.
これは,思考をきちんと印刷に耐えうる形で文書化する能力,
というごく当然の能力を実現するための道具としては
事実上 TeX しか存在しない現実からこうなっているのである.
総合的に見て,TeX に比肩しうる文書化ソフトウェアやシステムが現実には存在しないため,
TeX の習得は絶対に必要であると考えるべきである.
# TeX が出来ない人間というのは,理系分野においては
英語が使えない人間と同じぐらいの不利な扱いをうけることを覚悟しておくべきである.
しかし,論理的な文書を論理的に作るという目的のため,
TeX は習得がやや難しいものになってしまっており,
適切な指導をうけられないまま習得出来ずにいる学生も見受けられる.
そうした学生は,学生生活の間ずっと肩身の狭い思いをしてすごすことになりかねないので,
そうしたことのないよう,
この授業では,TeX が一通り使えるようになることを目的とし,その基本か
ら簡単な応用までを教える.
TeX とは,コンピュータサイエンス分野の科学者としてあまりにも有名な
Donald E. Knuth(高徳納)
が作成したコンピュータ文書印刷組版言語とそのソフトウェアを表す.
言語としては,HTML などと同じマークアップ言語に分類される.
ちなみに組版とは,文書をそのまま印刷できるレベルにまできちんと清書すること,と思えばよい.
TeX は,普通の文書中に TeXコマンド とよばれる特別な文字列を書込み,
TeX プログラムがこの文書を解釈して文書の表示を制御するという仕組みになっている.
TeX コマンドは文字の位置や大きさを微少に変化させるプリミティブなものから
文書構造を示す抽象的なものまで必要十分なものが用意されている.
有能なコンピュータ学者が作成した言語はさすがに瑕疵が少なく,
実際に TeX は大成功を収め,いまや多くの学会や出版社が
「TeX原稿のみ受け付け」という状態になり,また,
多くの印刷所が
「TeX 原稿ファイルならばそのまま印刷機にかけられる」というようになる
など,TeX は広く普及している.
しかし,TeX はその強力さと正確さとひきかえに,かなり使いにくい言語でもある.
なんでも望みのことはできる代わりに,ユーザがなんでもしないといけない,
ということでもあり,実際,素の TeX を完全に使いこなせる人はかなり少ない.
そこで,TeX のマクロ機能を用いてある程度の部分を定型化して使いやすくした LaTeX とよばれるものを
Lesile Lamport
が考案した.
この LaTeX は使いやすさと強力さを十分に兼ね備えている.
この特徴のおかげで LaTeX は一般ユーザにも非常に広く使われるようになり,
現在では TeX というとこの LaTeX のことを指すことが多い.
LaTeX はかつては ver2.09 というバージョンが多く使われていたが,
現在では LaTeX2ε とよばれるバージョンに進化している.
LaTeX は現在,version 3 を開発中である.
なお,TeX,LaTeX は ms-windows や mac などの家庭用簡易 OS のもとでも扱うことができる.
自宅に pc がある者は,下の参考 web の情報などをもとに自宅でも扱えるようにしておくとよいだろう.
LaTeX はコマンドを駆使して文書を書くという構造をしているため,
参考文献を所持していないとどうしようもない場面があるだろう.
しかし,LaTeX に関する書籍は数多く出版されており,どれを選んだら良いのか初心者としては迷うだろう.
そこで,LaTeX に関する名著として名高く,他と一線を画している二冊を選んで
教科書 B-1
教科書 B-2
として指定してある.
すくなくともどちらか一冊を入手しておくように.
また,web page で情報を集めるには,まずは次の web に目を通すのがよいだろう.
LaTeX を使うためのソフトの入手先などもこの web page から情報が得られる.
また,古くからフリーで出回っている TeX のための解説書として次のものが知られている. これを印刷するなどして参考文献とするのも良いだろう.
また,ネットワーク検索で,「TeX 文法」「TeX 使い方」「LaTeX 使い方」
などと検索すると非常に多くの web が LaTeX の解説を行なっていることが分かるだろう.
それらを参考にするのもよい.
理系学生としては特に LaTeX の習熟は必須であるので,適切な書籍を購入するか
適切な web の内容を保存するなどして,
いつでも参考資料を手元に置いておくようにするべきである.
以下に,TeX を理解する上でキーワードとなりそうな単語について説明する.
platex
というコマンドなど)に処理させて
(下に説明する) dvi ファイルを作ることを言う.
xdvi
というコマンドを用いる.
LaTeX の処理の全体の様子は基本的には上の図のようになり,
1 → 2 → 3 → 4 → 1 → (以下繰り返し)
として文書を作成,推敲して完成させることになる.
# ソフトや OS の構成によっていろいろ省略できたりはする.
詳しくは以下に解説しよう.
TeXソースファイル等,TeX 関係のファイル全般を置いておく場所,つまりディレクトリを作成する.
この操作は一回だけやっておけば良い.
こうしないと,TeX 以外のファイルと混ざってわけが分からなくなるだろうから,こうしておくのを勧める.
名称としては tex などがよいだろう.
具体的な操作は,ファイルマネージャをいじくり回すか,以下のようにすればよい.
mkdir tex
実習
上の指示に従い,TeX ファイルを置いておくディレクトリを用意する.
TeX という文書システムは,TeXソースファイル中に
文章と TeX コマンドを書き込むこと「のみ」によって組版を制御する.
いわゆるワープロと違い,みながらマウスであれこれ,ということはせず,
全てがこのTeXソースファイル中のコマンドで制御される.
よって,このソースファイルの作成,編集という作業がTeXシステムを扱う際の本質的な作業になる.
TeX ソースファイルを作るというのは,原稿を書くという行為に相当する.
ただ,その時,原稿の文章だけでなく,文書の構造や見た目を制御するコマンドも一緒に書き込んでしまう,と理解すればよい.
原稿を書くという行為であるので,もちろん使うツールはエディタであり,
エディタとキー入力を使いこなせないうちは苦痛であるかもしれないが,
慣れれば便利になるので,ちょっと頑張って入力するのがよい.
TeX ソースファイルの作成方法は,具体的には以下の通りにすればよい.
touch ファイル名
cp 元ファイル名 コピー先ファイル名
mv 今のファイル名 新しいファイル名
実習
上のように,TeX ファイルを作り,編集してみる.
TeX ソースファイルを処理する(コンパイルする)には,次のようにする.
cd tex
platex dummy.tex
実習
作成したTeX ファイルをコンパイルし,エラーがでなくなるまで修正する.
せっかくできた dvi ファイルなのであるから,
画面に表示 or 印刷するなどして確認を行おう.
具体的に,例えば dummy.dvi という dvi ファイルを画面に表示したい場合は,
ファイルマネージャで dummy.dvi ファイルをダブルクリックするか,
以下のようにすればよい.
cd tex
xdvi dummy.dvi &
ちなみに,xdvi
では印刷も行える.
実習
作成した dvi ファイルを表示する.
LaTeX 処理(コンパイル)がうまくいっても,
それは TeX ソースファイルが TeX の文法にきちんと従っているという意味であって,
自分の欲する表示が得られるという意味ではない.
そこで,次にやるべきことは,画面の出力や印刷結果を目視し,自分の要求と結果があっているかどうかを確認する作業である.
内容的に不満な個所がある場合は,LaTeX ソースファイルの中身を修正しないといけない.
そこで,そうした場合には,
LaTeX ソースファイルの作成,編集
へ戻る.
実習
今見ている TeX ファイルに「自分の名前を書き加える」という作業を行うことにしよう.
そのために,次の手順で作業を行え.
dvi ファイルは汎用性があり,OS やシステムに依存しないすばらしいファイル形式であるが,
TeX システムが無いと扱えないという欠点ももつ.
そこで,dvi ファイルを他の形式に変換しておく方法についても学んでおこう.
Postscript 画像ファイルはそれなりに汎用性があるうえ,
unix 系統の OS では印刷のための標準形式であり,このファイル形式にファイルを変換するのは悪くない考えである.
また,TeX 中に画像ファイル(通常は eps 形式のファイル)を含んでいる場合は,
dvi ファイルを Postscript ファイル形式に変換する必要があることが多いので,
やはりこの変換について学んでおくのがよい.
dvi ファイルから Postscript ファイルを作成する方法は以下の通りである.
具体的に,例えば dummy.dvi という dvi ファイル
から Postscript ファイルを作りたい場合は以下のようにすればよい.
cd tex
dvips dummy.dvi
実習
自分の作成した dvi ファイルから Postscript ファイルを作成せよ.
具体的に,例えば dummy.ps という Postscript ファイルを画面に表示したい場合は, ファイルマネージャでファイルをダブルクリックするか, 以下のようにすればよい.
cd tex
gv dummy.ps &
実習
作成した Postscript ファイルを表示せよ.
Postsctipt ファイルを印刷するには,
先の gv
の印刷ボタンから印刷する方法と,
次のようにして印刷を行なう方法がある.
具体的に,例えば dummy.ps という Postscript ファイルを印刷したい場合は以下のようにすればよい.
cd tex
lpr dummy.ps
実習
作成した Postscript ファイルを印刷する作業を行え. ただし,無駄に紙を使うのは好ましくないので,最後の段階でキャンセルして, 実際には印刷をしないようにすること.
PDF 画像ファイルも汎用性があり,印刷等に適した形式である.
dvi ファイルから PDF ファイルを作成する方法は以下の通りである.
具体的に,例えば dummy.dvi という dvi ファイル
から PDF ファイルを作りたい場合は以下のようにすればよい.
cd tex
dvipdfm dummy.dvi
実習
自分の作成した dvi ファイルから PDF ファイルを作成せよ.
具体的に,例えば dummy.pdf という PDF ファイルを画面に表示したい場合は, ファイルマネージャでファイルをダブルクリックするか, 以下のようにすればよい.
cd tex
acroread dummy.pdf &
実習
作成した PDF ファイルを表示せよ.
また,
作成した PDF ファイルを印刷する作業を行え.
ただし,無駄に紙を使うのは好ましくないので,最後の段階でキャンセルして,
実際には印刷をしないようにすること.
何ページにもなる Postscript ファイルから,特定のページだけを抜き出したい,
ということがある.
例えば,印刷のために偶数ページと奇数ページだけを抜き出したいとか,
ページごとに別ファイルにしたいとかなどの時である.
こうしたときは,
psselect
コマンドを使えば良い.
文法は,
psselect ページ指定 元ファイル 新ファイル
である.
具体的に,例えば dummy.ps という Postscript
ファイルから特定のページだけを抜き出したい場合は以下のようにすればよい.
cd tex
psselect 3-5 dummy.ps new.ps
psselect 10 dummy.ps new.ps
psselect -e dummy.ps new.ps
psselect -o dummy.ps new.ps
Postscript ファイルから他の画像ファイルへの変換(おまけ)
TeX で作成した結果を web に表示したい,などという場合は,Postscript
ファイルを png や jpeg といった通常の画像形式に変換すればよい.
# dvi ファイルを変換するツールはあることはあるが,数が少ないので,
Postscript ファイルを変換する方がよいだろう.
TeX の性質からいって,TeX で作成した Postscript ファイルは png
画像ファイルに変換するのがよい.
具体的に,例えば dummy.ps という Postscript
ファイルから png 画像ファイルを作成するには以下のようにすればよい.
cd tex
pstoimg -antialias -type png dummy.ps
実習
作成した Postscript ファイルから png ファイルを作成し,
実際に画面に表示して確認せよ(できた png ファイルをファイルマネージャでダブルクリックすればよい).
今回は,TeX ファイルの一連の処理を学習,把握するだけで精一杯だろうから,
LaTeX の言語としての文法的な説明は最小限にする.
まず,LaTeX 文書は全体として次のような構造をしていないといけない.
プリアンブル |
\documentclass
コマンドで始まり,
\begin{document}
コマンドの前までを言う.
文書の各種設定はここに書込むことが多い. 通常は \documentclass
コマンドは文書の一番最初にあり,
\documentclass{article}
などとなっている. |
---|---|
文書(本文) |
\begin{document}
コマンドで始まり,
\end{document}
コマンドの前までを言う.
文書は基本的に全てここに書かれる. |
無視領域 |
LaTeX は
\end{document}
コマンドより後は完全に無視する.
ここに何か書込むと「人間が混乱する」ことが多いので, この領域は作らない方がよい. |
また,次に示す文字は特殊文字としてそのままは扱えないので,注意が必要だ.
# $ % & ~ _ ^ \ { } |
左の10文字は,LaTeX コマンドの一部に用いられるため,そのまま記入しても表示できない(文法エラーになる).
これらの文字を LaTeX で表示したい場合は,各々の文字のまえに \ をつけて \# などとすればよい. ただし,\ 自身は例外で,\ を表示したければ違う工夫がいる. (\ については,日本語表記と英語表記の違いという問題もあるので簡単ではない). |
---|