pL^{A}TEX 2εHandbook

Version 0.3

1997 年 10 月 15 日

目次

1 Document & Page Classes 1 2 Title page & Abstract 2 3 Input/Include Files & Packages 2 4 Sectioning & Table of Contents 3 5 Definitions 3 6 Numbering 4 7 Length 4 8 Page Layout & Parameters 5 9 Cross-Reference 8 10 Line & Page Breaking 9 11 Type Style & Size 10 12 Spaces 11 13 Special Characters & Accents 12 14 Emphases 13 15 Figures & Tables 13 16 Lists 14 17 Boxes 14 18 Index 16 19 Bibliography & Citation 17 20 tabbing Environment 17 21 tabular Environments 18 22 Displayed Paragraphs 20 23 Pictures 21 24 Mathematical mode 22

24.1 Mathematical mode . . . . . . . . . . . . . . . . . . . . 22 24.2 Some common structures . . . . . . . . . . . . . . . . . 24 24.3 Mathematical symbols . . . . . . . . . . . . . . . . . . . 28

24.3.1 AMSfont symbols . . . . . . . . . . . . . . . . . 32 24.4 Mathematical fonts . . . . . . . . . . . . . . . . . . . . . 35 24.5 Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

25 Postscript packages 37 25.1 graphics package . . . . . . . . . . . . . . . . . . . . . . 37 25.2 graphicx package . . . . . . . . . . . . . . . . . . . . . . 38 25.3 color package . . . . . . . . . . . . . . . . . . . . . . . . 40

26 Slides class 41 27 Hyper TEX 41

Remarks

typewriter font: コマンド名など、そのまま入力する部分。 italic font: オプションなど、置き換えが必要な部分。

∗ ASCII pL^{A}TEX 2ε特有の命令。英語版 L^{A}TEX 2εなどでは使えない。 † AMS-L^{A}TEX 特有の命令。 amsmath パッケージが必要。 ‡ AMS-L^{A}TEX では使用できない命令。

1 Document & Page Classes

pL^{A}TEX 2εドキュメントの例:

     Y =documentclass{jarticle}

% ここがプリアンブル

     Y =begin{document}

% ここは本文

       Hello, world!
     Y =end{document}
Y =documentclass[opt]{class}

class

article, report, book; jarticle^{∗}, jreport^{∗}, jbook^{∗};
tarticle^{∗}, treport^{∗}, tbook^{∗}; slides.

opt

Character size: 10pt, 11pt, 12pt.

Paper size:  a4paper, a5paper, b4paper, b5paper.

Paper orientation: landscape.

Column:  onecolumn, twocolumn.
Print face:  oneside, twoside.
Title page:  titlepage, nontitlepage.

Equation: fleqn, leqno. Draft: draft. Vertical writing^{∗}: tate. Bibliography: openbib.

Chapter page:  openright, openany.
Y =begin{document}...Y =end{document}

ドキュメント本文の始まりと終わり

Y =pagestyle[style], Y =thispagestyle[style]

ヘッダおよびフッタのスタイル。

thispagestyle は指定されたページのみ。
style: plain, empty, headings, myheadings, headnombre^{∗},
   footnombre^{∗}, bothstyle^{∗}.
Y =pagenumbering{style}

ページ番号のスタイル。

style arabic, roman, alph, Roman, Alph.

2 Title page & Abstract

Y =maketitle

プリアンブルで定義された以下の情報を基にタイトルを出力。

Y =title{txt}  タイトル
Y =author{names} 著者

Y =date[date] 日付 (省略可) names は複数の著者を Y =and で区切ることが可能。 Y =thanks{txt} でタイトルおよび著者に注釈を付けられる。 date に Y =today と書くと、今日の日付を出力する。このとき、プリアンブルに Y =西暦があると年号を西暦にする。

Y =begin{titlepage} . . . Y =end{titlepage}

タイトルページを自分で作る。

Y =begin{abstract} . . . Y =end{abstract}

Abstract を記述するための環境。

3 Input/Include Files & Packages

Y =input{file}

file で指定されたファイルを読み込む。

Y =include{file}

Y =includeonly で除外されていなければ file を読み込む。

Y =includeonly{files}

files に含まれていないファイルを除外する。

Y =usepackage[opt]{file}

指定された packages を読み込む。

4 Sectioning & Table of Contents

Y =part            Y =chapter      Y =section       Y =subsection
Y =subsubsection   Y =paragraph    Y =subparagraph
Y =tableofcontents 目次を出力する。
Y =listoffigures  図目次を出力する。
Y =listoftables  表目次を出力する。

Y =appendix 以下の本文を Appendix として扱う。

5 Definitions

Y =newcommand{cmd}[n]{def }
Y =renewcommand{cmd}[n]{def }

[n 個の引数を持つ] コマンド cmd を (再) 定義する。

Y =providecommand{cmd}[n]{def }

cmd が定義されていなければ新たに定義し、すでに定義されていれば何もしない。

Y =newenvironment{name}[n]{beg}{end}
Y =renewenvironment{name}[n]{beg}{end}

[n 個の引数を持つ] 環境を (再) 定義する。

Y =newtheorem{name}{caption}[within]
Y =newtheorem{name}[like]{caption}

新たに作成する定理型環境 name を定義する。

caption はじめに出力される文字列。

within すでに定義されたカウンター。

like すでに定義された定理型環境。

Y =ensuremath

テキストモードの場合のみ数式モードに移行する。

6 Numbering

Y =newcounter{ctr}[within]

新しいカウンター ctr を定義する。

Y =setcounter{ctr}{n} / Y =addtocounter{ctr}{n}

カウンター ctr に n をセットする (Y =setcounter)/

加える (Y =addtocounter)。
Y =thectr, Y =arabic{ctr}, Y =roman{ctr}, Y =Roman{ctr},
Y =alph{ctr}, Y =Alph{ctr}, Y =fnsymbol{ctr}

ctr の値を出力する。

7 Length

units em(‘M’ の幅), ex(‘x’ の高さ), pt(0.351mm), pc(4.2mm), mm, cm, in(25.4mm), sp(0.54×10^{−5}mm), bp(0.353mm), cc(4.51mm), Q(0.25mm), H(0.25mm). zw^{∗}, zh^{∗}(日本語文字の幅/高さ).

Y =fill

無限に伸縮できる長さ。

Y =stretch{n}
無限に伸縮できる長さ。 Y =stretch{n}= n×Y =fill
Y =newlength{cmd}

長さ変数 cmd を作成する。

Y =setlength{cmd}{len}

長さ cmd を len とする。

Y =addtolength{cmd}{len}

長さ cmd に len を加える。

Y =settowidth{cmd}{txt}

長さ cmd を txt の幅とする。

8 Page Layout & Parameters

[figure: 1inch; 1inch; Y =footskip; Y =topmargin; Y =headheight; Y =headsep; Y =textheight; Y =textwidth; Y =topskip; 1st baseline; Y =oddsidemargin; Y =evensidemargin; Y =pagewidth; Y =marginparwidth; Y =margin; parpush; Y =margin; parsep; Y =pageheight]

2 段組関連:

Y =footnotesep  脚注項目間スペース
Y =footnoterule^{+} 本文と脚注の間の罫線
Y =columnsep  段間スペース
Y =columnseprule 段間罫線の太さ

段落関連:

Y =linewidth  現在の環境内の行幅
Y =parindent  段落の先頭の字下げ幅
Y =parskip  段落間スペース
Y =baselineskip  行間スペース
Y =baselinestretch^{+} 行間スペースの伸縮度
Y =kanjiskip^{∗}  和文間スペース
Y =xkanjiskip^{∗}  和欧文間スペース

Y =ybaselineshift^{∗}  横組時の和欧文のベースライン調整
Y =tbaselineshift^{∗}  縦組時の和欧文のベースライン調整

ボックス関連:

Y =fboxrule   Y =fbox および Y =framebox の罫線の太さ
Y =fboxsep    Y =fbox および Y =framebox の内容と罫線との距離

リスト環境関連 (list 環境, trivlist 環境):

Y =topsep  本文とリスト環境の間に Y =parskip に加えて

挿入されるスペース

Y =partopsep  環境の前に空行がある場合に Y =topsep に加えて

挿入されるスペース

Y =itemsep  項目間に Y =parsep に加えて挿入されるスペース

Y =parsep  1 つの項目内の各段落間に挿入されるスペース
Y =leftmargin リスト環境の左端と本文の左マージンの距離
Y =rightmargin リスト環境の右端と本文の右マージンの距離
Y =listparindent 項目の最初以外の段落の、はじめの字下げ幅
Y =itemindent 各項目のラベルの前の字下げ幅
Y =labelsep  ラベルの右端と文章の 1 文字目との距離
Y =labelwidth ラベルのボックスの大きさの下限

Y =makelabel^{+} Y =item で出力されるラベルの作成

数式関連:

Y =jot                     eqnarray 環境の行間スペース
Y =mathindent              fleqn style での display 数式の

字下げ幅

Y =abovedisplayskip  長い数式の前のスペース
Y =belowdisplayskip  長い数式の後ろのスペース
Y =abovedisplayshortskip 短い数式の前のスペース
Y =belowdisplayshortskip 短い数式の後ろのスペース
Y =arraycolsep             array 環境のカラム間スペースの

半分

フロート関連 [() 内はデフォルト]:

