[TeX Page Index]
[TeX入門のページに戻る]
[次節へ]
注意:このページやこれに続くページでリンクしているtexファイルは notepad (メモ帳)では読めないかもしれません。 (S-JIS)というリンクが用意されていれば、そちらを使って下さい。 必要ならば、 ベクターの文字コード変換のページから、 文字コード・改行コードを変換するツールをとってきて適切な変換を行って下さい。

plainTeXの第一歩

(6月以降?)城西大学清光会館301教室や1号館1階端末室における TeX の最も原始的な実行手順は次のようになります (もっと便利な方法もいろいろあります)。

  1. Windows なら DOS 窓(DOS プロンプト・コマンドプロンプト)、 また UNIX なら kterm や rxvt などを開いておく。
  2. エディタでテキストファイルを作成し、好きなことを中に書く。 ただし、ファイル名に漢字などをつかわないように!-- 以下ではファイル名は foo.tex と仮定する。
  3. ファイルをセーブしたら、ptex foo.texを実行する。 (エディタを終了させる必要はない)
  4. 運がよければ画面にいろいろメッセージが出力された後、 foo.dvi というファイルが作成される。 運が悪ければ、エラーメッセージとともに「*」だとか 「?」などと表示されるので、以下を試す:
    • とりあえず「Enterキー(リターンキー)」を押して様子をみる。 指示があればそれに従う。
    • エラーをすべて無視するように「r」を押す。
    • あきらめて中止するために「x」を押す。
  5. うまく dvi ファイルができたらそれを画面表示する(プレビュー)。
    • Windows ならdviout foo.dvi と入力する。
    • X(UNIX) ならxdvi foo.dvi & と入力する。
  6. 画面表示されたものを見ながら、 必要ならば再度エディタで tex ファイルを再編集し、新たにセーブする。
  7. 上の 3, 4 を再実行する。
  8. プレビューの画面を前面にだせば新しくなった dvi ファイルが表示される。
  9. 気がすむまで上の操作を繰り返す。
  10. 印刷する。--後日説明

それでは、実際のファイルを使って実験しながら、 TeX にかけるファイル(以下では tex ファイル、ソースファイル、入力ファイルなどと 表現するかもしれない)の書き方を説明します。 詳しくは上の解説書を御覧下さい。

まず、次のような内容のファイルtex001.tex (S-JIS)をptex にかけてみて下さい。

                        はじめての TeX

                                                     山田 太郎


  これから TeX を勉強します。どのようにかいたらよいのかわかりません。
こんなものでよいのでしょうか。今、一番最初の段落を書いています。あまり、
書くことがありません。
  こんどは2番目の段落です。もうやめたくなってきました。

  これで終わりにします。


