latex を用いたテキスト処理latexを用いたテキスト処理 1 エディタ 1.1 emacs...

17
L A T E X 1 1.1 Emacs Emacs , ( , CTRL , CTL ) ( , ) . , CONTROL META , . C-< > , < > . , C-f , f . ESC < > , < > . < > , . Emacs , C-x C-c . , . C-v . ESC v . 1.2 . , (previous) (next) (forward) (backward) . , C-p, C-n, C-f, C-b , . 1.3 C-g , . , ,2 , , C-g . 1.4 , Emacs . , , Emacs , , , . 1

Upload: others

Post on 28-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

LATEXを用い たテ キスト 処理

1 エ デ ィタ

1.1 Emacs

Emacs の コマ ン ド を入力す る と き に は , 一般的に コン ト ロ ー ル・ キー (キー ・ ト ッ プに , CTRL あ る い は , CTL と

書い て あ る ) や メ タ ・ キー (普通, エ スケー プ・ キー を使う ) が 使わ れ ま す . そ こ で , CONTROL と か META と か 書

く 代わ り に , 次の よ う な 記 号を使う こ と に し ま す .

C-<文字> コン ト ロ ー ル・ キー を押 し たま ま , <文字>キー を押 し ま す . 例え ば , C-f は , コン ト ロ ー ル・ キー を押 し た

ま ま f の キー を押 す こ と を意味し ま す .

ESC <文字> エ スケー プ・ キー を押 し て か ら離し , そ れ か ら<文字>キー を押 し ま す .

<文字>は , 大文字で も 小文字で も コマ ン ド と し て は 同じ 意味に な り ま す . Emacsを終了さ せ たい 時は , C-x C-cを

タ イプし ま す .

フ ァ イルを画 面毎に 見て 行く に は , 次の コマ ン ド を使い ま す .

C-v 前に 一画 面分進む.

ESC v 後ろ に 一画 面分戻る .

1.2 基本的な カ ー ソ ルの 制御

画 面の 中で 特定の 場所に 移動す る ため の 方法に は い く つ か の や り 方が あ り ま す . 一つ の 方法は , 前 (previous)次

(next) 先 (forward)後 (backward) に 移動す る コマ ン ド を使う こ と で す . こ れ らの コマ ン ド は そ れ ぞ れ , C-p, C-n,

C-f, C-b に 割 り 当て られ て お り , 現在の 場所か ら新し い 場所に カ ー ソ ルを移動さ せ ま す .

1.3 中止コマ ン ド

C-g と い う コマ ン ド で , 入力を必要と す る よ う な コマ ン ド を中止す る こ と が で き ま す . 例え ば , 引数を入力し て い

る 途中や , 2 つ 以上の キー 入力を必要と す る コマ ン ド を入力し て い る 最中に , そ れ をや め たく な っ たら, C-gを使え ば

良い の で す .

1.4 エ ラ ー

時に は , Emacs で 許さ れ て い な い 操作をし て し ま う こ と が あ り ま す . 例え ば , コマ ン ド の 定義さ れ て い な い コン ト

ロ ー ル・ キー を入力し て し ま っ た時に は , Emacs は ベ ルを鳴らし , さ らに , 画 面の 一番下 に , 何が 悪 か っ たか を表示

し ま す .

1

Page 2: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

1.5 挿入と 削除

テ キスト をタ イプし たけ れ ば , 単に そ れ をタ イプす る だ け で 構い ま せ ん . 目に 見え る 文字 (’A’,’7’,’*’ な ど ) は Emacs

に よ っ て テ キスト で あ る と みな さ れ , そ の ま ま 挿入さ れ ま す . 行の 終わ り は 改 行文字で 表さ れ , こ れ を入力す る に は

<Return>をタ イプし ま す .

直前に 入力し た文字を削除す る に は , <Delete>を入力し ま す . <Delete>は , キー ボ ー ド で 「 Delete」 と 書い て あ る

キー を押 し て 入力し ま す . 一般に <Delete>は , 現在カ ー ソ ルの あ る 位置の 直前の 文字を削除し ま す .

1.6 フ ァ イル

テ キスト への 変更を永久的に す る ため に は , そ れ をフ ァ イルに 保存し な け れ ば な り ま せ ん . 保存さ れ な い と , ほど

こ し た変更は , Emacsを終了す る と 同時に 失わ れ て し ま い ま す . そ の ため に は , い ま 見て い る 編集中の フ ァ イルに 対

し て あ な たが 編集を行っ たも の を書き 込ま な け れ ば な り ま せ ん .

フ ァ イルをフ ァ イン ド (読み込む) し たり , セ ー ブ (書き 込む) し たり す る コマ ン ド は , こ れ ま で の も の と は 違い , 2

つ の 文字か らな っ て い ま す . C-x に 続い て 入力す る 文字が , フ ァ イルに 対し て 行う 操作を表し ま す . も う 一つ こ れ ま

で の も の と 違う 点は , フ ァ イン ド の 時に フ ァ イル名を Emacs に 問わ れ る こ と で す . こ の よ う な コマ ン ド を, 端末か ら

引数を読み込ん で く る コマ ン ド と 言い ま す .

C-x C-f フ ァ イルを見つ け る (フ ァ イン ド す る ).

今度は フ ァ イルをセ ー ブ し て みま し ょ う . 今ま で の 変更を保存す る ため に は 次の よ う な コマ ン ド を使い ま す .

C-x C-s フ ァ イルをセ ー ブ す る .

Emacs の 内容は フ ァ イルに 書き 出さ れ ま す . セ ー ブ す る 一番最初は , オリ ジ ナ ルの フ ァ イルは 新し い 名前をつ け ら

れ て 残さ れ て い る の で 内容は 失わ れ ま せ ん . そ の 新し い 名前は オリ ジ ナ ルの フ ァ イルの 名前に ’˜’をつ け たも の で す .