Y =topnumber^{c}  ページ上部のフロート最大数 (2)
Y =topfraction^{+}  ページ上部へフロートが占められる割合 (.7)
Y =bottomnumber^{c}  ページ下部のフロート最大数 (1)
Y =bottomfraction^{+} ページ下部へフロートが占められる割合 (.3)
Y =totalnumber^{c}  1 ページに出力できるフロート最大数 (3)
Y =textfraction^{+}  1 ページの本文の割合の最小値 (.2)
Y =floatpagefraction^{+} フロートだけのページの最小占有率 (.5)
Y =dbltopnumber^{+}  {2 段組のフロートだけのページの最小占有率 \atop (.5)}
Y =floatsep           {上部又は下部に出力される時のフロート間距 \atop 離}
Y =textfloatsep       {上部又は下部に出力される時のフロート本文 \atop 間距離}
Y =intextsep          {ページ途中のフロートとその前後の本文との \atop 距離}

Y =dblfloatsep  2 段組の場合の Y =flortsep
Y =dbltextfloatsep  2 段組の場合の Y =textfloatsep

表組関連:

Y =tabbingsep     tabbing 環境のカラム間スペース
Y =tabcolsep      tabular 環境のカラム間スペースの半分
Y =arrayrulewidth tabular 環境の罫線の太さ
Y =doublerulesep  Y =tabular 環境の 2 重罫線の間隔
Y =arraystretch^{+} 行間スペースの倍率

見出し · 目次関連:

Y =secnumdepth^{c} {番号付き見出しを出力する最下位セクション \atop レベル}
Y =tocdepth^{c} 目次出力をする最下位セクションレベル

参考文献関連:

Y =bibindent   openbib での各項目 2 行目以降の字下げ量

見出しコマンドなどの文字列 (すべてコマンドによる定義):

パラメータデフォルト意味

Y =prepartname  第  Y =part の番号の前の文字
Y =postpartname  部  Y =part の番号の後ろの文字
Y =prechaptername  第  Y =chapter の番号の前の文字
Y =postchaptername  章  Y =chapter の番号の後ろの文字
Y =abstractname  概要 Y =abstract 環境で出力される文字列
Y =appendixname  付録 Y =appendix で出力される文字列

Y =contentsname  目次 Y =tableofcontents で出力される文

字列

Y =listfigurename 図目次 Y =listoffigures で出力される文字

列

Y =listtablename  表目次 Y =listoftables で出力される文字列

Y =figurename  図  figure 環境での Y =caption で出力

される番号につく文字列

Y =tablename  表  table 環境での Y =caption で出力さ

れる番号につく文字列

Y =refname  参考文献 Y =thebibliography コマンドで出力
                          される文字列 ([jt]article クラス)
Y =bibname  関連図書 Y =thebibliography コマンドで出力

される文字列 (その他の日本語クラス)

無印: パラメータ (長さ変数) は Y =setlength{param}{value} で指定。 +: パラメータ (コマンド) は Y =renewcommand{param}{value} で指定。 c: パラメータ (カウンタ) は Y =setcounter{param}{value} もしくは

    Y =addcounter{param}{value} で指定。

9 Cross-Reference

Y =label{key}, Y =ref{key}, Y =pageref{key}

Y =label key に現在のカウンターの値を割り当てる。 Y =ref key に割り当てられた値を出力する。 Y =pageref key を割り当てたページ番号を出力する。

※ varioref package
Y =vref{key}

値の出力とともに、参照元と参照先のページによってはページの出力も行う (ただし英語のみ)。

Y =vpageref[samepage][anotherpage]{key} Y =vref から値を取り除いたものを出力。オプション引数には同一ページの場合と異なるページの場合に出力する文字列を指定できる。

※ xr package

Y =externaldocument{file}

プリアンブルで指定すると、指定された file に対しても相互参照が可能となる。

10 Line & Page Breaking

Y =linebreak[n]
Y =nolinebreak[n]

改行の強制もしくは推奨 (Y =linebreak) / 改行の禁止もしくは抑制 (Y =nolinebreak)。 0 ≤ n ≤ 4.

Y =Y =[len]

改行し、縦に len のスペースを空ける。

Y =-

ハイフネーションを許可する。

Y =sloppy

行分割の基準を緩和する。

Y =fussy

行分割の基準を厳密にする。

Y =begin{sloppypar} . . . Y =end{sloppypar}

行分割の基準を緩和した環境。

Y =par

改段落する。

Y =pagebreak[n]
Y =nopagebreak[n]

改ページの強制もしくは推奨 (Y =linebreak) / 改ページの禁止もしくは抑制 (Y =nolinebreak)。 0 ≤ n ≤ 4. 二段組では改段となる。

Y =newpage

改ページする。二段組では改段となる。

Y =clearpage

図表を出力して改ページする。

Y =cleardoublepage

図表を出力して、次のページを奇数ページから始める (縦組みでは偶数ページから)。

Y =flushbottom

ページ版面の高さを揃える。

Y =raggedbottom

ページ版面の高さを揃えない。

Y =enlargethispage{hght}

hght の長さだけページ版面の高さを一時的に増減する。

11 Type Style & Size

Style

Grobal  Local  Ex.

Y =rmfamily     Y =textrm{txt}  Roman
Y =sffamily     Y =textsf{txt}  Sans serif
Y =ttfamily     Y =texttt{txt}         Typewriter
Y =mcfamily     Y =textmc{txt}  明朝 family^{∗}
Y =gtfamily     Y =textgt{txt}  ゴシック family^{∗}
Y =mdseries     Y =textmd{txt}  Midiumface
Y =bfseries     Y =textbf{txt}  Boldface
Y =itshape      Y =textit{txt}  Italic
Y =slshape      Y =textsl{txt}  Slanted
Y =scshape      Y =textsc{txt}  Small Caps
Y =normalfont   Y =textnormal{txt}  Normal Font

Size

Cmd  Ex Cmd  Ex  Cmd  Ex

Y =tiny
Y =scriptsize
Y =footnotesize
Y =small
Y =normalsize

Aa1^{Aa1}^{Aa1} Aa1 Aa1

                      Y =large Y =Large Y =LARGE

Aa1 Aa1 Aa1

                                        Y =huge Y =Huge

Aa1^{Aa1}

Y =verb!txt!, Y =verb*!txt!

Y =verb! と ! にはさまれた部分を typewriter 体でそのまま出力する。その間の命令はすべて無視される。 ! は両側が同じであればどんな文字でも構わない。 Y =verb* とすると、スペースを ␣ と表示する。

12 Spaces

Y =hspace{len}, Y =hspace*{len}

長さ len の水平スペースを空ける。 Y =hspace* は行頭でも働く。

Y =hfil, Y =hfill, Y =dotfill, Y =hrulefill

無限に伸縮可能な水平スペースを空ける。

(Y =hfill ≡ Y =hspace{Y =fill} > Y =hfil)

Y =dotfill はスペースの代わりの点を打つ。

Y =hrulefill は水平ラインを書く。
Y =vspace{len}, Y =vspace*{len}

長さ len の垂直スペースを空ける。 Y =vspace* はページの頭でも働く。

Y =vfill (≡ Y =vspace{Y =fill})

無限に伸縮可能な垂直スペースを空ける。

Y =bigskip, Y =medskip, Y =smallskip

これらは以下のものと同等である。

Y =vspace{Y =bigskipamount}, Y =vspace{Y =medskipamount},
Y =vspace{Y =smallskipamount}.

Character Spaces

I  O Remark
Y =, | | 小スペース
Y =  | | 単語間スペース
~  | | 改行されないスペース
Y =@. |.| 文の終わりのピリオド
Y =/  || イタリック補正

13 Special Characters & Accents

Characters

I  O I  O I  O

Y =# # Y =dag  † Y =textbackslash  \
Y =$  $ Y =ddag  ‡ Y =textbullet  •
Y =% % Y =pounds £ Y =textbar  |
Y =& & Y =_Y =textperiodcentered ·
Y ={  { Y =}  } Y =textvisiblespace
Y =oe œ Y =OE  Œ Y =textasciicircum      ˆ
Y =ae æ Y =AE  Æ Y =copyright            \begin{matrix}c \\ ◯ \end{matrix}
Y =aa å Y =AA  Å Y =textregistered       \begin{matrix}r \\ ◯ \end{matrix}
Y =S  § Y =P  ¶ Y =texttrademark        TM
Y =l  ł Y =L        Ł Y =textless  <
Y =o  ø Y =O  Ø Y =textgreater  >
Y =i  ı Y =j  ȷ Y =textasciitilde       ˜
?`  ¿ !`  ¡ Y =ss  ß
>  ¿ <  ¡ |  —
`  ‘ '  ’ ``Y =,`  “ ‘
``  “ ''  ” 'Y =,''  ’ ”

Dashes

In Out Remark  In Out Remark
- - intra-word --- — punctuation
-- – number-range $-$ − minus

Logos

I  O  I  O  I  O

Y =TeX TEX Y =LaTeX L^{A}TEX Y =LaTeXe   L^{A}TEX 2ε

Accents

I  O I  O I  O I  O

