第8週


TeX を使う1


今週と来週は簡単な TeX の使い方を学習しましょう。

*TeX って何?

TeX とか LaTeX の事が少しわかったでしょうか。 それでは簡単な LaTeX の例を見てみましょう。

*LaTeX の例

LaTeX ファイルの内容や LaTeX ファイルのコンパイルについて理解 できましたか。 いくつか別の例も見てみましょう。

*LaTeX の例2

LaTeX は便利だと感じてもらえましたか。

それでは今週の課題です。

+今週の課題

これで今週の授業は終わりです。 お疲れさまでした。


ホームに戻る
スケジュールに戻る

TeX って何?

TeXは一種の文章処理システムで Donald Knuth という人が開発しました。 この Knuth さんがあるとき自分の本を出版しようとして原稿を出版社に 出しました。 出版社からは出版する本の印刷見本が送られてきましたが Knuth さんは 本の構成(例えば字のバランス、行の開け方、段落の作り方、余白の開け方 など)が気に入りませんでしたので出版社の方に構成変更の希望を出しま した。 構成が変更されて返ってきた見本にもまだ気に入らない点がいくつかあった のでまた変更希望を出すというふうに出版社とのやりとりが何度かありま した。

そうこうするうちに Knuth さんは出版社とのやりとりに時間がかかるのと 変更の希望を正しく出版社に伝えるのが難しいことに困り自分自身で 本の構成を自由に変更してそれを印刷できる文章処理システム(つまり DTP, Desk Top Publishing ですね)を開発することにしました。 そうして出来上がったのが TeX です。

ところで TeX は本の構成を事細かに設定することができ Knuth さんを大いに 満足させたわけですが本作りの素人で(教官や皆さんがそうです)本の 構成を余り気にかけない人にとっては機能が多過ぎて使いづらい面があり ます。 そのような人にために TeX を基本として開発されたのが LaTeX です。 この文章処理システムの開発者は Leslie Lamport という人で Lamport の La を TeX の頭につけて LaTeX と命名しました。

現在では Desk Top Publishing のための文章処理システムが数多く開発されて いますが(MACとかPC用のソフトウェアがありますね)科学技術論文の 原稿の多くは LaTeX を使って書かれるようになり文章処理システムの 世界標準となっています。

今週の最初に戻る

LaTeX の例

とにかく LaTeX ファイルの例を見てみることにしましょう。

    % mkdir week08
    % cd week08
    % cp ~asakaguc/semia2.www/data/example1.tex ./
    % emacs example1.tex &

この LaTeX ファイルは「\documentstyle[12pt]{jarticle}」という行で 始まっています。 まず「\」マークはそれに続く文字列が LaTeX のコマンドであることを 示しています。 「\documentstyle」というのはこの文章のスタイルを設定するための コマンドです。 この例では「jarticle」というスタイルを選んでいます。 先頭の「j」は「japanese」の「j」で、日本語用のスタイルの意味です。 「article」というのは直訳すると「論説」というような意味です。 この他には「book」とか「report」というスタイルがあります。 「[12pt]」というのは使用する文字の大きさを決めています。 「12pt」というのは「12 ポイント」と読み 72 ポイントが1インチという 定義ですから文字の高さが約 4mm の文字になります。

次に続く3行に書いてあるコマンド「\author」「\date」「\title」は この文章の著者、作成日付、タイトルを定義しています。 LaTeX コマンドは多くの場合コマンド+{ }で囲まれたパラメータという 形をとることを覚えておきましょう。 次の行には「\begin{document}」というコマンドがあります。 またこのファイルの最後にはそれに対応して「\end{document}」という 行があります。 LaTeX のコマンドはこの様に「\begin」と「\end」が対応した形をとることが しばしばありますので覚えておきましょう。 この場合は文章の始まりと終りを示しています。 その次の行には「\maketitle」というコマンドがあります。 これは先に定義した著者、作成日付、タイトルの情報を使って自動的に タイトルを作るコマンドです。

その次には「\section」というコマンドがあります。 これは章を作るコマンドで、パラメータの値が章のタイトルになります。 このとき章の番号は自動的に付きますから指定する必要がありません。 従って章と章の間に後で別の章を挿入した場合にも章の番号を手で付け 変えるというような必要がなくなります。

各章の中身は普通のテキストファイルのように文章が入っているだけです。 少し違っている点は文章の改行がいい加減で奇麗になっていない点です。 このようにいい加減な改行をしても、LaTeX が適当に文章をくっつけてくれます ので最終的には奇麗な形になります。 今「LateX が文章をくっつける」といいましたがこれは LaTeX ファイルの 中で改行しても最終的には改行にならないことを意味します。 段落の切れ目などで改行したい場合には例文にもあるように空行を1行 入れると改行されます。