1.7 お わ り に

忘れ ず に 終了す る に は , C-x C-c と し ま す .

な お , Emacs の コマ ン ド は 付録に ま と め て あ り ま す .

2 LATEX

2.1 入力フ ァ イル

LATEX で 文書を作成す る に は , 原稿を入力し たフ ァ イルが 必要で す . こ の フ ァ イルは LATEX シ ステ ム の 入力用フ ァ

イルと な る の で , 入力フ ァ イルと 呼び ま す . 入力フ ァ イルは テ キスト エ デ ィタ (こ の 実験で は Emacs)を使っ て 作成

し ま す .

\documentclassjarticle

\begindocument

Hello!!

私は , \LaTeX に は 慣れ て い ま す が ,

\LaTeXe は 初心者で す .

\enddocument

Hello!! 私は , LATEX に は 慣れ て い

ま す が , LATEX2εは 初心者で す .

2

Page 3: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

上の 図は , 簡単な 入力フ ァ イルの 例で す . “\” で 始ま っ て い る 文字列は , LATEX の コマ ン ド で す . ど の よ う に 印

刷す る か は こ れ らの LATEX の コマ ン ド で 指定し ま す . 例え ば “\LaTeX” は “LATEX” と い う ロ ゴ を出力す る コマ ン ド

で す . コマ ン ド の 後は 他の 文字列と 区別す る ため に スペ ー スを挿入し ま す . \documentclass, \begin, \end の 各 コ

マ ン ド の 後に は , と で 囲ま れ た文字列が あ り ま す . こ れ をコマ ン ド の 引数と い い ま す . 引数は 通常, と あ る い は

[と ] で 囲ん で 指定し ま す . コマ ン ド と 引数の 間に は 空白が な い よ う に し て く だ さ い .

LATEX で は , \begin… と い う コマ ン ド が あ れ ば 必ず \end… と い う コマ ン ド が で て き ま す . こ の 2 つ

の コマ ン ド は 対に な っ て お り , 引数に 指定す る も の を環境名と い い ま す . 例え ば , \begindocumentと

\enddocumentの 間を document環境と い い ま す .

文章を入力す る と き に は 改 行す る 場所や 英字↔漢字の 切り 替え を意識す る 必要は あ り ま せ ん . 英数字は 半角 文字

で 入力し たほう が き れ い に 出力で き ま す か ら, 半角 文字を使う よ う に し ま し ょ う .

2.2 ド キュメ ン ト ( 文書) の 入力

\begindocumentと \enddocumentの 間に ド キュメ ン ト の 内容を入力し て い き ま す . ド キュメ ン ト の 内容と は

ド キュメ ン ト の 文章そ の も の と 出力フ ォ ー マ ッ ト や フ ォ ン ト な ど を指定す る LATEX の コマ ン ド で す . 1行の 文字数な

ど は 意識す る 必要は な く , ど こ で 改 行し て も か ま い ま せ ん . LATEX は 右端と 左端が き れ い に 揃う よ う に 出力し て く れ

ま す .

段落が 終わ っ て 改 行し て 出力し たい と き に は , 空行を 1 つ 以上開 け て 下 さ い . 段落が 終了し たと き 以外 で ど う し て

も 改 行し たい と き に は , \\と い う コマ ン ド を使っ て 改 行で き ま す .

スペ ー ス文字や タ ブ , 改 行文字な ど の 空白文字は 続け て 2 つ 以上入力し て も 1 つ の スペ ー スと し て 扱い ま す . ま た

行末お よ び 行頭の スペ ー ス文字や タ ブ は 処理さ れ ま せ ん .

2.2.1 タ イト ルの 表示

1 つ の ま と ま っ た文章に は , タ イト ルを付け る の が 一般的で す . LATEX に は , 本文と 別に タ イト ルを表示す る

コマ ン ド \maketitle が あ り ま す . \maketitle で タ イト ルを表示す る ため に は , \documentclass ... と

\begindocumentの 間に , \titleコマ ン ド と \authorコマ ン ド を使っ て , タ イト ルと 名前の 情報を記 述し ま す .

\maketitle 自身は , \begindocumentの 後に 記 述し ま す .

\documentclassjarticle

\titleう れ し は ず か し 初め て の \LaTeX

\author理科 大太郎\\ 学籍番号:012345

\begindocument

\maketitle

Hello!!

私は , \LaTeX に は 慣れ て い ま す が ,

\LaTeXe は 初心者で す .

\enddocument

う れ し は ず か し 初め て の LATEX

理科 大太郎

学籍番号: 012345

平成 24年 6月 28日

Hello!! 私は , LATEX に は 慣れ て い ま す が ,

LATEX2εは 初心者で す .

2.2.2 セ クシ ョ ン 付け

通常, 文章を作成す る と き に は 章・ 節な ど を使っ て 階 層的に 内容を記 述し て い き ま す . こ の プリ ン ト の 中で も 1.1,

2.3, . . . の よ う な 節を使っ て 説明し て い ま す . こ の よ う な 章や 節を総称し て “セ クシ ョ ン 単位” と 呼ぶ こ と に し ま す .

3

Page 4: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

各 セ クシ ョ ン 単位の 始ま り に は , そ の 章や 節の 見出し を出力す る セ クシ ョ ン 付け コマ ン ド が あ り ま す . LATEX で は

章や 節の 番号が い ま い く つ で あ る と か い う こ と は セ クシ ョ ン 付け コマ ン ド が 自動的に 処理し ま す .

セ クシ ョ ン 付け コマ ン ド と し て は , 次の よ う な も の が あ り ま す .

• \subsection

• \subsubsection

ただ し , そ れ ぞ れ の セ クシ ョ ン 付け コマ ン ド は , 1 つ 高い レベ ルの セ クシ ョ ン 単位に 含ま れ て い な け れ ば な り ま せ ん .