Y =`o  ò Y ='o  ó Y =^o  ô Y =~o  õ
Y ==o  ō Y =.o  ȯ Y =v{o} ǒ Y =H{o} ő
Y =t{oo} oo Y ="o  ö Y =u{o} ŏ Y =r{o} o̊
Y =d{o}    o. Y =b{o}   ō Y =c{o} o̧

Y =textcircled{char}

丸囲み文字を出力する。

14 Emphases

Y =emph{txt}

txt を強調フォントで出力する。

Y =em

Y =em 以降の文を強調フォントで出力する。

Y =underline{txt}^{∗}

txt を\underline{この}ように傍線付きで出力する。

Y =kasen{txt}^{∗}

txt を\underline{この}ように傍線付きで出力する。縦組みでも使用可。

※縦書きクラスもしくは Y =plext package

Y =bou{txt}^{∗}

txt を、 こ、 のように傍点付きで出力する。

点の種類の変更は Y =boutenchar を再定義する。

15 Figures & Tables

Y =begin{figure}[opt] . . . Y =end{figure}
Y =begin{table}[opt] . . . Y =end{table}

フロートな図もしくは表を作成する。

Y =begin{figure*}[opt] . . . Y =end{figure*}
Y =begin{table*}[opt] . . . Y =end{table*}

2 段組では二段抜きの空間を確保した、フロートな図/表を作成する。

opt h: Here, t: Top, b: Bottom, p: Page.

優先順位を記述する。

Y =caption[txt]{txt}

図/表の説明を付ける。 [...] は図/表目次用の短い説明、 {...} は図の位置での説明文。

16 Lists

それぞれの項目は Y =item もしくは Y =item[lbl] で始める。

Y =begin{itemize} . . . Y =end{itemize}
Y =begin{enumerate} . . . Y =end{enumerate}
Y =begin{description} . . . Y =end{description}
それぞれ強調文字 (itemize)、数字 (enumerate)、

記号 (description) のラベルが付いたリストを出力する。 list 環境では、 Y =makelabel で定義されたフォント変更命令を使ってリストを出力するため、フォントを変えるには Y =makelabel の再定義が必要。

(例: Y =renewcommand{Y =makelabel}{Y =largeY =itshape})
※ enumerate package
Y =begin{enumerate}[opt] . . . Y =end{enumerate}

enumerate 環境が再定義されている。 opt にはラベルに出力する文字列を指定できる。ただし、 A, a, I, i, 1 はそれぞれ番号付けの際にアルファベットの大文字, 小文字, ローマ数字の大文字, 小文字, アラビア数字で出力することを意味する。これらの文字自身は {} でくくって記述できる。

17 Boxes

Y =mbox{txt}
Y =makebox[wdth][pos]{txt}

txt が入った幅 wdth の箱を作る。 pos は txt を左寄せ (l)、右寄せ (r)、中央 (c) に出力する。

変数 Y =width, Y =height, Y =epth, Y =otalheight を参照可能。
Y =fbox{txt}
Y =framebox[wdth][pos]{txt}
Y =mbox や Y =makebox と同じだが、枠付きになる。
Y =newsavebox{cmd}

cmd を保存箱として定義する。

Y =sbox{cmd}{txt}
Y =savebox{cmd}[wdth][pos]{txt}

Y =mbox や Y =makebox と同じだが、箱 cmd に txt を保存する。出力はしない。

Y =usebox{cmd}

保存箱 cmd に保存された内容を出力する。

Y =parbox[pos][hght][inpos]{wdth}{ … }

Y =begin{minipage}[pos][hght][inpos]{wdth}
                             . . . Y =end{minipage}

幅 wdth の段落ボックスを作る。 pos にはベースラインを揃える位置を指定する (t:上部、 c:中央、 b:下部)。 hght は箱の高さを指定する。 inpos は箱内部の文字の位置を指定する (t:上寄せ、 c:中央、 b:下寄せ)。

Y =raisebox{len}[hght][dpth]{txt}

txt が入った箱を len だけ上げる。この箱の高さと深さをそれぞれ hght および dpth で調節する。

Y =rule[len]{wdth}{hght}

幅 wdth× 高さ hght の矩形を len だけ上に移動して出力する。

※ ascmac package

Y =begin{shadebox}...Y =end{shadebox}

幅 Y =linewidth の影付きの箱を出力する。

Y =begin{screen}...Y =end{screen}

幅 Y =linewidth のオーバルボックスを出力する。

Y =begin{itembox}[pos]{title}...Y =end{itembox}

screen 環境の上の罫線部に title を出力する。 pos には出力位置 (左:l, 中央:c, 右:r) を指定する。

Y =begin{boxnote}...Y =end{boxnote}

破ったメモ用紙のような幅 Y =linewidth のボックスを出力する。

18 Index

これらの命令には makeidx パッケージが必要です。

Y =makeindex

索引語を抽出する。プリアンブルに記述する。

Y =printindex

索引を出力する。 mendex をコンパイル後に実行し、再びコンパイルしなければならない。

Y =index{list}

索引語を指定する。索引の読みは Y =index{にほんご@日本語} のように指定する。ある索引語の下に関連した索引語を並べて出力する場合、

Y =index{さくいん@索引!にほんご@日本語} Y =index{さくいん@索引!ちゅうごくご@中国語}

のように記述できる。索引語の範囲を示す場合、開始位置に

Y =index{...|(}, 終了位置に Y =index{...|)} と、 |(,|) を付ける。関
連項目への参照リンクは Y =index{...}|see{...} のように
|see{...} を用いる。

用語集を作る場合には、上の索引に対するコマンドを、次のように読み替える。

索引用語集
パッケージ  makeidx  makegls

抽出コマンド  Y =makeindex    Y =makeglossary
出力コマンド  Y =printindex   Y =printglossary
指定コマンド  Y =index        Y =glossary
整形前の拡張子 .idx          .glo
整形後の拡張子 .ind          .gls

mendex で処理する際には、次のようなオプションを指定する。

   % mendex -f -s gglo.ist -o sample.gls sample.glo

19 Bibliography & Citation

Y =bibliography{ . . . }

参考文献ファイルを指定し、参考文献リストを作成する。 (j)bibtex をコンパイル後に実行し、再びコンパイルしなければならない。

Y =bibliographystyle{style}

参考文献のスタイルを指定する。

style: plain, unsrt, alpha, abbrv, acm, apalike.
Y =begin{thebibliography}[list]{lbl} . . . Y =end{thebibliography}

参考文献の一覧を出力する。 Y =bibitem[lbl]{key}

参考文献の項目。 key は引用の際の識別子、 lbl は文献一覧の見出しになる文字列。

Y =cite[note]{keys},

keys のキーを持つ参考文献番号を参照する。複数文献をカンマで区切って併記できる。 note で注釈を付けられる。

Y =nocite{keys}

引用はしないが一覧リストに載せる文献を記載する。

※ cite package cite パッケージを用いると、 [1][2][3][8] のようではなく、 [1–3,8] のように出力できる。

20 tabbing Environment

Y =begin{tabbing} . . . Y =end{tabbing}

この環境内では次のコマンドが使われる。 Y == タブ位置の設定 Y => タブ位置への移動 Y =Y = 改行 Y =kill この行は出力しない Y =+ 開始タブを次のタブ位置にする Y =- Y =+ の効力をうち消す Y =< 1 行だけ Y =+ を取り消す Y =' このコマンドの前の文字列を前のカラムに右寄せで出力 Y =` 以降の文字列を tabbing 環境の右マージンまで寄せて出力 Y =pushtab タブ位置をスタックにプッシュする Y =pushtab タブ位置をスタックから戻す。

21 tabular Environments

Y =begin{tabular}[pos]{cols} . . . Y =end{tabular}
Y =begin{tabular*}{wdth}[pos]{cols} . . . Y =end{tabular*}

表を作る。各項目は & で区切られ、改行は Y =Y = で行われる。 tabular* 環境は、幅を wdth に固定する。 pos 文章のベースラインと揃える位置。

t,b,c(デフォルト) はそれぞれ上部、下部、中央。 cols には各列のフォーマットを指定する。

l, r, c それぞれカラムに左寄せ、右寄せ、中央に出力する。 | 縦の罫線を引く。 p{wdth} 幅 wdth の要素 @{txt} カラム間に txt を出力する。

Y =multicolumn{n}{col}{txt}

n 個のカラムをまとめて col フォーマットで txt を出力

Y =hline

行間に水平ラインを引く。

Y =cline{i–j}

i 番目から j 番目のカラムに水平ラインを引く。

※array package

1. 罫線の幅が列間の空白幅に追加される。

2. 次のオプションが追加される。 m{width} p と同じ (ただしベースラインはカラムの中央) b{width} p と同じ (ただしベースラインはカラムの最下行) >{txt} l,c,r,p,m,b の前の指定で、各要素前に txt を出力。 <{txt} l,c,r,p,m,b の後の指定で、各要素後に txt を出力。 !{txt} @ と同じ。ただし列間の空白は除去されない。

3. 新たな指定子を Y =newcolumntype で定義できる。

Y =newcolumntype{type}[num]{oldtype}

type に新指定子名、 num に引数の数、 oldtype に定義内容を記述する。

※dcolumn package 指定子に小数点による桁揃えなどを実現する D が追加される。

D{insep}{outsep}{dec.pl} insep 揃える区切り文字。小数点 (.) など。 outsep 出力時に insep を置き換える文字。 dec.pl 小数点以下の桁数。負の値では任意の桁数となる。 ※flafter package flafter パッケージを読み込むと、図表を原稿の記述より後に出力する。

※hhline package

Y =hhline{decl}