LaTeX を元に DVI ファイル(device independent file、装置に依存しない 形式のファイルという意味)を作成する作業を LaTeX ファイルのコンパイル と呼びます(FORTRAN プログラムなどのコンパイルのアナロジーでしょう)。 この DVI ファイルは更にそれぞれの出力装置(計算機の画面やプリンターなど) に出力するためのコマンドにより出力装置に合った形式のファイルに変換 されます。 LaTeX ファイルのコンパイルを行なうコマンドは latex です。 emacs から出てコンパイルをしてみましょう。

    % latex example1
    % ls

上の例では入力ファイル名を「example1」としましたが LaTeX や TeX 形式の ファイル名は普通は最後に「.tex」が付くというルールになっていますので latex コマンドはファイルを見つけることができます。 このコマンドを実行すると DVI ファイル(example1.dvi)とその他に example1.aux, example1.log というファイルができるはずです。 この DVI ファイル example1.dvi を計算機の画面上に表示するには xdvi という コマンドが使えます。

    % xdvi example1

この場合もやはり DVI ファイル名は最後に「.dvi」が付くというルールがあるので xdvi は DVI ファイルを見つけることができます。 xdvi コマンドを実行すると新しいウィンドウが開きコンパイルされた LaTeX ファイルが表示されるはずです。 元の LaTeX ファイルが簡単だったことを考えると結構いい出来栄えだと思いま せんか。

xdvi のウィンドウの右上には数字が示されています。 これはコンパイルされた LaTeX ファイルのページ数を示しています。 この数字をクリックするとそのページに飛ぶことができます。 またリターンおよび n キー(next の意味)により1ページ進んだり、b キー (back の意味)により1ページ戻ったりもできます。 ページを行ったり来たりして文章の出来栄えを見て下さい。

xdvi を終了するには q キー(quit の意味)あるいは CONTROL-d(何度もいう ようですがエンドオブファイルの意味でしたね)を打つかウィンドウ内の Quit ボタンをクリックして下さい。

今週の最初に戻る

LaTeX の例2

まずファイルをコピーしてきましょう。

    % cp ~asakaguc/semia2.www/data/example2.tex ./
    % diff example1.tex example2.tex

実は example2.tex というファイルは example1.tex に少しだけ手を加えた だけです。 diff コマンドの出力を見てもらうとわかるように「TeX」と「LaTeX」が 「\TeX」と「\LaTeX」になっただけです。 この変更で最終的な文章がどう変わるかを見てみましょう。

    % latex example2
    % xdvi example2

違いがわかりますか。 TeX という文字と LaTeX という文字が奇麗になっていますね。 この例のように LaTeX のコマンドで文章にアクセントを付けることができます。 しかしこの例は余り実用的ではないので(皆さんの文章中に TeX とか LaTeX の文字が現れるのは稀でしょうから)もう少し実用的な例を見ましょう。

    % cp ~asakaguc/semia2.www/data/example3.tex ./
    % cp ~asakaguc/semia2.www/data/example4.tex ./
    % latex example4
    % xdvi example4

上の例では LaTeX コマンドの効果が見え易いように英文にしてあります。 xdvi の出力を見てわかるように「Donald Knuth」が斜体になっています。 また「not satisfied ...」の所が太字になっており、最後の 「Then, Knuth ...」の所は字が大きくなっています。 これらの文章の修飾はそれぞれ、「\em」(emphasize)「\bf」 (bold face)「\large」というコマンドを使っています。 example4.tex の中を見てみるかあるいは example3.tex はこれらの修飾を 抜いたファイルですので diff を見てみるとコマンドの書き方がわかると 思います。

    % emacs example4.tex
        or 
    % diff example3.tex example4.tex

この様に LaTeX では必要に応じて文章の修飾を自由自在に行なうことが できますが修飾した文章が見易いかどうかは別問題です。 基本的には LaTeX が文章を奇麗にする努力をしてくれますので(例えば セクションのタイトルと本文の文字サイズを変えるなど)修飾は最低限で 良いと考えておくと良いでしょう。

今週の最初に戻る

今週の課題

今週は LaTeX ファイルのことについて学習しましたからオリジナルの LaTeX ファイルを以下の条件で作ってみましょう。

LaTeX のファイルを作ったら latex コマンドでコンパイルして xdvi で でき上がりを確認して下さい。 LaTeX のコマンドなどが間違っていると(タイプミスなど)latex は エラーメッセージを出します。 エラーが出た場合は latex のプロンプト(?)で「e」を打つと emacs が 立ち上がり問題の箇所に飛んでくれますので問題の箇所を直して もう一度 latex コマンドを実行して下さい。 また代わりに「x」を打つと何もしないで(DVI ファイルは作られません) latex を終了します。 このどちらもがうまく行かない場合は CONTROL-c で latex コマンドを 中止して下さい。

    % emacs mydoc.tex
    % latex mydoc
    % xdvi mydoc

ちゃんとした LaTeX ファイルができたらメイルで教官に送って下さい。

    % mail -s 'サブジェクト' asakaguc@sci.hiroshima-u.ac.jp u0872000 \ 
      < mydoc.tex

これで今週の課題は終了です。

今週の最初に戻る