2.2.3 箇 条書

文章を箇 条書に し て 出力す る に は itemize環境を使用し ま す . itemize環境の な か で 各 項目の 頭に \itemコマ ン

ド を指定し て 下 さ い . LATEX は こ の \itemコマ ン ド で 始ま る 文章の 先頭に “•”をつ け て 出力し ま す . itemize環境の

代わ り に enumerate環境を使う と , 番号付き の 箇 条書を出力し ま す .

プロ グラ ム 言語に は , 次の よ う な も

の が あ り ま す .

\beginitemize

\item FORTRAN

\item C

\item PASCAL

\enditemize

プロ グラ ム 言語に は , 次の よ う な も

の が あ り ま す .

• FORTRAN

• C

• PASCAL

2.3 表の 作成

LATEX で は , 表は tabular環境を使っ て 出力し ま す . tabular環境で は , 表の 幅や 各 項目の 幅を自動的に 計算し て

く れ る の で , 罫線を含ん だ 複雑な 表を容易に 作成す る こ と が で き ま す . こ こ で は , tabular環境の 基本的な 指定方法

に つ い て , 次の 表を例に 説明し て い き ま す .

バ ナ ナ ケー キ ピ ー ス 350

ホ ー ル 2800

プリ ン 1個 250

ト リ ュフ 100

アイス カ ッ プ 200

2.3.1 アラ イメ ン ト (整列位置)

ま ず 罫線の な い 状態の 表を作っ て みま し ょ う . tabular環境に は 引数が 1 つ あ り , 各 項目の アラ イメ ン ト を指定し

ま す . アラ イメ ン ト は c(セ ン タ リ ン グ), l(左寄せ ), r(右寄せ ) の 3 つ が あ り ま す . 各 項目は &で 区切り , 1行の 終わ り

に は \\を指定し ま す . (ただ し , 最後の 行に は \\は 必要な い . ) 空白に し て お き たい 項目に は , 何も 書か ず に 次の 項目

の 前に &を指定し ま す .

4

Page 5: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

\begintabularlcr

バ ナ ナ ケー キ & ピ ー ス & 350 \\

& ホ ー ル & 2800 \\

プリ ン & 1個 & 250 \\

ト リ ュフ & & 100 \\

アイス & カ ッ プ & 200

\endtabular

バ ナ ナ ケー キ ピ ー ス 350

ホ ー ル 2800

プリ ン 1個 250

ト リ ュフ 100

アイス カ ッ プ 200

2.3.2 縦線

縦線の 出力は 引数の 中で アラ イメ ン ト と い っ し ょ に 指定し ま す . こ の 指定は , 縦線を引き たい コラ ム と コラ ム の

間の アラ イメ ン ト の 途中に | を記 述す る こ と に よ っ て 行い ま す . 続け て 2 つ 指定す る と 重線に な り ま す .

\begintabular||l|cr||

バ ナ ナ ケー キ & ピ ー ス & 350 \\

& ホ ー ル & 2800 \\

プリ ン & 1個 & 250 \\

ト リ ュフ & & 100 \\

アイス & カ ッ プ & 200

\endtabular

バ ナ ナ ケー キ ピ ー ス 350

ホ ー ル 2800

プリ ン 1個 250

ト リ ュフ 100

アイス カ ッ プ 200

2.3.3 横線

表の 横線を引く に は \\の 直後や 表の 1行め の 内容を入力す る 前に \hline と い う コマ ン ド を指定し ま す . 続け て 2

つ 指定す る と 重線に な り ま す .

\begintabular||l|cr|| \hline

バ ナ ナ ケー キ & ピ ー ス & 350 \\

& ホ ー ル & 2800 \\ \hline

プリ ン & 1個 & 250 \\

ト リ ュフ & & 100 \\ \hline

アイス & カ ッ プ & 200 \\ \hline

\endtabular

バ ナ ナ ケー キ ピ ー ス 350

ホ ー ル 2800

プリ ン 1個 250

ト リ ュフ 100

アイス カ ッ プ 200

\hline は 表の 端か ら端ま で 横線を出力し ま す が , \cline と い う コマ ン ド を使用す れ ば 一部に 横線を引く こ と が で

き ま す . \cline に は 引数に 左か ら何番目か ら何番目の 項目に 線を引く か を指定し ま す . \clinei-jは i番目か ら

j番目ま で の コラ ム に 線を引く と い う 意味に な り ま す .

\begintabular||l|cr|| \hline

バ ナ ナ ケー キ & ピ ー ス & 350 \\ \cline2-3

& ホ ー ル & 2800 \\ \hline

プリ ン & 1個 & 250 \\ \cline1-1 \cline3-3

ト リ ュフ & & 100 \\ \hline

アイス & カ ッ プ & 200 \\ \hline

\endtabular

バ ナ ナ ケー キ ピ ー ス 350

ホ ー ル 2800

プリ ン 1個 250

ト リ ュフ 100

アイス カ ッ プ 200

5

Page 6: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

2.3.4 表題をつ け る

table環境を使用す る と 表題と 表番号が 生成で き ま す . こ れ は , table環境の 中に \captionコマ ン ド を挿入す る

こ と に よ っ て 行な い ま す . 次に そ の 例を示し ま す .

\begintable

\captionメ ニ ュー 表

\begincenter

\begintabular||l|cr|| \hline

バ ナ ナ ケー キ & ピ ー ス & 350 \\ \cline2-3

& ホ ー ル & 2800 \\ \hline

プリ ン & 1個 & 250 \\ \cline1-1 \cline3-3

ト リ ュフ & & 100 \\ \hline

アイス & カ ッ プ & 200 \\ \hline

\endtabular

\endcenter

\endtable

表 1: メ ニ ュー 表

バ ナ ナ ケー キ ピ ー ス 350