Y =hline を拡張した命令。 tabular/array 環境で指定したフォーマットに対応した罫線の種類を指定する。 = 列幅の横二重罫線 - 列幅の横罫線 ~ 横罫線を引かない | 横罫線を貫く縦罫線 : 横罫線を貫かない縦罫線 # 横二重罫線と交わる縦二重罫線 t 二重罫線の上罫線のみ b 二重罫線の下罫線のみ

* 繰り返し (例: *{num}{pattern})

※longtable package
Y =begin{longtable}{cols} . . . Y =end{longtable}

複数ページにまたがる表の出力が可能だが、 table 環境に入れることはできない。

以下は longtable 環境の例:
     1:  Y =begin{longtable}{|cc}  7:  AAAA & BBBB Y =Y =
     2:  Y =caption{Sample.}       8:  CCCC & DDDD Y =Y =
     3:  Y =hline
     4:  Y =endhead               98:  Y =label{longtable}
     5:  Y =hline                 99:  Y =end{longtable}
     6:  Y =endfoot

Y =endhead の前の記述が分割された表の上部に付加される情報。 Y =endfoot の前の記述が分割された表の下部に付加される情報。表の長さを揃えるために 2 回以上のコンパイルが必要。

Y =label は Y =endfoot までに書いてはいけない。

独立ページに表を出力する際には afterpage パッケージが必要。

※tabularx package
Y =begin{tabularx}[pos]{wdth}{cols}

表の列幅を自動設定する表環境。 width 表全体の幅 cols 表のフォーマット。 array パッケージ以外に X (表全体の

幅に従って幅が調節される段落) が指定できる。 pos c 以外の tabular 環境と同じ pos が利用できる。

※afterpage package
Y =afterpage{cmd}

そのページ処理が終わった直後に cmd を実行する。

22 Displayed Paragraphs

Y =begin{quote} . . . Y =end{quote}
Y =begin{quotation} . . . Y =end{quotation}

段落のない (quote)/段落のある (quotation) 引用文を出力する環境。

Y =begin{flushleft} . . . Y =end{flushleft}
Y =begin{flushright} . . . Y =end{flushright}
Y =begin{center} . . . Y =end{center}

それぞれ左寄せ、右寄せ、センタリングの環境。改行は Y =Y = でおこなう。

Y =begin{verse} . . . Y =end{verse}

詩集用環境。改行は Y =Y = でおこなう。

Y =begin{verbatim} . . . Y =end{verbatim}
Y =begin{verbatim*} . . . Y =end{verbatim*}

環境内に記述したとおりにタイプライタ体で出力する。 verbatim*環境ではスペースを Y =verb* 命令のように␣ で表す。 verbatim パッケージを用いると、 Y =verbatim 環境の大きさの制限がなくなる。また環境内で comment 環境によるコメントアウトがおこなえる。

Y =footnote[num]{txt}

txt を脚注に出力する。 num で脚注番号の指定も可能。 ftnright パッケージを用いると、 2 段組の際に脚注が右側の段の下部に出力される。 footnpag パッケージを用いると、各ページごとに脚注番号が初期化される。これを用いると脚注番号の明示的指定ができない。

Y =marginpar{txt}

txt を傍注に出力する。クラスオプション oneside がセットされていると、傍注は右側だけに

出力される (Y =reversemarginpar があると左側になる)。 ?article, Y =Y =

?report クラスのデフォルト。 twoside がセットされていると、傍注は奇数ページの右側、偶数ページの左側に出力される。 ?book クラスのデフォルト。

※ alltt package

Y =begin{alltt} . . . Y =end{alltt}

verbatim 環境と同じだが、 Y =, {, } の 3 文字はエスケープ文字もしくはグループ化文字として機能する。

23 Pictures

Y =begin{picture}(h,v)(x,y) . . . Y =end{picture}

h × v の picture 環境を作る [左下の点を (x,y) とする]。

(単位長さ = Y =unitlength)
Y =put(x,y){obj }

obj を (x,y) の点におく。

Y =multiput(x,y)(dx,dy){n}{obj }

obj を、起点 (x,y) から (dx,dy) 毎に n 個おく。

Y =makebox(x,y)[pos]{obj }
Y =framebox(x,y)[pos]{obj }
Y =savebox{cmd}(x,y)[pos]{obj }
Y =dashbox{d}(x,y)[pos]{obj }

x × y の箱を作る。 pos に内容をどこにおくか指定する。上:t, 下:b, 左:l, 右:r, 中央:c(デフォルト)。 Y =dashbox は長さ d の破線で箱を囲む。

Y =line(h,v){l}

傾き v/h, 水平方向の長さ l (h = 0 の時は長さ) の線を引く。 −6 ≤ h, v ≤ 6.

Y =vector(h,v){l}

Y =line と同じだが、矢印になる。 0 ≤ h, v ≤ 4

Y =circle{d}, Y =circle*{d}

直径 d の円を描く。 Y =circle* は中を塗りつぶす。

Y =oval(x,y)[part]

x × y のオバールを描く。 partial があると、指定した部分だけ描く (l, r, t, b のうち 1 つか 2 つ)。

Y =frame{obj }

obj のまわりに枠を描く。

Y =shortstack[pos]{ . . . }

tabular 環境のように用いる。

Y =thinlines, Y =thicklines

線の太さを選択する。

Y =qbezier[n](ax,ay)(bx,by)(cx,cy)

ベジェ2 次曲線を出力する。 (ax,ay)(bx,by)(cx,cy) はそれぞれ起点、参照点、終点、 n が打つ点の数である。 Y =qbeziermax に打つ点の数の最大値が定義されている。

24 Mathematical mode

24.1 Mathematical mode

Y =( . . . Y =) or $ . . . $ or Y =begin{math} . . . Y =end{math}

テキスト用数式モード (Y =textstyle)。

Y =[ . . . Y =] or $$ . . . $$ or
Y =begin{displaymath} . . . Y =end{displaymath}

ディスプレイ用数式モード (Y =displaystyle)。

Y =begin{equation} . . . Y =end{equation}

数式番号付の数式を出力する (ディスプレイスタイル)。

Y =begin{eqnarray} . . . Y =end{eqnarray}
Y =begin{eqnarray*} . . . Y =end{eqnarray*}

& & で囲まれた部分を揃える数式番号付数式環境。改行は Y =Y = でおこなう。 Y =nonumber を付けた行は番号を付けない。 eqnarray* 環境はすべての行の番号を付けない。 Y =lefteqn{ … } は数式を左寄せで出力する。

※ amsmath package

Y =begin{split}...Y =end{split}

複数行に渡る数式を & の位置で揃える。改行は Y =Y = でおこなう。 equation 環境など、数式モードで使う必要がある。

Y =begin{multiline}...Y =end{multiline}

複数行に渡る数式を、 1 行目は左寄せ、最終行は右寄せ、あとはセンタリングして出力する。数式番号は最終行に付加される。 1 行目の左、最終行の右の字下げは Y =multinegap に格納されている (デフォルトは 10pt)。センタリングされる行を左寄せ、右寄せで出力する場合は、各行でそれ

ぞれ Y =shoveleft, Y =shoveright を実行する。
Y =begin{gather}...Y =end{gather}

複数の数式をまとめて記述する環境。 eqnarray 環境よりも間隔が狭い。

Y =begin{align}...Y =end{align}

split 環境のように & の位置を揃える数式環境。複数の数式を記述できる。数式の区切りも & である。 split 環境と違って、これ自体が数式環境になっていて、各行に数式番号がつく。

Y =begin{alignat}{num}...Y =end{alignat}

align 環境で、横に数式を並べる数を明示する環境。 num は「1+(&の数)/2」以上の整数を指定する。

Y =begin{falign}...Y =end{falign}

align 環境と同じ。ただし、数式を左揃えで出力する。

Y =begin{gathered}[pos]...Y =end{gathered}
Y =begin{aligned}[pos]...Y =end{aligned}
Y =begin{alignedat}[pos]...Y =end{alignedat}
gather 環境、 align 環境、 alignedat 環境を数式モード内で利用する

ための環境。 pos にはベースラインを t(最上行に揃える)、 b(最下行に揃える) が指定できる。デフォルトは中央。

Y =begin{cases}...Y =end{cases}

場合分けのための環境。以下の例のように用いる。

  1:  Y =begin\{equation\} 2:    |x| = 3:    Y =begin\{cases\} 4:      x  & (x > 0),Y =Y = 5:      -x & (x < 0). 6:   Y =end\{cases\} 7:  Y =end\{equation\}  →  |x| = \begin{cases}x & (x > 0), \\ −x & (x < 0). \end{cases} (1)

Y =tag{txt}, Y =tag*{txt}, Y =notag

AMS-L^{A}TEX の環境で数式番号をつけない場合には Y =notag を Y =Y = の前に指定する。アスタリスク形式の環境も含め、数式に特別な記号をつける場合には Y =tag[() 内に文字列が入る]/Y =tag*[() がつかない] を用いる。これらの引数はテキストモードであり、数式記号を使う際には $ で括る必要がある。

Y =begin{subequations}...Y =end{subequations}

環境中の数式番号をグループ化する。数式を書く際には、さらにこの環境内で数式モードに移行する必要がある。

Y =raisetag{len}

AMS-L^{A}TEX が許す場合のみ、次に現れるタグを len だけ上に移動する。

Y =boxed{eq}

枠付の数式を出力する。

24.2 Some common structures

以下の記述のうち、 [†] がついたものは amsmath パッケージが必要。 [‡] がついたものは amsmath パッケージを読み込むと使えない。 Subscripts & Superscrits