This is pTeX, Version p2.1.5, based on TeX, Version 3.14159 (EUC) (Web2c 7.0)
(tex001.tex)
*
のようになるでしょう。 ここでとりあえずEnterキーを押してみて下さい。
(Please type a command or say `\end')
*
と表示がでますので、\endと入力します(最後に Enter)。
[1]
Output written on tex001.dvi (1 page, 808 bytes).
Transcript written on tex001.log.
無事 tex001.dviができたといっていますから、早速見てみましょう。 でした。 (暇な人はついでに tex001.logのほうも 見てみましょう。今おこなったことが記録されているのがわかります。 さらに暇な人へ:TeX の入力ファイルは必ず .tex という拡張子を 持っていなければならないという規則はありません。試しにこの tex001.log というファイルを ptex にかけてみましょう。 どうなりましたか?)
さてdvi ファイルのほうですが、どうも、期待したものと出力がずれています。 実は次のような規則があるのです。 それを頭において出力を眺めてみると、納得できますね? 新しい段落の作り方は上の規則からすぐわかります。 それでは、他のことはどうしたらよいでしょう:
  1. 題をセンタリングする
  2. 名前を右端に出力する
  3. 段落のはじめの字下げを全角一字分の幅にする
もちろん1と2に関しては、全角スペースを適当な個数並べることによって 文字出力の位置を調整するという奥の手(^^;はありますが、 試行錯誤が必要になります。 また、段落の字下げ幅は \parindent というコントロール・シークエンスで 20pt に指定してありますので、
\parindent=1zw
のように入力ファイル(texファイル)の中で それを 1zw (Zenkaku Width)にしてやることはひとつの 可能性ではありますが、 \parindent の値は他のところでも使われているので (例えば、\narrower という命令で文書幅を臨時に狭くするとき、 \item という命令で箇条書をするとき、…)、あまり勧められません。 それでは次のような改訂版 tex001a.tex(S-JIS)を ptex にかけてみましょう(説明の都合上行番号が付けられています):
01: \hsize=16cm %% A4用紙を想定
02: \hbox to \hsize{\hss はじめての \TeX \hss}
03: \hbox to \hsize{\hss 山田 太郎}
04: 
05: \noindent
06: これから \TeX を勉強します。どのようにかいたらよいのかわかりません。
07: こんなものでよいのでしょうか。今、一番最初の段落を書いています。あまり、
08: 書くことがありません。
09: 
10: \noindent \hskip 1zw
11: こんどは2番目の段落です。もうやめたくなってきました。
12: 
13: \noindent
14: これで終わりにします。
15: 
16: \end
出力は tex001a.dviのようになります。 行間隔がつまりすぎのような気もしますが、上の目標は達成されています (最初の段落だけ比較のため字下げされていません)。
この改訂版を説明してみます:
さて、上の2行目や3行目のようなものをいちいち書くのはとてもできないことです。 そこで TeX のマクロという機能を用いることにします。 次のようにして新しいコントロール・シークエンス \lineを 定義します:
\def\line{\hbox to \hsize}
この行をかけば、それ以降、 \hbox to \hsize のことを簡単に \line と表記できます。 例えば上の2行目は
\line{\hss はじめての \TeX\hss}
と簡略化して書くことができます。これでもまだ面倒だと言う人は、
\def\centerline#1{\line{\hss#1\hss}}
\centerlineを定義すれば、以後、
\centerline{はじめての \TeX}
で、文字列のセンタリングが行なえます。 同様にして \rightline\leftline も定義できます。 これらを次のように入力ファイルの先頭に書いておくとあとあと便利です。
\def\line{\hbox to \hsize}
\def\centerline#1{\line{\hss#1\hss}}
......
しかし、こんなものを毎回かくのは苦痛以外の何者でもありません。 それを簡略化する方法があります。 上の内容を例えば mymacro.texというファイルに書き込んでおきます。 そして、作成中の入力 tex ファイルで
\input mymacro
と記述すれば、それ以後 mymacro.tex の中で定義したものが 自由に使えるようになります。 このような定義をいれたファイルをマクロファイルと呼びます。 実は、すでに plain.tex というマクロファイルがすでにインストール されており、その中で今説明した \line, \centerline, \rightline, \lefline などのマクロが定義済で、しかも それは \input コマンドで読み込まずとも ptex プログラムの中に 取り込まれています。 今説明している ptex プログラムや英語版の tex プログラムは plainマクロを読み込んでいるので、plainTeXと呼ばれています。 このようなマクロ群(マクロパッケージと呼ばれる)は他にもいろいろあります。 もっとも有名なのはLaTeXパッケージでしょう。 結局上の例では次のようにかけばよいことになります: tex001b.tex(S-JIS) --- tex001b.dvi
\hsize=16cm %% A4用紙を想定
\centerline{はじめての \TeX}
\rightline{山田 太郎}

\noindent
これから \TeX を勉強します。どのようにかいたらよいのかわかりません。
こんなものでよいのでしょうか。今、一番最初の段落を書いています。あまり、
書くことがありません。

\noindent \hskip 1zw
こんどは2番目の段落です。もうやめたくなってきました。

\noindent
 これで終わりにします。

\end
さて、段落やセンタリングはうまくいきましたが、 垂直方向にものを重ねる箱(vbox)や間隔についても 少し勉強しておきましょう。 以下にリストしてみます。
\vbox
hbox を縦に並べてvboxを作る
例 \vbox{\hbox{アイウエオ}\hbox{柿}}: サンプルファイル(tex002.tex)(S-JIS)と dviファイル(tex002.dvi)
\vskip
(段落を終了して)指定した垂直方向のスキップを行なう
例:\vskip 1cm
\bigbreak, \medbreak, \smallbreak
さまざまな段落の間のスキップ
\vfil, \vfill, \vfilll
状況によって大きさの変わるスキップ
\eject
改ページコマンド
\bye
\vfill\eject\end とほぼ同じ。ファイルの終わりでは\endより こちらを使うべき。
垂直スキップを入れた版です: tex001c.tex(S-JIS) --tex001c.dvi
\hsize=16cm %% A4用紙を想定
\centerline{はじめての \TeX}
\bigbreak
\rightline{山田 太郎}
\vskip 1cm
\noindent
 これから \TeX を勉強します。どのようにかいたらよいのかわかりません。
こんなものでよいのでしょうか。今、一番最初の段落を書いています。あまり、
書くことがありません。

\medbreak
\noindent
 こんどは2番目の段落です。もうやめたくなってきました。

\medbreak
\noindent
 これで終わりにします。

\bye

[TeX Page Indexに戻る]
[TeX入門のページに戻る]
[次節へ]