ホ ー ル 2800

プリ ン 1個 250

ト リ ュフ 100

アイス カ ッ プ 200

表題は セ ン タ ー リ ン グで 出力さ れ ま す が , 表は 左寄せ で 出力さ れ ま す . 上の 例の よ う に 表を center環境の 中に 入

れ る と よ い で し ょ う .

2.4 数式と 記 号

LATEX の 特徴の 一つ に , 数式と 記 号が あ る .

n∑

i=0

xi =

∫ 1

0

f

こ の 様な 数式は , 普通の ワー プロ で は 出力で き な い が , LATEX で は 簡単に 出力す る こ と が で き る . 数式や 記 号は , 数

式モ ー ド と い う 数式用の 環境中で 出力す る .

2.4.1 数式モ ー ド

数式モ ー ド に は , math環境と displaymath環境の 2 つ が あ る .

math 環境

\( と \) で 囲ま れ た間を, math環境と い う . ($と $で 囲ん で も よ い . ) こ の 環境で は , 数式は 文中

に 出力さ れ る .

6

Page 7: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

displaymath 環境

\[ と \] で 囲ま れ た間を, displaymath環境と い う . 長く て 本文中に 入らな い も の や , 重要な の で

本文か ら独立し て 示し たい と き に 使用す る .

数式モ ー ド で は , 英字は 数式用の italic体に な る . スペ ー スをい く つ 入れ て も 一つ も 出力さ れ な い . ま た, シ ン グル

クオー ト ’ は プラ イム 記 号 ′ と し て 出力さ れ る .

2.4.2 基本的な 数式

—肩文字と 添字 (上付き · 下 付き 文字)—

肩文字は ^, 添字は _コマ ン ド で 指定す る . こ れ らを組み合わ せ て 使用す る こ と も で き る .

$a_2 > x^2n/y^2n$ a2 > x2n/y2n

$x^y_1, x^y_2, x^y^3$ xy1 , x

y2 , xy3

—分数—

文章中の 短い 分数に は スラ ッ シ ュ/を使用し て 出力す れ ば よ い .

$n/2$を掛 け る と , $(m+n)/2$と な

る .

n/2を掛 け る と , (m+ n)/2 と な る .

通常の 分数は , \fracコマ ン ド を使っ て 出力す る . 引数に は , 分子と 分母を指定す る .

\[\frac分子分母\] は , 次の よ う に な る .

分子

分母

\[

x=\fracx+y1+\fracyz+1

\]x =

x+ y

1 + y

z+1

—ルー ト —

平方根は \sqrt や \rootコマ ン ド を使っ て 出力す る .

$ \sqrtx+y $√x+ y

平方根以外 の べ き 乗根は , \root と \of で 指定す る .

\root 乗数 \of ルー ト の 中味

$n$乗根は $\root n \of 2$と な る . n乗根はn√

2 と な る .

2.4.3 数式記 号

数式モ ー ド で 出力で き る 記 号や ギリ シ ャ 文字な ど は 付録の 表を参照す る こ と .

7

Page 8: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

2.4.4 関数記 号を使っ た数式

数学で は , 関数を記 号で 表す も の が たく さ ん あ る . 例え ば , 和を表す 数学記 号∑

を出力す る に は , \sum と い う コ

マ ン ド を使用す る .

\[ \sum_x=0^nx \]n

x=0

x

そ の 他の 関数に つ い て は 付録を参照し な さ い .

2.4.5 文字で 表す 関数

対数関数の log の よ う な 関数は , 関数を文字で 表記 す る . し か し , 数式モ ー ド の な か で $log x$ と す る と logx と

い う 出力に な っ て し ま う の で , 変数な の か 関数な の か の 区別が つ か な く な る . こ の よ う な 場合は , 関数を表す 部分だ

け Roman体で 出力す る 習慣と な っ て い る . LATEX で は , \log と い う コマ ン ド を使用し , 次の よ う に 指定す る .

$ \log xy = \log x + \log y $ logxy = logx+ log y

こ の 他に も い ろ い ろ な コマ ン ド が あ る .

\arccos arccos \cos cos \exp exp \limsup lim sup

\min min \sinh sinh \cosh cosh \lg lg

\ln ln \arcsin arcsin \arctan arctan \cot cot

\lim lim \log log \sec sec \tan tan

2.4.6 配列

行列な ど の 配列は array環境で 出力す る . こ の array環境は , 次の よ う に 指定す る .

\[ \beginarray整列位置

配列の 項目

\endarray \]

整列位置は tabular環境の 時と 同様に , c(セ ン タ リ ン グ), l(左寄せ ), r(右寄せ ) で 指定す る . 同じ 行の 項目を&で

区切っ て 指定す る . 行の 終わ り に は , 改 行コマ ン ド \\をつ け る . 最後の 行に は \\は 必要な い .

\[ \beginarrayclr

a+b+c & UV & 27 \\

a+b & U+V & 134 \\

a & 3U+V & 1234

\endarray \]

a+ b+ c UV 27

a+ b U + V 134

a 3U + V 1234

こ の 行列に 括 弧をつ け る に は , array環境の 前後に \left(左括 弧), \right(右括 弧)コマ ン ド を使う . \left, \right

コマ ン ド で ( と ) を指定す る と 次の よ う に な る .

\[ \left( \beginarrayclr

a+b+c & UV & 27 \\

a+b & U+V & 134 \\

a & 3U+V & 1234

\endarray \right) \]

a+ b+ c UV 27

a+ b U + V 134

a 3U + V 1234

8

Page 9: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

こ の 他に も い ろ い ろ な 括 弧を出力す る こ と が で き る . 主な も の を挙げ る と , 次の よ う に な る .

( → ( ) → )

[ → [ ] → ]

\ → \ →

\rightコマ ン ド や \leftコマ ン ド の 後に . (ピ リ オド ) を指定す る と , 括 弧を省略す る こ と が で き る .