_{ . . . }   x_y → x_{y}, a_{ij} → a_{ij}.
^{ . . . }   x^y → x^{y}, a^{ij} → a^{ij}.
p(x)=Y =sum_{k=0}^n a_k x^k → p(x) = ∑_{k=0}^{n} a_{k}x^{k}.

Prime

' x' → x′, x'' → x′′. Fractions

$a/(b+c)$  a/(b + c)
$Y =frac\{a\}\{b+c\}$                         \frac{a}{b+c}
$\{a Y =over b+c\}$^{‡}  \frac{a}{b+c}
$\{a Y =atop b+c\}$^{‡}  {a \atop b+c}
$\{a Y =above0.4pt b+c\}$^{‡}  \frac{a}{b+c}
$\{a Y =above1pt b+c\}$^{‡}  \frac{a}{b+c}
$\{a Y =atopwithdelims<> b+c\}$^{‡}  \left⟨{a \atop b+c}\right⟩
${a Y =atopwithdelimsY ={. b+c}$^{‡}  {_{b+c}^{a}
$\{a Y =abovewithdelims[]1pt b+c\}$^{‡}  [\frac{a}{b+c}]
$\{a Y =choose b+c\}$^{‡}  \binom{a}{b+c}
Y =dfrac{eq.1}{eq.2}^{†}

常にディスプレイスタイルで分数を出力する。使い方は Y =frac と同じ。

Y =tfrac{eq.1}{eq.2}^{†}

常にテキストスタイルで分数を出力する。使い方は Y =frac と同じ。

Y =cfrac[pos]{eq.1}{eq.2}^{†}

すべてディスプレイスタイルで連分数を出力する。使い方は Y =frac を使って連分数を記述する場合とおなじ。 pos には r(分子を右に寄せる), l(分子を左に寄せる) が使える。デフォルトは中央。

Y =binom{eq.1}{eq.2}^{†}
Y =tbinom{eq.1}{eq.2}^{†}
Y =dbinom{eq.1}{eq.2}^{†}

\binom{a}{b} のような二項係数を出力する。使用法は Y =frac と同じ。 Y =tbinom は常にテキストスタイル、 Y =dbinom は常にディスプレイスタイルで出力する。 Y =binom は使用箇所に応じて形式が変化する。

Y =genfrac{ldlm}{rdlm}{thick}{stl}{eq.1}{eq.2} Y =frac の拡張版。囲み、線の太さ、スタイルを指定できる。

ldlm, rdlm 左右の囲み記号 (括弧など) を指定する。囲み記号が必要なければ何も指定しない。片方だけに必要なら反対側には ‘.’ を入れる。

thick 分子と分母の間の割線の太さを指定する。何も指定しなければ

0.4pt が入る。線を引かない場合は明示的に 0pt を入れる。 stl 常に特定の形式で出力させる場合に指定する。 0 は常に

    Y =displaystyle 形式、 1 は Y =textstyle、 2 は Y =scriptstyle、
    3 は Y =scriptscriptstyle をそれぞれ指定する。

eq.1, eq.2 分子、分母を記述する。

Roots

$Y =sqrt\{17\}$ → \sqrt{17},
$Y =sqrt[n]\{q\}$ → \sqrt[n]{q},
$Y =sqrt{g}+Y =sqrt{h}$

→ \sqrt{g} + \sqrt{h},

$Y =sqrt{gY =mathstrut}+Y =sqrt{hY =mathstrut}$

→ \sqrt{g} + \sqrt{h}.

Y =uproot{len}, Y =leftroot{len}^{†}

累乗指数の出力位置を上 (Y =uproot)/左 (Y =leftroot) に len× 1/18ex だけずらす。 Y =sqrt のオプション引数の中で指定する。 Ellipsis

I  O I  O I  O I  O

 Y =ldots   . . . Y =cdots   · · · Y =ddots   ... Y =vdots   ⋮

このうち、 Y =ldots だけは数式モード以外でも使用可能。

Y =dots^{†}

コンマ間のドット、演算関係子間のドット、乗算のドット、積分の省略を示すドットを区別して出力する。うまく行かない場合は、それぞれ

Y =dotsc^{†}, Y =dotsb^{†}, Y =dotsm^{†}, Y =dotsi^{†} と直接指定すれば良い。

Over & Underlining

$Y =overline\{x+y\}$                        \overline{x + y}
$Y =underline\{x+y\}$                       \underline{x + y}
$Y =widehat{fg}$                          f̂g
$Y =widetilde{fg}$                        f̃g
$Y =overbrace\{x+y\}$                       \overbrace{x + y}
$Y =underbrace\{x+y\}$                      \underbrace{x + y}

$Y =overbrace\{a+b+c\}^\{Y =mathrm\{all\}\}$      \overbrace{a + b + c}^{all}
$Y =underbrace\{a+b+c\}_\{Y =mathrm\{all\}\}$     \underbrace{a + b + c}_{all}
$Y =overrightarrow\{Y =text\{AB\}\}$            \overrightarrow{AB}
$Y =overleftarrow\{Y =text\{AB\}\}$             \overleftarrow{AB}
$Y =overleftrightarrow\{Y =text\{AB\}\}$^{†}  \overleftrightarrow{AB}
$Y =underrightarrow\{Y =text\{AB\}\}$^{†}  \underrightarrow{AB}
$Y =underleftarrow\{Y =text\{AB\}\}$^{†}  \underleftarrow{AB}
$Y =underleftrightarrow\{Y =text\{AB\}\}$^{†}  \underleftrightarrow{AB}

Accents

I  O I  O

Y =hat{o}      ô Y =Hat{Y =Hat{o}}^{†}  ˆ  ô
Y =acute{o}    ó Y =Acute{Y =Acute{o}}^{†}  ´ ó
Y =bar{o}      ō Y =Bar{Y =Bar{o}}^{†}  ¯  ō
Y =dot{o}      ȯ Y =Dot{Y =Dot{o}}^{†}  ˙  ȯ
Y =check{o}    ǒ Y =Check{Y =Check{o}}^{†}  ˇ ǒ
Y =grave{o}    ò Y =Grave{Y =Grave{o}}^{†}  ` ò
Y =vec{o}      o⃗ Y =Vec{Y =Vec{o}}        o⃗
Y =ddot{o}     ö Y =Ddot{Y =Ddot{o}}^{†}  ¨  ö
Y =breve{o}    ŏ Y =Breve{Y =Breve{o}}^{†}  ˘ ŏ
Y =tilde{o}    õ Y =Tilde{Y =Tilde{o}}^{†}  ˜ õ
Y =dddot\{o\}^{†}  \begin{matrix}... \\ o \end{matrix} Y =ddddot\{o\}^{†}  \begin{matrix}.... \\ o \end{matrix}

${Y =text{X}} Y =stackrel{f}{Y =to} {Y =text{R}}$ → X →^{f} R
$Y =overset{*}{X}$^{†} → X^{∗}
$Y =underset{*}{X}$^{†} → X_{∗}

Y =stackrel は通常演算子の上に文字を書く場合に用いられる。

 Y =overset, Y =underset は記号を (に) 重ねた文字を出力する際

に使う。

Spaces

I  幅 (×Y =quad) 数式モード以外
Y =␣  1/2  使用可

Y =quad  1  使用可
Y =qquad  2  使用可

Y =,  1/6  使用可
Y =:  2/9  使用不可
Y =;  5/18  使用不可
Y =!  -1/6  使用不可

24.3 Mathematical symbols

Greek letters (Lowercase)

I  O I  O I  O I  O

Y =alpha  α Y =iota  ι Y =rho  ρ Y =varepsilon ε
Y =beta  β Y =kappa κ Y =sigma  σ Y =vartheta  ϑ
Y =gamma  γ Y =lambda λ Y =tau  τ Y =varpi  ϖ
Y =delta  δ Y =mu  μ Y =upsilon υ Y =varrho  ϱ
Y =epsilon ϵ Y =nu  ν Y =phi  ϕ Y =varsigma  ς
Y =zeta  ζ Y =xi  ξ Y =chi  χ Y =varphi  φ
Y =eta  η o  o Y =psi  ψ
Y =theta  θ Y =pi  π Y =omega  ω

Greek letters (Uppercase)

I  O I  O I  O I  O

Y =Gamma Γ Y =Lambda Λ Y =Sigma  Σ Y =Psi  Ψ
Y =Delta Δ Y =Xi  Ξ Y =Upsilon Υ Y =Omega Ω
Y =Theta Θ Y =Pi  Π Y =Phi  Φ

Binary operation symbols

I  O I  O I  O I  O

Y =pm  ± Y =mp  ∓ Y =cap  ∩ Y =cup  ∪
Y =times × Y =div  ÷ Y =sqcap  ⊓ Y =sqcup  ⊔
Y =ast  ∗ Y =star  ⋆ Y =vee  ∨ Y =wedge  ∧
Y =wr  ≀ Y =setminus \ Y =dagger  † Y =ddagger ‡
Y =cdot  · Y =bullet  • Y =circ  ∘ Y =bigcirc ◯
Y =uplus ⊎ Y =odot  ⊙ Y =diamond ⋄ Y =amalg  ⨿
Y =oplus ⊕ Y =ominus  ⊖ Y =otimes ⊗ Y =oslash ⊘
Y =lhd^{∘} ⊲ Y =rhd^{∘}  ⊳ Y =unlhd^{∘} ⊴ Y =unrhd^{∘}  ⊵
Y =bigtriangleup  △ Y =bigtriangledown  ▽
Y =triangleleft  ◁ Y =triangleright  ▷

[∘] がついた命令は latexsym パッケージが必要。

$+a$  → +a (unary operator),
${}+a$ → + a (binary operator).

Delimiters

I  O I  O I  O I  O

(  ( )  ) |  | Y =|  ∥
[  [ ]  ] /  / Y =backslash \
Y ={  { Y =}  } Y =langle ⟨ Y =rangle  ⟩
Y =lceil ⌈ Y =rceil ⌉ Y =lfloor ⌊ Y =rfloor  ⌋

以下の 4 つについては amsmath パッケージが必要。

In Remark In Remark
Y =lvert 左括弧としての | Y =rvert 右括弧としての |
Y =lVert 左括弧としての ∥ Y =rVert 右括弧としての ∥

Y =biglY ={, Y =bigm|, etc.

produce the bigger delimiters.

  Y =big      Y =Big      Y =bigg      Y =Bigg
  Y =bigm     Y =Bigm     Y =biggm     Y =Biggm  (middle)
  Y =bigl     Y =Bigl     Y =biggl     Y =Biggl  (left pair)
  Y =bigr     Y =Bigr     Y =biggr     Y =Biggr  (right pair)

 $Y =bigl( Y =Bigl( Y =biggl( Y =Biggl($ → ((((
 Y =[ {d Y =bigl( Y =sqrt{x+1} Y =bigr)
           Y =over dx} Y =Bigr|_{x=0} Y =]

→ \frac{d(\sqrt{x + 1})}{dx} |_{x=0}

Y =leftdelim expressionY =rightdelim selects the suitable sized delimiters for the expression.

 Y =[ Y =left({Y =left((x+y)^2Y =right)Y =over2}Y =right) Y =]

→ ( \frac{((x + y)^{2})}{2} )

 Y =[ Y =leftY ={a_k Y =bigm| kY =inY ={1,2,3Y =} Y =rightY =} Y =]

→ {a_{k} | k ∈ {1, 2, 3}}

Miscellaneous symbols

I  O I  O I  O I  O

Y =aleph ℵ Y =prime       ′ Y =forall ∀ Y =clubsuit  ♣
Y =hbar ℏ Y =partial  ∂ Y =exists ∃ Y =spadesuit  ♠
Y =imath ı Y =nabla  ∇ Y =Box^{∘}  □ Y =heartsuit  ♡
Y =jmath ȷ Y =triangle △ Y =neg  ¬ Y =diamondsuit ♢
Y =ell  ℓ Y =infty  ∞ Y =top  ⊤ Y =Diamond^{∘}  ◇
Y =wp  ℘ Y =|  ∥ Y =bot  ⊥ Y =flat  ♭
Y =Re  ℜ Y =backslash \ Y =angle ∠ Y =natural  ♮
Y =Im  ℑ Y =emptyset  ∅ Y =surd     √ Y =sharp  ♯
Y =mho^{∘} ℧

[∘] がついた命令は latexsym パッケージが必要。 Relation symbols

I  O I  O I  O I  O

Y =le(Y =leq) ≤ Y =ge(Y =geq) ≥ Y =subset  ⊂ Y =supset  ⊃
Y =prec  ≺ Y =succ  ≻ Y =subseteq  ⊆ Y =supseteq  ⊇
Y =preceq  ⪯ Y =succeq  ⪰ Y =sqsubset^{∘}  ⊏ Y =sqsupset^{∘} ⊐
Y =ll  ≪ Y =gg  ≫ Y =sqsubseteq ⊑ Y =sqsupseteq ⊒
Y =in  ∈ Y =ni  ∋ Y =vdash  ⊢ Y =dashv  ⊣
Y =notin     ∉ Y =propto  ∝ Y =models  ⊧ Y =perp  ⊥
Y =neq  ≠ Y =equiv  ≡ Y =doteq        ≐ Y =cong         ≅
Y =sim  ∼ Y =simeq  ≃ Y =approx  ≈ Y =asymp  ≍
Y =smile  ⌣ Y =frown  ⌢ Y =mid  | Y =parallel  ∥
Y =bowtie  ▷◁ Y =Join^{∘}  ⋈

[∘] がついた命令は latexsym パッケージが必要。

Y =notop 否定演算子を作る。

 If $x Y =not< y$ then $x Y =notY =leq y-1$

→ If x ≮ y then x ≰ y − 1.

Arrow symbols

I  O  I  O

Y =leftarrow (Y =gets)  ← Y =rightarrow (Y =to)  →
Y =uparrow  ↑  Y =downarrow  ↓
Y =longleftarrow  ⟵ Y =longrightarrow  ⟶
Y =Leftarrow  ⇐ Y =Rightarrow  ⇒
Y =Uparrow  ⇑  Y =Downarrow  ⇓
Y =Longleftarrow  ⟸ Y =Longrightarrow  ⟹
Y =leftrightarrow  ↔ Y =Leftrightarrow  ⇔
Y =updownarrow  ↕  Y =Updownarrow  ⇕
Y =longleftrightarrow ⟷ Y =Longleftrightarrow ⟺
Y =hookleftarrow  ↩ Y =hookrightarrow  ↪
Y =nwarrow  ↖ Y =nearrow  ↗
Y =swarrow  ↙ Y =searrow  ↘
Y =leftharpoonup  ↼ Y =rightharpoonup  ⇀
Y =leftharpoondown  ↽ Y =rightharpoondown  ⇁
Y =rightleftharpoons  ⇌  Y =leadsto^{∘}  ⇝
Y =mapsto  ↦ Y =longmapsto  ⟼

[∘] がついた命令は latexsym パッケージが必要。

$A Y =Longleftrightarrow B$ → A ⟺ B
$A Y =iff B$  → A ⟺ B

Y =xleftarrow[under]{top}^{†},
Y =xrightarrow[under]{top}^{†}
左向き (Y =xleftarrow)/右向き (Y =xrightarrow) 矢印の下に under、上

に top を出力する。 Variable-sized symbols

I  O(T) O(D) I  O(T)  O(D)

Y =prod        ∏  ∏  Y =coprod       ∐  ∐
Y =int         ∫  ∫  Y =oint         ∮  ∮
Y =bigcap      ⋂  ⋂  Y =bigcup       ⋃  ⋃
Y =bigsqcup    ⨆  ⨆  Y =sum          ∑  ∑
Y =bigodot     ⨀  ⨀  Y =bigotimes    ⨂  ⨂
Y =bigoplus    ⨁  ⨁  Y =biguplus     ⨄  ⨄
Y =bigvee      ⋁  ⋁  Y =bigwedge     ⋀  ⋀
Y =iint^{†}  ∫∫  ∫∫  Y =iiint^{†}  ∫∫∫  ∫∫∫

Y =iiiint^{†}  ∫∫∫∫ ∫∫∫∫  Y =idotsint^{†}  ∫ ··· ∫ ∫ ⋯ ∫

$Y =sum_{i=1}^n x_i=Y =int_0^1 f$

→ ∑_{i=1}^{n} x_{i} = ∫_{0}^{1} f,

$Y =displaystyle Y =sum_{i=1}^n x_i=Y =int_0^1 f$

→ ∑_{i=1}^{n} x_{i} = ∫_{0}^{1} f.

Y =begin{subarray}{pos}...Y =end{subarray}^{†}

二行以上の添字を出力する。改行は Y =Y =。 pos には c(中央寄せ) もしくは l(左寄せ) を指定する。

_{Y =begin{subarray}{c}...Y =Y =...Y =end{subarray}} のように用いる。
Y =substack{contents}^{†}

subarray 環境を命令にしたもの。 pos を指定することはできない。

Y =sideset{left}{right}operator^{†} 次に続く演算子の左右に記号をつける。内部で上付/下付の指定も可。 Log-like functions

I  O  I  O  I  O  I  O

Y =arccos   arccos Y =csc   csc Y =ker       ker  Y =min    min
Y =arcsin   arcsin Y =deg   deg Y =lg         lg  Y =Pr     Pr
Y =arctan   arctan Y =det   det Y =lim       lim  Y =sec    sec
Y =arg       arg  Y =dim   dim Y =liminf   lim inf Y =sin    sin
Y =cos       cos  Y =exp   exp Y =limsup   lim sup Y =sinh   sinh
Y =cosh     cosh  Y =gcd   gcd Y =ln         ln  Y =sup    sup
Y =cot       cot  Y =hom   hom Y =log       log  Y =tan    tan
Y =coth     coth  Y =inf   inf Y =max       max  Y =tanh   tanh

I  O I  O

Y =varinjlim^{†}  \underrightarrow{lim} Y =varprojlim^{†}  \underleftarrow{lim}
Y =varlimsup^{†}  \overline{lim} Y =varliminf^{†}  \underline{lim}

Y =DeclareMathOperator{cmd}{dif },
Y =DeclareMathOperator*{cmd}{dif }

新しい log-like 演算子を定義する。 * がない命令では、ディスプレイスタイルで添字は右側に、 * がある命令では添字は下に当てられる。 cmd にコマンド名、 dif に内容を書く。

$Y =lim_{nY =toY =infty} a_n=0$

→ lim_{n→∞} a_{n} = 0,

$Y =displaystyle Y =lim_{nY =toY =infty} a_n=0$

→ lim_{n→∞} a_{n} = 0.

$a Y =bmod m = 0 $ → a mod m = 0
$a Y =equiv 0 Y =pmod{m}$ → a ≡ 0 (mod m)

24.3.1 AMSfont symbols

これらの記号を使うためには、 amssymb パッケージが必要です。

Greek and Hebraic letterl

I  O I  O I  O

Y =digamma 𝟋 Y =varkappa κ Y =beth ℶ
Y =daleth ℸ Y =gimel  ℷ

Binary operation symbols

I  O I  O I  O

Y =curlywedge ⋏ Y =leftthreetimes ⋋ Y =boxplus  ⊞
Y =curlyvee  ⋎ Y =rightthreetimes ⋌ Y =boxtimes  ⊠
Y =doublecap ⋒ Y =dotplus  ∔ Y =circleddash ⊝
Y =doublecup ⋓ Y =smallsetminus  ∖ Y =circledast ⊛
Y =barwedge  ⊼ Y =doublebarwedge ⩞ Y =circledcirc ⊚
Y =veebar  ⊻ Y =divideontimes  ⋇ Y =centerdot  ▪
Y =ltimes  ⋉ Y =boxminus  ⊟ Y =intercal  ⊺
Y =rtimes  ⋊ Y =boxdot  ⊡

Relation symbols

I  O I  O I  O

Y =leqq  ≦ Y =leqslant  ⩽ Y =eqslantless  ⪕
Y =geqq  ≧ Y =geqslant  ⩾ Y =eqslantgtr  ⪖
Y =lesssim  ≲ Y =gtrsim  ≳ Y =preccurlyeq  ≼
Y =lessapprox ⪅ Y =gtrapprox  ⪆ Y =succcurlyeq  ≽
Y =lessdot  ⋖ Y =gtrdot  ⋗ Y =curlyeqprec  ⋞
Y =lll  ≪ Y =ggg  ≫ Y =curlyeqsucc  ⋟
Y =lessgtr  ≶ Y =gtrless  ≷ Y =vartriangleleft  ◁
Y =lesseqgtr  ⋚ Y =gtreqless  ⋛ Y =vartriangleright  ▷
Y =lesseqqgtr ⪋ Y =gtreqqless ⪌ Y =trianglelefteq  ⊴
Y =subseteqq  ⫅ Y =supseteqq  ⫆ Y =trianglerighteq  ⊵
Y =Subset  ⋐ Y =Supset  ⋑ Y =blacktriangleleft ◀
Y =sqsubset  ⊏ Y =sqsupset  ⊐ Y =blacktriangleright ▶
Y =precsim  ≾ Y =succsim  ≿ Y =doteqdot  ≑
Y =precapprox ≾ Y =succapprox ≿ Y =risingdotseq  ≓
Y =backsim  ∽ Y =backsimeq  ⋍ Y =fallingdotseq  ≒
Y =eqcirc  ≖ Y =circeq  ≗ Y =approxeq  ≊
Y =triangleq  ≜ Y =vDash  ⊨ Y =thickapprox  ≈
Y =smallsmile ⌣ Y =Vvdash  ⊪ Y =thicksim  ∼
Y =smallfrown ⌢ Y =Vdash  ⊩ Y =bumpeq  ≏
Y =varpropto  ∝ Y =shortmid  ∣  Y =Bumpeq  ≎
Y =between  ≬ Y =pitchfork  ⋔ Y =shortparallel  ∥
Y =because  ∵ Y =therefore  ∴ Y =backepsilon  ϶

Delimiter

I  O I  O

Y =ulcorner ⌜ Y =lrcorner ⌟
Y =urcorner ⌝ Y =llcorner ⌞

Negative relation symbols

I  O I  O I  O

Y =nless  ≮ Y =ngtr  ≯ Y =precnapprox  ⪹
Y =nleq  ≰ Y =ngeq  ≱ Y =succnapprox  ⪺
Y =nleqslant ⩽̸ Y =ngeqslant ⩾̸ Y =ntriangleleft  ⋪
Y =nleqq  ≦̸ Y =ngeqq  ≧̸ Y =ntriangleright  ⋫
Y =lneq  ⪇ Y =gneq  ⪈ Y =ntrianglelefteq ⋬
Y =lneqq  ≨ Y =gneqq  ≩ Y =ntrianglerighteq ⋭
Y =lvertneqq ≨ Y =gvertneqq ≩ Y =nsubseteqq  ⫅̸
Y =lnsim  ⋦ Y =gnsim  ⋧ Y =nsupseteqq  ⫆̸
Y =lnapprox ⪉ Y =gnapprox ⪊ Y =varsubsetneq  ⊊
Y =nprec  ⊀ Y =nsucc  ⊁ Y =varsupsetneq  ⊋
Y =npreceq  ⪯̸ Y =nsucceq  ⪰̸ Y =subsetneqq  ⫋
Y =precneqq ⪵ Y =succneqq ⪶ Y =supsetneqq  ⫌
Y =precnsim ⋨ Y =succnsim ⋩ Y =varsubsetneqq  ⫋
Y =nvdash  ⊬ Y =nvDash  ⊭ Y =varsupsetneqq  ⫌
Y =nVdash  ⊮ Y =nVDash  ⊯ Y =nsubseteq  ⊈
Y =nsim  ≁ Y =nshortmid ∤ Y =nsupseteq  ⊉
Y =ncong  ≇ Y =nmid  ∤ Y =nparallel  ∦
Y =subsetneq ⊊ Y =supsetneq ⊋ Y =nshortparallel  ∦

Arrows

I  O I  O

Y =leftleftarrows  ⇇ Y =rightrightarrows  ⇉
Y =leftrightarrows  ⇆ Y =rightleftarrows  ⇄
Y =Lleftarrow  ⇚ Y =Rrightarrow  ⇛
Y =twoheadleftarrow ↞ Y =twoheadrightarrow  ↠
Y =leftarrowtail  ↢ Y =rightarrowtail  ↣
Y =looparrowleft  ↫ Y =looparrowright  ↬
Y =leftrightharpoons ⇋ Y =rightleftharpoons  ⇌
Y =curvearrowleft  ↶ Y =curvearrowright  ↷
Y =circlearrowleft  ⟲ Y =circlearrowright  ⟳
Y =Lsh  ↰ Y =Rsh  ↱
Y =upuparrows  ⇈ Y =downdownarrows  ⇊
Y =upharpoonleft  ↿ Y =upharpoonright  ↾
Y =downharpoonleft  ⇃ Y =downharpoonright  ⇂
Y =rightsquigarrow  ⇝ Y =leftrightsquigarrow ↭
Y =nleftarrow  ↚ Y =nrightarrow  ↛
Y =nLeftarrow  ⇍ Y =nRightarrow  ⇏
Y =nleftrightarrow  ↮ Y =nLeftrightarrow  ⇎
Y =multimap  ⊸

Symbols

I  O I  O

Y =hslash  ℏ Y =nexists  ∄
Y =blacksquare  ■ Y =vartriangle  △
Y =mho  ℧ Y =blacklozenge  ♦
Y =triangledown  ▽ Y =backprime  ‵
Y =bigstar  ⋆ Y =square  □
Y =varnothing  ∅ Y =sphericalangle ∢
Y =lozenge  ♢ Y =blacktriangle ▲
Y =complement  ∁ Y =circledS  Ⓢ
Y =blacktriangledown ▼ Y =eth  ð
Y =measuredangle  ∡ Y =checkmark^{⋆}  ✓
Y =circledR^{⋆}  ® Y =yen^{⋆}  Y =
Y =maltese^{⋆}  ✠

[⋆] は数式モード以外でも使用可能。

24.4 Mathematical fonts

Y =mathversion{normal}, Y =unboldmath,
Y =mathversion{bold}, Y =boldmath
数式用のフォントを「normal」 (Y =mathversion{normal},
Y =unboldmath)、または「bold」 (Y =mathversion{bold},

Y =boldmath) にする。数式モードの外で使用する。

Y =text{txt}^{†}

数式モード内でテキスト txt を出力する。

Y =boldsymbol{ex}^{†}

記号も含めて、数式 ex をボールド体で出力する。

Y =pmb{ex}^{†}

記号も含めて、数式 ex をプアマンズボールド体 (フォントを微妙にずらして、疑似的に太字の書体を作る) で出力する。

数式中の変数名として次の書体が利用可能。

Fonts

In  Out  In  Out

Y =mathrm{txt}        ABCdef  Y =mathbf{txt}    ABCdef
Y =mathsf{txt}        ABCdef  Y =mathit{txt}     ABCdef
Y =mathtt{txt}        ABCdef     Y =mathcal{txt}   ABCDEF
Y =mathmc{txt}       ABcd あ亜 Y =mathgt{txt}    ABcd あ亜
Y =mathnormal{txt}   ABCdef

24.5 Arrays

array environment (L^{A}TEX)

    Y =[ Y =left| Y =begin\{array\}\{rcl\} 1   & 1   & 1  Y =Y = a   & b   & c  Y =Y = a^2 & b^2 & c^2 Y =end\{array\} Y =right| Y =] → | \begin{matrix}1 & 1 & 1 \\ a & b & c \\ a^{2} & b^{2} & c^{2} \end{matrix} |

array 環境は tabular 環境とほとんど同じであり、オプションなども同様に扱える。詳しくは tabular 環境の項 (21 章、 18 ページ) 参照。

Y =matrix^{‡} (plain TEX)

    Y =[ Y =left[ Y =matrix\{ 1   & 1   & 1  Y =cr a   & b   & c  Y =cr a^2 & b^2 & c^2 \} Y =right] Y =]  → [ \begin{matrix}1 & 1 & 1 \\ a & b & c \\ a^{2} & b^{2} & c^{2} \end{matrix} ]

matrix 環境は括弧は自分で付ける必要がある。

Y =pmatrix^{‡} (plain TEX)

    Y =[ Y =pmatrix\{ 1   & 1   & 1  Y =cr a   & b   & c  Y =cr a^2 & b^2 & c^2   \} Y =]  → ( \begin{matrix}1 & 1 & 1 \\ a & b & c \\ a^{2} & b^{2} & c^{2} \end{matrix} )

丸括弧が自動的に付けられる。

Y =bordermatrix (plain TEX)

    Y =[ Y =bordermatrix\{ & 1   & 2   & 3  Y =cr 1 & 1   & 1   & 1  Y =cr 2 & a   & b   & c  Y =cr 3 & a^2 & b^2 & c^2   \} Y =]  →  ( \begin{matrix}& 1 & 2 & 3 \\ 1 & 1 & 1 & 1 \\ 2 & a & b & c \\ 3 & a^{2} & b^{2} & c^{2} \end{matrix} )

行列の第 1 行と第 1 列が丸括弧の外に配置される。

※ delarray package

delarray パッケージを用いると、 array 環境の第 2 の引数を括弧でくくることで、 array 環境の外側で Y =left と Y =right を使用したのと同様の効果が得られる。

[Ex. Y =begin{array}({ccc})...Y =end{array}]

25 Postscript packages

25.1 graphics package

Postscript ファイルを張り込んだり、テキストの加工を行なう。

Y =usepackage[opt]{graphics}

opt dviware 名やその他のオプションを指定する。

標準でサポートされている dviware :

       dvips, dvi2ps, dvilaser, dvipsone, pctexps, dvitops,
       dviwindo, emtex, dviwin, pctexhp, oztex, psprint, pubps,
       textures, ln

その他のオプション:

       draft, final, debugshow, hiderotate, hidescale
Y =scalebox{ratio1 }[ratio2 ]{txt}

txt の内容の大きさを ratio1 倍にする。オプション引数を指定すると縦方向の拡大率も指定できる。

Y =resizebox{len}{hght}{txt}

横 len、縦 hght の大きさになるように txt を拡大、縮小、変形する。 len, hght いずれかに ! があると、内容の比率を変えずに大きさを変えることができる。

Y =rotatebox{angle}{txt}

txt を反時計まわりに angle 度回転する。

Y =reflectbox{txt}

txt を左右反転する。

Y =includegraphics[llx,lly][urx,ury]{file}
Y =includegraphics*[llx,lly][urx,ury]{file}

(E)PS ファイル file を取り込む。 * が付くと BoundingBox もしくは指定した範囲をクリップし、 * が付かないと、その外側もテキストに上書きする。

llx, lly, urx, ury 画像の左下の座標 (llx, lly) および右上の座標 (urx, ury)。 [urx, ury] を省略すると [0,0][llx, lly] と指定したことになる。すべて省略するとファイルの BoundingBox から決定される。

Y =graphicspath[dir-list]

グラフィックファイルのあるパスを指定する。ディレクトリはそれぞれ {} で括る必要がある。

例: Y =graphicspath{{eps/}{tiff/}}

25.2 graphicx package

graphics パッケージの拡張版。

Y =usepackage[opt]{graphicx}

opt オプションは graphics パッケージと同じ。

以下のコマンドのオプションで [key-value list] は、 key= value の形式で記述する。オプション名の後ろの () は、 value の数で、値はスペースで区切る。 (ex. bb (4) は、 [bb = a b c d, ...] のように記述する。 ) また (t/f) は、値に true もしくは false を入れる。値が省略されると、 true を指定したものとみなされる。

Y =includegraphics[key-value list]{file}
Y =includegraphics*[key-value list]{file}
Y =includegraphics[llx,lly][textiturx,ury]{file}
Y =includegraphics*[llx,lly][textiturx,ury]{file}

(E)PS ファイル file を取り込む。 ∼ics* はオプションに clip = true を指定するのと同義。 [llx,lly][urx,ury] は graphics パッケージの場合と同じ。ただし urx, ury の省略はできない。オプション :

bb(4) BoundingBox を指定する。値は画像の左下の座標 (a,b) および右上の座標 (c,d)。

bbllx(1), bblly(1), bburx(1), bbury(1) BoundingBox の各値を指

     定する。 [bbllx=a,bblly=b,bburx=c,bbury=d] は
     [bb = a b c d] と等価。
natwidth(1), natheight(1) bb の別の表記法。
     [natwidth=w,natheight=h] は [bb = 0 0 w h] と等価。

viewport(4) ファイルに指定された BoundingBox の値を llx, lly, urx, ury に更新する。

trim(4) トリミングする。値は順に、左、下、右、上から取り除く量。

angle(1) 回転角。

origin(1) 回転の原点。 l,r,c,t,b,B (それぞれ左、右、中心、上、下、ベースライン) のうち、 1 つか 2 つ指定する。

width(1) 画像の幅を指定する (デフォルトの単位は bp)。画像はこの値にあわせてスケールされる。

height(1) 画像の高さを指定する (デフォルトの単位は bp)。画像はこの値にあわせてスケールされる。 totalheight(1) 画像の高さと深さの和を指定する (デフォルトの単位

は bp)。 keepaspectratio(t/f) true であれば、スケールは画像の縦横比を保っ

たままなされる。 scale(1) スケール比。 clip(t/f) true であれば、画像を BoundingBox でクリッピングする。 draft(t/f) true であれば、画像を取り込まずに枠だけ表示する。 type(1) ファイルタイプを指定する (通常は拡張子による判定でよい)。 ext(1) ファイルの拡張子を指定する。 read(1) 画像サイズを決めるために読み込むファイルの拡張子を指定

する。 command(1) ファイルに適用するコマンドを指定する。

Y =rotatebox[key-value list]{angle}{txt} txt を反時計まわりに angle 度回転する。 origin(1) 回転の原点。 l,r,c,t,b,B (それぞれ左、右、中心、上、下、

ベースライン) のうち、 1 つか 2 つ指定する。 x(1), y(1) 回転の原点の座標。 units(1) 回転の単位を指定する。 units=-360 とすると、時計まわり

に angle 度回転させることになる。

Y =scalebox{ratio1 }[ratio2 ]{txt}
Y =resizebox{len}{hght}{txt}
Y =reflectbox{txt}

graphics パッケージの項参照。

25.3 color package

Postscript テキストなどをカラー出力する。

Y =usepackage[opt]{color}

opt dviware 名やその他のオプションを指定する。標準でサポートされている dviware : graphics Package の dviware に加えて、

     xdvi, dvgt, dvialw, pctexwin

標準で定義されている色名 :

     black, white,green, blue, cyan, magenta, yellow

Y =color[key]{color}

以後の文字の色を指定する。

key rgb, cmyk, gray, named のいずれか

color 色の濃度もしくは色名 (named のみ)

     (ex. Y =color[rgb]{1,0,0.5}, Y =color{blue})
Y =textcolor[key]{color}{txt}

txt の色を指定する。 key, color は Y =color コマンドと同じ。

Y =colorbox[key]{color}{txt}

色のついたボックスを作る。 key, color は Y =color コマンドと同じ。

Y =fcolorbox[key]{color1}{color2}{txt}

枠つきの色のついたボックスを作る。 key は Y =color コマンドと同じ。 color1 には枠の色、 color2 にはボックスの色を指定する。

Y =pagecolor[key]{color}

ページの地の色を変更する。 key, color は Y =color コマンドと同じ。

26 Slides class

Y =documentclass[opt]{slides}

Slides クラスを利用する。

opt

     Paper size:  a4paper, a5paper, b5paper, letterpaper,
                     legalpaper, executivepaper.

Paper orientation: landscape.

Title page: titlepage(default で指定されている).

     Equation:  fleqn, leqno, mathindent.

Draft: draft. Time: clock.

Y =begin{slide} . . . Y =end{slide}

ひとまとまりのスライドを記述する。環境が始まる直前は必ず改ページされる。ページ番号は slide 環境ごとに割り振られる。

Y =begin{overlay} . . . Y =end{overlay}

slide 環境と同じ。ただし、ページ番号は直前の slide 環境のものにアルファベットが付加されたもの。 (ex. [3-a],[3-b])

Y =begin{note} . . . Y =end{note}

メモ書きを同時に出力させるための環境。ページ番号は直前の slide 環境のものに数字が追加される。 (ex. [3-1],[3-2])

Y =invisible

invisible フォントを利用する。

Y =visible

通常のフォントを利用する。

27 Hyper TEX

Y =special{html:<a href="address">} jump point Y =special{html:</a>}
Y =special{html:<a name="label">} target point Y =special{html:</a>}

対応する dviware 上で、ハイパーリンクを行なう。同一文書内での参照箇所へのリンクは label の先頭に「#」が必要だが、実際に文章内で利用するためには、

     {Y =makeatletterY =@makeotherY =#%
       Y =special{html:<a name="#LinkPoint">}Y =makeatother}%
     TEXT Y =special{html:</a>}%

のように記述する必要がある。