\[ x = \left\

\beginarrayll

y & \mboxif $y>0$ \\

z+y & \mboxotherwise

\endarray

\right. \]

x =

y if y > 0

z + y otherwise

数式中で 文字を出力し たい と き に は , そ の 文字列を\mboxで 囲ま な く て は な らな い .

3 も っ と LATEX

3.1 ラ ベ ル

\sectionを使う と , 自動的に 節の 番号が 割 り 振られ ま す . そ こ で , 「 3.1節で は ラ ベ ルに つ い て 説明し て い る 」 な

ど の よ う に こ の 番号を参照す る 文章を作成す る 場合, \label コマ ン ド と \ref コマ ン ド を用い る と 便利で す .

例え ば \sectionラ ベ ル の 後に , \labelhogeと 記 述し て お く と , hoge は こ の 節の 節番号を参照す る ラ ベ ルに

な り ま す . そ し て , \refhoge は こ の 節の 番号に 置き 換わ り ま す .

\label コマ ン ド に よ っ て ラ ベ ルを付け , \ref コマ ン ド で こ れ を参照す る と い う 仕組みは , 節番号だ け で な く ,

equation環境の 数式番号や , enumerate環境の 番号な ど に も 使う こ と が で き ま す .

こ こ で , platex を使う 回 数に は 注意が 必要で す . LATEX は ラ ベ ルと , そ れ が 参照さ れ たと き 置き 換わ る も の と の

対応を別の フ ァ イルに 出力す る . こ こ で 出力さ れ た対応が 有効に な る の は 次に platex を使っ たと き で す か ら, ラ ベ

ルが 付け 変わ っ たな ど の 場合に は , 2度 platex を使う 必要が あ り ま す .

3.2 参考文献に つ い て

参考文献を付け る 方法は い く つ か あ り ま す が , こ こ で は thebibliography環境を例に 挙げ て 説明し ま す . こ の 環

境は enumerate環境に 似て , 項目に 番号を付け て 並べ る . 各 項目の 先頭に は \bibitem...を付け ま す . こ の ...

は , こ の 文献を参照す る ため の ラ ベ ルで す . 参考文献の 番号を参照す る 場合に は \cite...コマ ン ド を用い ま す .

3.3 Postscript フ ァ イルの 貼り 付け

こ こ で は LATEX の 文書に Postscript の 画 像フ ァ イルを貼り 付け る ため に , graphicx と い う パ ッ ケー ジ を用い る

方法を紹介 し ま す .

準備と し て , preamble(\documentclassコマ ン ド と \begindocumentの 間) に , \usepackagegraphicxを入

れ , graphicx パ ッ ケー ジ を用い る こ と を宣言し ま す .

文書中の 図の 張込みは , \includegraphicsコマ ン ド に よ っ て 行い ま す . こ の コマ ン ド の 引数は Postscript 形式

等の 画 像フ ァ イルの フ ァ イル名で す .

9

Page 10: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

\documentclassjarticle

\usepackagegraphicx

\begindocument...

\includegraphics[scale=1.2]Ridai.ps...

\enddocument

3.4 図に 表題をつ け る

表を挿入す る 際に table環境を用い たよ う に , 図を挿入す る 場合に も , figure環境を用い る こ と が で き ま す . こ れ

らの 環境を使う と , 文章を避け て , 例え ば 次の ペ ー ジ の 先頭な ど に 図を入れ る こ と が で き ま す . ま た, こ れ らの 環境で

\captionコマ ン ド を使え ば , 見出し をつ け る こ と が で き , 図表の 番号を自動的に 付け て く れ ま す . さ らに , \caption

コマ ン ド に 続い て \label コマ ン ド を使っ て お け ば , こ の 図表番号を\refコマ ン ド で 参照す る こ と が で き ま す .

図 1: Postscript フ ァ イルを使っ た例

図 1 は 以下 の よ う に 記 述さ れ ま す .

\beginfigure[h]\begincenter

\includegraphics[scale=1.2]Ridai.ps\\

\captionPostscript フ ァ イルを使っ た例

\labelpsEx

\endcenter\endfigure

図\refpsExは 以下 の よ う に 記 述さ れ て い る .

3.5 コメ ン ト

TEX は 入力フ ァ イル (.tex フ ァ イル)中に % を見つ け る と , そ こ か ら行末ま で (お よ び 次の 行の 始め の 空白)を無

視し ま す . こ れ を用い て .tex フ ァ イルに コメ ン ト を付け て お く こ と が で き ま す . 逆に % を印字し たい と き に は \%

と 記 述す る 必要が あ り ま す .

10

Page 11: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

3.6 Error と Warning

LATEX は TEX と い う シ ステ ム の 上に 作られ たシ ステ ム で , Warning や Error に は , そ れ ぞ れ LATEX の も の と TEX

の も の が あ り ま す .

TEX は 1 ペ ー ジ ご と に , 組版し て (文書を整形し て ).dvi フ ァ イルに 出力し ま す . こ こ で , 1 ペ ー ジ 出力す る ご と

に , そ の ペ ー ジ を [] で 囲ん で 画 面に 表示し ま す .

例え ば [2] と 表示さ れ て か ら [3] と 表示す る ま で の 間に 現れ たメ ッ セ ー ジ は , 2 ペ ー ジ 目を出力し た後, 3 ペ ー ジ

目を出力す る ま で の 間に 発生し たメ ッ セ ー ジ と い う こ と で す . こ れ は , 3 ペ ー ジ 目を組版中に 発生し たも の と 考え れ

ば よ い わ け で す .

Error や Warning の メ ッ セ ー ジ に 続い て , 例え ば , 画 面に は (行頭か ら) l.24 な ど と 表示さ れ る こ と が あ り ま す .

こ れ は , .tex フ ァ イルの 24行目を処理中に , 該 当す る Error や Warning が 発生し たと い う 意味で す . こ の と き , 原

因が 本当に 24行目に あ る と は 限り ま せ ん が , 直す べ き 箇 所を知る 手が か り に な る で し ょ う .

3.7 \verbコマ ン ド

テ キスト をそ の ま ま 出力す る 方法に は , verbatim環境が あ り ま す . こ の 環境は 行を変え て 出力す る も の で す が , 一

方, 文中で 「 そ の ま ま 出力さ れ る テ キスト 」 を印字し たい 場合に は , \verbコマ ン ド を用い ま す . \verb の 次の 文字が

も う 一度登場す る ま で の 間を, そ の ま ま 出力し ま す . こ こ で , \verbコマ ン ド の 引数を囲む文字は , スペ ー ス・ 英字・

* 以外 の 文字で 引数中で 使わ れ な い も の で あ れ ば , 何で も か ま い ま せ ん . 出力さ れ る 文字の フ ォ ン ト は , verbatim環

境と 同じ typewriter-face で す . 例え ば 「 」 と い う 出力は , \verb|| と い う 記 述で 得られ ま す .

3.8 細か い 留意点

誤字脱字お よ び 誤変換が 無い よ う に 気をつ け たり , 文書の 構成を整え たり す る の は 当然と し て , 文書の 体裁を整え

る 際の 留意点をい く つ か 挙げ て お き ま す .

英数字な ど , 半角 の 文字で 出せ る も の は , 全角 を使わ な い よ う に し ま す . 単語で あ れ ば , 全角 で は ハ イフ ネ ー シ ョ

ン の 機能が 使え な い な ど の 問題が あ り ま す . ま た, 英字は 文字ご と に 幅が 異な る よ う に デ ザ イン さ れ て い ま す が , 全

角 文字は 漢字と 同じ 扱い で , す べ て 同じ 幅で デ ザ イン さ れ て い ま す . 例え ば LATEX の 開 発者の 名前を半角 で 書く と

“Leslie Lamport” で す が , 全角 で は “ Le s l i e La m p o r t ” と な っ て , 間延び し た印字に な る の が 分か り

ま す .

1 つ の 文書の 中で は 用い る 語を統一す べ き で す . 例え ば , 「 コン ピ ュー タ ー 」 と 「 コン ピ ュー タ 」 を混在さ せ て は

い け ま せ ん (語尾を伸ば さ な い の が 通例と な っ て い る の で , 「 コン ピ ュー タ 」 をお す す め す る ). ま た, 「 よ ぶ 」 と 「 呼

ぶ 」 , 「 たと え ば 」 と 「 例え ば 」 , 「 1 つ 」 と 「 一つ 」 な ど も 統一し て 使わ な け れ ば な り ま せ ん .

ま た, 読点が 「 , 」 か 「 ,」 か 「 、」 か , と い っ たこ と も 統一す べ き で す . ただ 数式の 中に 「 、」 が 入る の は 格 好が 悪

い の で , 数式同士を区切る 場合に は 「 , 」 を使っ て も か ま い ま せ ん .

文字の 形が 違え ば , 違う 記 号を表す こ と に 気をつ け て 欲し い . 例え ば , n, n, n, n は す べ て 違う 記 号で す . 語の 統一

と 同じ よ う に , 同じ も の を表す と き に こ れ らを混在さ せ て は い け ま せ ん . よ く あ る 間違い は , 数式の 中で n を使い ,

文中で こ の n を参照す る と き に n を使っ て し ま う と い っ たも の で す . 数式の 中で は math-italic 体と い う フ ォ ン ト

が 使わ れ る の で , 文中で こ の フ ォ ン ト の 文字を使う ため に は $n$ な ど と す る 必要が あ り ま す . ま た, プロ グラ ム を添

付す る 際は , verbatim環境を使っ たり , a2ps で Postscript に 変換し て 印刷し たも の を添付し たり し ま す が , こ う し

た方法で は typewriter-face の フ ォ ン ト が 用い られ ま す . し たが っ て , 文中で プロ グラ ム 中の 関数名や 変数名を参照

す る と き に は , や は り typewriter-face を用い る べ き で す . プロ グラ ム 中に \ や が 現れ る こ と も あ る の で , \tt よ

り は \verb コマ ン ド を用い る と よ い で し ょ う .

11

Page 12: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

図表に は caption を入れ て 下 さ い . こ の と き , 図の caption は 下 に , 表の caption は 上に 入れ ま す . ま た, そ れ ぞ れ

の 数値の 単位は 何で あ る か , グラ フ の 場合は 各 軸が 何を表す か と い っ たこ と を明示す る 必要が あ り ま す .

12

Page 13: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

付録

A コマ ン ド リ フ ァ レン ス

エ デ ィタ

C-x C-c Emacs の 終了 ESC < フ ァ イルの 先頭に 移動

C-g コマ ン ド 実行の 中止 ESC > フ ァ イルの 末尾に 移動

C-x C-f フ ァ イルの 読み込み C-v 前に 一画 面分進む

C-x C-s フ ァ イルの 書き 込み ESC v 後ろ に 一画 面分戻る

C-p 1行上に 移動 <Ret> 改 行

C-n 1行下 に 移動 <Del> カ ー ソ ルの 前の 文字を削除

C-f 1文字先に 移動 C-d カ ー ソ ル位置の 文字を削除

C-b 1文字後に 移動 C-k 行末ま で を削除

C-a 行の 先頭に 移動 C-l 画 面の 書き 直し

C-e 行の 終り に 移動 C- 変更の 取消し

か な 漢字変換

C-\ 通常入力/ロ ー マ 字入力の 切替え

<Spc>(C-w) か な 漢字変換 C-b 文節を右に 移動

<Ret>(C-l) 確定 C-f 文節を左に 移動

C-n 次候補 C-i 文節を縮め る

C-p 前候補 C-o 文節を伸ば す

プレビ ュー ア

q 終了

n 次ペ ー ジ

p 前ペ ー ジ

B 数式モ ー ド の 記 号( 一部, latexsym パ ッ ケー ジ が 必要)

関数記 号∑

\sum⋂

\bigcap⊙

\bigodot∏

\prod⋃

\bigcup⊗

\bigotimes∐

\coprod⊔

\bigsqcup⊕

\bigoplus∫

\int∨

\bigvee⊎

\biguplus∮

\oint∧

\bigwedge

13

Page 14: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

ギリ シ ャ 大文字

Γ \Gamma Λ \Lambda Σ \Sigma Ψ \Psi

∆ \Delta Ξ \Xi Υ \Upsilon Ω \Omega

Θ \Theta Π \Pi Φ \Phi

ギリ シ ャ 小文字

α \alpha θ \theta o o τ \tau

β \beta ϑ \vartheta π \pi υ \upsilon

γ \gamma ι \iota $ \varpi φ \phi

δ \delta κ \kappa ρ \rho ϕ \varphi

ε \epsilon λ \lambda % \varrho χ \chi

ε \varepsilon µ \mu σ \sigma ψ \psi

ζ \zeta ν \nu ς \varsigma ω \omega

η \eta ξ \xi

演 算記 号

± \pm ∩ \cap \diamond ⊕ \oplus

∓ \mp ∪ \cup 4 \bigtriangleup \ominus

× \times ] \uplus 5 \bigtriangledown ⊗ \otimes

÷ \div u \sqcap / \triangleleft \oslash

∗ \ast t \sqcup . \triangleright \odot

? \star ∨ \vee \lhd © \bigcirc

\circ ∧ \wedge \rhd † \dagger

• \bullet \ \setminus \unlhd ‡ \ddagger

· \cdot o \wr \unrhd q \amalg

関係記 号

≤ \leq ≥ \geq ≡ \equiv |= \models

≺ \prec \succ ∼ \sim ⊥ \perp

\preceq \succeq ' \simeq | \mid

\ll \gg \asymp ‖ \parallel

⊂ \subset ⊃ \supset ≈ \approx ./ \bowtie

⊆ \subseteq ⊇ \supseteq ∼= \cong 1 \Join

< \sqsubset = \sqsupset 6= \neq ^ \smile

v \sqsubseteq w \sqsupseteq.= \doteq _ \frown

∈ \in 3 \ni ∝ \propto

` \vdash a \dashv

14

Page 15: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

矢印記 号

← \leftarrow ←− \longleftarrow ↑ \uparrow

⇐ \Leftarrow ⇐= \Longleftarrow ⇑ \Uparrow

→ \rightarrow −→ \longrightarrow ↓ \downarrow

⇒ \Rightarrow =⇒ \Longrightarrow ⇓ \Downarrow

↔ \leftrightarrow ←→ \longleftrightarrow l \updownarrow

⇔ \Leftrightarrow ⇐⇒ \Longleftrightarrow m \Updownarrow

7→ \mapsto 7−→ \longmapsto \nearrow

← \hookleftarrow → \hookrightarrow \searrow

\leftharpoonup \rightharpoonup \swarrow

\leftharpoondown \rightharpoondown \nwarrow

\rightleftharpoons ; \leadsto

そ の 他の 記 号

ℵ \aleph ′ \prime ∀ \forall ∞ \infty

h \hbar ∅ \emptyset ∃ \exists 2 \Box

ı \imath ∇ \nabla ¬ \neg 3 \Diamond

\jmath√

\surd [ \flat 4 \triangle

` \ell > \top \ \natural ♣ \clubsuit

℘ \wp ⊥ \bot ] \sharp ♦ \diamondsuit

< \Re ‖ \Vert \ \backslash ♥ \heartsuit

= \Im 6 \angle ∂ \partial ♠ \spadesuit

0 \mho

C Error と Warning

Error

TEX は Error が 生じ る と , そ こ で 処理を中断す る . 画 面に 表示さ れ る Error メ ッ セ ー ジ は , ! で 始ま る . 以下 に よ

く 見られ る Error を紹介 す る .

! LaTeX Error: Bad math environment delimiter.

数式モ ー ド の 境界 を示す コマ ン ド の 対応 (\( と \), \[ と \]) が と れ て い な い . 数式モ ー ド 中で 使っ たブ レー

スの 対応 (と ) が と れ て い な い こ と な ど が 原因と な る こ と も 考え られ る .

! LaTeX Error: \begin...on input line ... ended by \end....

環境の 境界 を表す \begin... と \end... が 対応し て い な い . \end... の スペ ルミ スや , 余分な \begin

が あ る , \end を入力し 忘れ たな ど の 原因が 考え られ る .

! LaTeX Error: Can be used only in preamble.

\begindocument の 前 (preamble) で し か 使え な い コマ ン ド を \begindocument の 後で 用い て い る .

\begindocument が 複数あ る 場合な ど も こ の Error と な る .

15

Page 16: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

! LaTeX Error: Command ... invalid in math mode.

数式モ ー ド で は 使え な い コマ ン ド を, 数式モ ー ド 中で 使っ た.

! LaTeX Error: Environment ... undefined.

\begin... で 未定義の 環境名が 指定さ れ た. 環境名の スペ ルミ スが 考え られ る .

! LaTeX Error: Illegal character in array arg.

array 環境ま たは tabular 環境の 引数 (列の 中央 揃え や 左寄せ ・ 右寄せ な ど を指定す る と こ ろ ) で , 使え な い

文字を使っ た.

! LaTeX Error: Lonely \item--perhaps a missing list envirionment.

itemize 環境や enumerate 環境な ど の リ スト を生成す る 環境以外 の 場所で \item が 使わ れ て い る .

! Double subscript

数式中で 添字を連続し て 指定し て い る . $x_1_2$ な ど と す る と , 2 を x の 添字に す べ き (x12) か 1 の 添字に す

べ き (x12) か 分か らな い . ブ レー スを用い て 構造を明示す べ き で あ る . 肩付き 文字に つ い て も 同様で , そ の 場合

は “! Double superscript” と い う Error に な る .

! Extra alignment tab has been changed to \cr.

array 環境ま たは tabular 環境で , 1行中に あ る 項目の 数が 多す ぎ る 場合に , こ の Error が 出る . & が 多す ぎ

る と い う こ と で あ る . 前行の 末尾の \\ を入れ 忘れ て い る な ど の 原因が 考え られ る .

! Extra , or forgotten $.

ブ レー スの 対応が と れ て い な い か , 数式モ ー ド の 区切り 記 号が ペ アに な っ て い な い . , \[, \( あ る い は $ の 入

れ 忘れ が 考え られ る . こ れ らの 記 号が 全角 に な っ て い な い こ と を確認す る こ と .

! Misplaces alignment tab character &.

& が 通常の 文中で 用い られ て い る . & は arrray環境ま たは tabular環境の 中で 項目を区切る ため に し か 使え

な い . & と 印字し たい 場合は \& と 記 述す る .

! Missing inserted.

ブ レー スの 対応が と れ て い な い . ! Missing inserted. も 同じ . TEX が い ろ い ろ な 処理 (マ クロ の 展開 )を

行っ た後で , こ の Error が 出る 場合も 多く , 単に ブ レー スの 対応だ け を確認し て も 原因が つ か め な い こ と も あ

る . TEX が 教え て く れ る Error 発生箇 所よ り も 前に 原因が あ る 場合が 多い .

! Missing $ inserted.

数式モ ー ド で し か 使え な い コマ ン ド を, 通常の 文中で 使お う と し た場合な ど に 出る . ま た, 数式モ ー ド 中に 空行

(空行は 段落の 区切り を表す ) が あ る 場合に も , こ の Error が 出る .

! Undefined control sequence.

TEX が 理解 で き な い コマ ン ド が 見つ か っ た. コマ ン ド 名の スペ ルミ スな ど が 原因と 考え られ る .

16

Page 17: LATEX を用いたテキスト処理LATEXを用いたテキスト処理 1 エディタ 1.1 Emacs Emacsのコマンドを入力するときには, 一般的にコントロール・キー(キー・トップに,

Warning

以下 は Warning(警告) で あ り , こ れ らが 発生し て も TEX は 処理を続け て .dvi フ ァ イルを作成す る . し か し , こ

う し て で き た文書は 間違い を含む場合も あ る の で , で き る だ け Warning を出さ な い 努力をす べ き で あ る .

! LaTeX Warning: Command ... invalid in math mode.

数式モ ー ド 中で は 使え な い コマ ン ド が , 数式モ ー ド 中で 使わ れ て い る . こ の 場合, こ の コマ ン ド は 無視さ れ る .

! LaTeX Warning: Label ‘...’ multiply defined.

複数の \labelコマ ン ド な ど で 同じ 引数が 指定さ れ て い る .

! LaTeX Warning: Label(s) may have changed. Return to get cross-reference right.

前回 LATEX が 入力フ ァ イルを処理し た後で , そ の フ ァ イルが 変更さ れ て お り , \refコマ ン ド な ど で 参照さ れ る

番号が 間違っ て い る 可 能性が あ る . こ の Warning は 入力フ ァ イル全体の 処理後に 表示さ れ る . も う 一度 platex

を実行す る こ と .

! LaTeX Warning: No \author given.

\maketitle の 前に \author が 指定さ れ て い な い . こ の 場合, 著者名は 印字さ れ な い .

! LaTeX Warning: Reference ‘...’ on page ... undefined.

\refコマ ン ド な ど で 参照し て い る ラ ベ ルが , \labelコマ ン ド な ど で 定義さ れ て い な い . 原因に は ラ ベ ルの ス

ペ ルミ スな ど が 考え られ る .

! Overfull \hbox ...

! Overfull \vbox ...

! Underfull \hbox ...

! Underfull \vbox ...

TEX は 箱 (box) と い う 概 念を使っ て 文書を整形し て い る . 箱の 中に , そ の 中身と な る 箱を横に 並べ たり , 縦に

並べ たり し な が ら, 組版す る . 中身を横に 並べ る の が hbox で 縦に 並べ る の が vbox で あ る . 一番大き な 箱

は , 1 ペ ー ジ で あ る よ う な 箱で , そ の 中に , 段と い う 箱が あ り (ペ ー ジ の 中に 横に 並ぶ ), そ の 中に は 各 段落と

い う 箱が あ り (段の 中に 縦に 並ぶ ), … ,最も 小さ な 箱は 1文字で あ る よ う な 箱で あ る . こ の 箱の 中身が 大き す ぎ て 収ま らず ,

は み出し て し ま う の が Overfull で あ り , 逆に 中身が 少な す ぎ て 大き な 隙間が 空い て し ま う の が Underfull

で あ る . こ こ で は 例 示 の た め に Overfull \hbox と Underfull \hbox を起 こ し

て みたが , vbox の 方で は , 例え ば ペ ー ジ の 上に 突き 出し たり , 節間の スペ ー スが 大き く な り す ぎ たり す る .

参考文献

[1] 奥村晴彦, LATEX2ε美文書作成入門, 技術評論社, 2010

[2] 乙 部 厳己+江口 庄英, pLATEX2εfor Windows, SOFTBANK, 1999

[3] 伊藤 和人, LATEX2εト ー タ ルガイド , 秀和シ ステ ム , 2000

[4] 野寺 隆志, 楽 々 LATEX, 共立出版, 1990

17