OSDN Git Service

aca978c08cd2cc2dd88c91c83646d11f43fafe40
[luatex-ja/luatexja.git] / no_runtime / ltjclasses.dtx
1 % \iffalse meta-comment
2 %% File: ltjclasses.dtx
3 %  -----------------------------------------
4 %  Original: jclasses.dtx
5 %
6 %  Copyright 1995-2001 ASCII Corporation.
7 %
8 %  This file is part of the pLaTeX2e system.
9 %  -----------------------------------------
10 %
11 % \fi 
12 %
13 % \CheckSum{4475}
14 %% \CharacterTable
15 %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
16 %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
17 %%   Digits        \0\1\2\3\4\5\6\7\8\9
18 %%   Exclamation   \!     Double quote  \"     Hash (number) \#
19 %%   Dollar        \$     Percent       \%     Ampersand     \&
20 %%   Acute accent  \'     Left paren    \(     Right paren   \)
21 %%   Asterisk      \*     Plus          \+     Comma         \,
22 %%   Minus         \-     Point         \.     Solidus       \/
23 %%   Colon         \:     Semicolon     \;     Less than     \<
24 %%   Equals        \=     Greater than  \>     Question mark \?
25 %%   Commercial at \@     Left bracket  \[     Backslash     \\
26 %%   Right bracket \]     Circumflex    \^     Underscore    \_
27 %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
28 %%   Right brace   \}     Tilde         \~}
29 %%
30 %
31 % \setcounter{StandardModuleDepth}{1}
32 % \StopEventually{}
33 %
34 % \iffalse
35 % \changes{v1.0}{1995/04/19}{first edition}
36 % \changes{v1.0a}{1995/08/30}{ページスタイル部分の調整}
37 % \changes{v1.0b}{1995/11/08}{ページスタイル部分の調整}
38 % \changes{v1.0c}{1996/01/30}{\LaTeX\ \texttt{!<1995/12/01!>}での修正を反映}
39 % \changes{v1.0d}{1996/02/29}{デフォルトページスタイルの修正}
40 % \changes{v1.0e}{1996/03/14}{itemize, enumerate環境の修正}
41 % \changes{v1.0f}{1996/07/10}{面付けオプションを追加}
42 % \changes{v1.0g}{1996/09/03}{トンボの横に作成日時を出力するようにした}
43 % \changes{v1.1}{1997/01/16}{\LaTeX\ \texttt{!<1996/06/01!>}版に対応}
44 % \changes{v1.1a}{1997/01/23}{\LaTeX\ \texttt{!<1996/12/01!>}版に対応}
45 % \changes{v1.1a}{1997/01/25}{互換モードでp\LaTeX~2.09のa4jなどの
46 %      用紙オプションに対応}
47 % \changes{v1.1b}{1997/01/28}{日本語ファミリの宣言を再度、実装}
48 % \changes{v1.1d}{1997/01/29}{2eモードでa4jなどのオプションに対応}
49 % \changes{v1.1e}{1997/04/08}{トップマージンの値を修正}
50 % \changes{v1.1f}{1997/07/08}{縦組クラスでベースラインがおかしいのを修正}
51 % \changes{v1.1g}{1997/08/25}{片面印刷のとき、sectionレベルが出力されない
52 %      のを修正}
53 % \changes{v1.1h}{1997/09/03}{landscape指定時の値を修正}
54 % \changes{v1.1i}{1997/12/12}{report, bookクラスで片面印刷時に、
55 %      bothstyleスタイルにすると、コンパイルエラーになるのを修正}
56 % \changes{v1.1j}{1998/02/03}{互換モード時のa5pのトップマージンを0.7in増加}
57 % \changes{v1.1k}{1998/03/23}{reportとbookクラスで番号を付けない見出しの
58 %   ペナルティが\cs{M@}だったのを\cs{@M}に修正}
59 % \changes{v1.1m}{1998/04/07}{\cs{today}の計算手順を変更}
60 % \changes{v1.1n}{1998/10/13}{report,bookクラスの表番号が
61 %   見出しレベルに関係なくchapter番号が出力されてしまうのを修正}
62 % \changes{v1.1n}{1998/10/13}{mentukeオプションがエラーになっていたのを修正}
63 % \changes{v1.1o}{1998/12/24}{secnumdepthカウンタを$-1$以下にすると、
64 %   見出し文字列も消えてしまうのを修正}
65 % \changes{v1.1p}{1999/1/6}{\cs{oddsidemargin}のポイントへの変換を後ろに}
66 % \changes{v1.1q}{1999/05/18}{縦組時のみに設定するようにした}
67 % \changes{v1.1r}{1999/08/09}{トップマージンの計算式を修正}
68 % \changes{v1.2}{2001/09/04}{\cs{chapter}の出力位置がアスタリスク形式と
69 %   そうでないときと違うのを修正(ありがとう、鈴木@津さん)}
70 % \changes{v1.3}{2001/10/04}{目次のページ番号の書体を\cs{rmfamily}から
71 %   \cs{normalfont}に変更(ありがとう、鈴木た@MILNさん)}
72 % \changes{v1.4}{2002/04/09}{縦組スタイルで\cs{flushbottom}しないようにした}
73 % \changes{v1.5}{2004/01/15}{\cs{part},\cs{chapter}の\cs{@afterindentfalse}を
74 %   \cs{@afterindenttrue}に変更。
75 %   \cs{section},\cs{subsection},\cs{subsubsection}の前後空きの伸縮幅を修正。
76 %   (ありがとうございます、鈴木た@MILNさん)}
77 % \changes{v1.6}{2006/06/27}{フォントコマンドを修正。ありがとう、ymtさん。}
78 % \changes{v1.6-ltj}{2011/09/27}{jclasses.dtx v1.6 をベースに Lua\LaTeX-ja 用に修正。}
79 % \fi
80 %
81 % \iffalse
82 \NeedsTeXFormat{LaTeX2e}
83 %<*driver>
84 \ProvidesFile{ltjclasses.dtx}
85 %</driver>
86 %<*yoko>
87 %<article>\ProvidesClass{ltjarticle}
88 %<report>\ProvidesClass{ltjreport}
89 %<book>\ProvidesClass{ltjbook}
90 %<10pt&!bk>\ProvidesFile{ltjsize10.clo}
91 %<11pt&!bk>\ProvidesFile{ltjsize11.clo}
92 %<12pt&!bk>\ProvidesFile{ltjsize12.clo}
93 %<10pt&bk>\ProvidesFile{ltjbk10.clo}
94 %<11pt&bk>\ProvidesFile{ltjbk11.clo}
95 %<12pt&bk>\ProvidesFile{ltjbk12.clo}
96 %</yoko>
97 %<*tate>
98 %<article>\ProvidesClass{ltjtarticle}
99 %<report>\ProvidesClass{ltjtreport}
100 %<book>\ProvidesClass{ltjtbook}
101 %<10pt&!bk>\ProvidesFile{ltjtsize10.clo}
102 %<11pt&!bk>\ProvidesFile{ltjtsize11.clo}
103 %<12pt&!bk>\ProvidesFile{ltjtsize12.clo}
104 %<10pt&bk>\ProvidesFile{ltjtbk10.clo}
105 %<11pt&bk>\ProvidesFile{ltjtbk11.clo}
106 %<12pt&bk>\ProvidesFile{ltjtbk12.clo}
107 %</tate>
108   [2011/10/03 v1.6-ltj
109 %<article|report|book> Standard LuaLaTeX-ja class]
110 %<10pt|11pt|12pt>  Standard LuaLaTeX-ja file (size option)]
111 %<*driver>
112 ]
113 \documentclass{ltjltxdoc}
114 \GetFileInfo{ltjclasses.dtx}
115 \usepackage[unicode]{hyperref}
116 \title{Lua\LaTeX-ja用 \texttt{jclasses} 互換クラス}
117 \author{Lua\TeX-ja プロジェクト}
118 \date{\filedate}
119 \begin{document}
120   \maketitle
121   \tableofcontents
122   \DocInput{\filename}
123 \end{document}
124 %</driver>
125 % \fi
126 %
127 % \section{はじめに}
128 % このファイルは、Lua\LaTeX-ja 用の |jclasses| 互換クラスファイルです。
129 % v1.6 をベースに作成しています。
130 % \dst{}プログラムによって、横組用のクラスファイルと縦組用のクラスファイル
131 % を作成することができます。
132 %
133 % 次に\dst{}プログラムのためのオプションを示します。
134 %
135 % \DeleteShortVerb{\|}
136 % \begin{center}
137 % \begin{tabular}{l|l}
138 % \emph{オプション} & \emph{意味}\\\hline
139 % article & articleクラスを生成\\
140 % report  & reportクラスを生成\\
141 % book    & bookクラスを生成\\
142 % 10pt    & 10ptサイズの設定を生成\\
143 % 11pt    & 11ptサイズの設定を生成\\
144 % 12pt    & 12ptサイズの設定を生成\\
145 % bk      & bookクラス用のサイズの設定を生成\\
146 % tate    & 縦組用の設定を生成(現在無効)\\
147 % yoko    & 横組用の設定を生成\\
148 % \end{tabular}
149 % \end{center}
150 % \MakeShortVerb{\|}
151 %
152 % \subsection{\texttt{jclasses.dtx} からの主な変更点}
153 % 全ての変更点を知りたい場合は、|jclasses.dtx| と |ltjclasses.dtx| で |diff| を
154 % とって下さい。
155 % \begin{itemize}
156 % \item |disablejfam| オプションを無効化。もし
157 % \begin{quotation}
158 %   |! LaTeX Error: Too many math alphabets used in version ****.|
159 % \end{quotation}
160 % のエラーが起こった場合は、|lualatex-math| パッケージを読み込んでみて下さい。
161 % \item 出力 PDF の用紙サイズが自動的に設定されるようにしてあります。
162 % \item \cs{if西暦}、\cs{西暦}、\cs{和暦}をそれぞれ\cs{ifSeireki}, \cs{Seireki},
163 %   \cs{Wareki} に変更してあります。これはデフォルトの漢字のカテゴリコードが12で
164 %   あるためです。
165 % \end{itemize}
166 %
167 % \section{Lua\TeX-ja の読み込み}
168 % 最初に |luatexja| を読み込みます。
169 %    \begin{macrocode}
170 %<*article|report|book>
171 \RequirePackage{luatexja}
172 %    \end{macrocode}
173 %
174 % \section{オプションスイッチ}
175 % ここでは、後ほど使用するいくつかのコマンドやスイッチを定義しています。
176 %
177 % \begin{macro}{\c@@paper}
178 % 用紙サイズを示すために使います。
179 % A4, A5, B4, B5 用紙はそれぞれ、1, 2, 3, 4 として表されます。
180 %    \begin{macrocode}
181 \newcounter{@paper}
182 %    \end{macrocode}
183 % \end{macro}
184 %
185 % \begin{macro}{\if@landscape}
186 % 用紙を横向きにするかどうかのスイッチです。デフォルトは、縦向きです。
187 %    \begin{macrocode}
188 \newif\if@landscape \@landscapefalse
189 %    \end{macrocode}
190 % \end{macro}
191 %
192 % \begin{macro}{\@ptsize}
193 % 組版をするポイント数の一の位を保存するために使います。
194 % 0, 1, 2 のいずれかです。
195 %    \begin{macrocode}
196 \newcommand{\@ptsize}{}
197 %    \end{macrocode}
198 % \end{macro}
199 %
200 % \begin{macro}{\if@restonecol}
201 % 二段組時に用いるテンポラリスイッチです。
202 %    \begin{macrocode}
203 \newif\if@restonecol
204 %    \end{macrocode}
205 % \end{macro}
206 %
207 % \begin{macro}{\if@titlepage}
208 % タイトルページやアブストラクト(概要)を
209 % 独立したページにするかどうかのスイッチです。
210 % reportとbookスタイルのデフォルトでは、独立したページになります。
211 %    \begin{macrocode}
212 \newif\if@titlepage
213 %<article>\@titlepagefalse
214 %<report|book>\@titlepagetrue
215 %    \end{macrocode}
216 % \end{macro}
217 %
218 % \begin{macro}{\if@openright}
219 % chapterレベルを奇数ページからはじめるかどうかのスイッチです。
220 % reportクラスのデフォルトは、``no''です。
221 % bookクラスのデフォルトは、``yes''です。
222 %    \begin{macrocode}
223 %<!article>\newif\if@openright
224 %    \end{macrocode}
225 % \end{macro}
226 %
227 % \changes{v1.0c}{1995/12/25}{Macro \cs{if@openbib} removed}
228 %
229 % \begin{macro}{\if@mainmatter}
230 % スイッチ|\@mainmatter|が真の場合、本文を処理しています。
231 % このスイッチが偽の場合は、|\chapter|コマンドは見出し番号を出力しません。
232 %    \begin{macrocode}
233 %<book>\newif\if@mainmatter \@mainmattertrue
234 %    \end{macrocode}
235 % \end{macro}
236 %
237 % \begin{macro}{\hour}
238 % \begin{macro}{\minute}
239 %    \begin{macrocode}
240 \hour\time \divide\hour by 60\relax
241 \@tempcnta\hour \multiply\@tempcnta 60\relax
242 \minute\time \advance\minute-\@tempcnta
243 %    \end{macrocode}
244 % \end{macro}
245 % \end{macro}
246 %
247 % \begin{macro}{\if@stysize}
248 % \changes{v1.1a}{1997/01/25}{Add \cs{if@stysize}.}
249 % \LaTeXe~2.09互換モードで、スタイルオプションにa4j, a5pなどが指定された
250 % ときの動作をエミュレートするためのフラグです。
251 %    \begin{macrocode}
252 \newif\if@stysize \@stysizefalse
253 %    \end{macrocode}
254 % \end{macro}
255 %
256 % \begin{macro}{\if@mathrmmc}
257 % 和欧文両対応の数式文字コマンドを有効にするときに用いるフラグです。
258 % マクロの展開順序が複雑になるのを避けるため、
259 % デフォルトではfalseとしてあります。
260 %    \begin{macrocode}
261 \newif\if@mathrmmc \@mathrmmcfalse
262 %    \end{macrocode}
263 % \end{macro}
264 %
265 % \section{オプションの宣言}
266 % ここでは、クラスオプションの宣言を行なっています。
267 %
268 % \subsection{用紙オプション}
269 % 用紙サイズを指定するオプションです。
270 %    \begin{macrocode}
271 \DeclareOption{a4paper}{\setcounter{@paper}{1}%
272   \setlength\paperheight {297mm}%
273   \setlength\paperwidth  {210mm}}
274 \DeclareOption{a5paper}{\setcounter{@paper}{2}%
275   \setlength\paperheight {210mm}
276   \setlength\paperwidth  {148mm}}
277 \DeclareOption{b4paper}{\setcounter{@paper}{3}%
278   \setlength\paperheight {364mm}
279   \setlength\paperwidth  {257mm}}
280 \DeclareOption{b5paper}{\setcounter{@paper}{4}%
281   \setlength\paperheight {257mm}
282   \setlength\paperwidth  {182mm}}
283 %    \end{macrocode}
284 % \changes{v1.0a}{1995/09/26}{Change b4paper width/height 352x250 to 364x257}
285 % \changes{v1.0a}{1995/09/26}{Change b5paper width/height 250x176 to 257x182}
286 % ドキュメントクラスに、以下のオプションを指定すると、通常よりもテキストを
287 % 組み立てる領域の広いスタイルとすることができます。
288 %    \begin{macrocode}
289 %
290 \DeclareOption{a4j}{\setcounter{@paper}{1}\@stysizetrue
291   \setlength\paperheight {297mm}%
292   \setlength\paperwidth  {210mm}}
293 \DeclareOption{a5j}{\setcounter{@paper}{2}\@stysizetrue
294   \setlength\paperheight {210mm}
295   \setlength\paperwidth  {148mm}}
296 \DeclareOption{b4j}{\setcounter{@paper}{3}\@stysizetrue
297   \setlength\paperheight {364mm}
298   \setlength\paperwidth  {257mm}}
299 \DeclareOption{b5j}{\setcounter{@paper}{4}\@stysizetrue
300   \setlength\paperheight {257mm}
301   \setlength\paperwidth  {182mm}}
302 %
303 \DeclareOption{a4p}{\setcounter{@paper}{1}\@stysizetrue
304   \setlength\paperheight {297mm}%
305   \setlength\paperwidth  {210mm}}
306 \DeclareOption{a5p}{\setcounter{@paper}{2}\@stysizetrue
307   \setlength\paperheight {210mm}
308   \setlength\paperwidth  {148mm}}
309 \DeclareOption{b4p}{\setcounter{@paper}{3}\@stysizetrue
310   \setlength\paperheight {364mm}
311   \setlength\paperwidth  {257mm}}
312 \DeclareOption{b5p}{\setcounter{@paper}{4}\@stysizetrue
313   \setlength\paperheight {257mm}
314   \setlength\paperwidth  {182mm}}
315 %    \end{macrocode}
316 %
317 % \subsection{サイズオプション}
318 % 基準となるフォントの大きさを指定するオプションです。
319 %    \begin{macrocode}
320 \if@compatibility
321   \renewcommand{\@ptsize}{0}
322 \else
323   \DeclareOption{10pt}{\renewcommand{\@ptsize}{0}}
324 \fi
325 \DeclareOption{11pt}{\renewcommand{\@ptsize}{1}}
326 \DeclareOption{12pt}{\renewcommand{\@ptsize}{2}}
327 %    \end{macrocode}
328 %
329 % \subsection{横置きオプション}
330 % このオプションが指定されると、用紙の縦と横の長さを入れ換えます。
331 % \changes{v1.1h}{1997/09/03}{オプションの処理時に縦横の値を交換}
332 % \changes{v1.1h}{1997/09/03}{landscapeオプションを互換モードでも有効に}
333 %    \begin{macrocode}
334 \DeclareOption{landscape}{\@landscapetrue
335   \setlength\@tempdima{\paperheight}%
336   \setlength\paperheight{\paperwidth}%
337   \setlength\paperwidth{\@tempdima}}
338 %    \end{macrocode}
339 %
340 % \subsection{トンボオプション}
341 % |tombow|オプションが指定されると、用紙サイズに合わせてトンボを出力します。
342 % このとき、トンボの脇にPDFを作成した日付が出力されます。
343 % 作成日付の出力を抑制するには、|tombow|ではなく、|tombo|と指定をします。
344 % \changes{v1.0g}{1996/09/03}{Add to \cs{@bannertoken}.}
345 % \changes{v1.1a}{1997/01/23}{日付出力オプション}
346 %    \begin{macrocode}
347 \DeclareOption{tombow}{%
348   \tombowtrue \tombowdatetrue
349   \setlength{\@tombowwidth}{.1\p@}%
350   \@bannertoken{%
351      \jobname\space:\space\number\year/\number\month/\number\day
352       (\number\hour:\number\minute)}
353   \maketombowbox}
354 \DeclareOption{tombo}{%
355   \tombowtrue \tombowdatefalse
356   \setlength{\@tombowwidth}{.1\p@}%
357   \maketombowbox}
358 %    \end{macrocode}
359 %
360 % \subsection{面付けオプション}
361 % このオプションが指定されると、トンボオプションを指定したときと同じ
362 % 位置に文章を出力します。作成したPDFをフィルムに面付け出力する場合など
363 % に指定をします。
364 % \changes{v1.0f}{1996/07/10}{面付けオプションを追加}
365 % \changes{v1.1n}{1998/10/13}
366 %     {動作していなかったのを修正。ありがとう、刀祢さん}
367 %    \begin{macrocode}
368 \DeclareOption{mentuke}{%
369   \tombowtrue \tombowdatefalse
370   \setlength{\@tombowwidth}{\z@}%
371   \maketombowbox}
372 %    \end{macrocode}
373 %
374 % \subsection{組方向オプション}
375 % このオプションが指定されると、縦組で組版をします。
376 % しかし Lua\TeX-ja ではまだ縦組は未対応なのでコメントアウトします。
377 % \changes{v1.0g}{1997/01/25}{Insert \cs{hbox}, to switch tate-mode.}
378 % \changes{v1.1d}{1997/02/05}{開始ページがおかしくなるのを修正}
379 % \changes{v1.1f}{1997/07/08}{縦組時にベースラインがおかしくなるのを修正}
380 %    \begin{macrocode}
381 %% \DeclareOption{tate}{%
382 %%   \AtBeginDocument{\tate\message{《縦組モード》}%
383 %%                    \adjustbaseline}%
384 %% }
385 %    \end{macrocode}
386 %
387 % \subsection{両面、片面オプション}
388 % twosideオプションが指定されると、両面印字出力に適した整形を行ないます。
389 %    \begin{macrocode}
390 \DeclareOption{oneside}{\@twosidefalse}
391 \DeclareOption{twoside}{\@twosidetrue}
392 %    \end{macrocode}
393 %
394 % \subsection{二段組オプション}
395 % 二段組にするかどうかのオプションです。
396 %    \begin{macrocode}
397 \DeclareOption{onecolumn}{\@twocolumnfalse}
398 \DeclareOption{twocolumn}{\@twocolumntrue}
399 %    \end{macrocode}
400 %
401 % \subsection{表題ページオプション}
402 % |@titlepage|が真の場合、表題を独立したページに出力します。
403 %    \begin{macrocode}
404 \DeclareOption{titlepage}{\@titlepagetrue}
405 \DeclareOption{notitlepage}{\@titlepagefalse}
406 %    \end{macrocode}
407 %
408 % \subsection{右左起こしオプション}
409 % chapterを右ページあるいは左ページから
410 % はじめるかどうかを指定するオプションです。
411 %    \begin{macrocode}
412 %<!article>\if@compatibility
413 %<book>\@openrighttrue
414 %<!article>\else
415 %<!article>\DeclareOption{openright}{\@openrighttrue}
416 %<!article>\DeclareOption{openany}{\@openrightfalse}
417 %<!article>\fi
418 %    \end{macrocode}
419 %
420 % \subsection{数式のオプション}
421 % \Lopt{leqno}を指定すると、数式番号を数式の左側に出力します。
422 % \Lopt{fleqn}を指定するとディスプレイ数式を左揃えで出力します。
423 %    \begin{macrocode}
424 \DeclareOption{leqno}{\input{leqno.clo}}
425 \DeclareOption{fleqn}{\input{fleqn.clo}}
426 %    \end{macrocode}
427 %
428 % \subsection{参考文献のオプション}
429 % 参考文献一覧を``オープンスタイル''の書式で出力します。
430 % これは各ブロックが改行で区切られ、|\bibindent|のインデントが付く書式です。
431 % \changes{v1.0c}{1995/12/25}{openbibオプションを再実装}
432 %    \begin{macrocode}
433 \DeclareOption{openbib}{%
434 %    \end{macrocode}
435 % 参考文献環境内の最初のいくつかのフックを満たします。
436 %    \begin{macrocode}
437   \AtEndOfPackage{%
438    \renewcommand\@openbib@code{%
439       \advance\leftmargin\bibindent
440       \itemindent -\bibindent
441       \listparindent \itemindent
442       \parsep \z@
443       }%
444 %    \end{macrocode}
445 % そして、|\newblock|を再定義します。
446 %    \begin{macrocode}
447    \renewcommand\newblock{\par}}}
448 %    \end{macrocode}
449 %
450 % \subsection{日本語ファミリ宣言の抑制、和欧文両対応の数式文字}
451 % p\TeX では数式ファミリの数が16個だったので日本語ファミリ宣言を抑制する
452 % |disablejfam| オプションが用意されていましたが、Lua\TeX では Omega 拡張が
453 % 取り込まれて数式ファミリは256個まで使用できるため、このオプションは必要ありません。
454 % ただし、\LaTeXe カーネルでは未だに数式ファミリの数は16個に制限されているので、
455 % 実際に使用可能な数式ファミリの数を増やすためには |lualatex-math| パッケージを
456 % 読み込む必要があることに注意が必要です。
457
458 % |mathrmmc|オプションは、
459 % |\mathrm|と|\mathbf|を和欧文両対応にするためのクラスオプションです。
460 % \changes{v1.1d}{1992/02/04}{disablejfamの判断を間違えてたのを修正}
461 %    \begin{macrocode}
462 \if@compatibility
463   \@mathrmmctrue
464 \else
465   \DeclareOption{disablejfam}{%
466     \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
467   \DeclareOption{mathrmmc}{\@mathrmmctrue}
468 \fi
469 %    \end{macrocode}
470 %
471 %
472 % \subsection{ドラフトオプション}
473 % |draft|オプションを指定すると、オーバフルボックスの起きた箇所に、
474 % 5ptの罫線が引かれます。
475 %    \begin{macrocode}
476 \DeclareOption{draft}{\setlength\overfullrule{5pt}}
477 \DeclareOption{final}{\setlength\overfullrule{0pt}}
478 %</article|report|book>
479 %    \end{macrocode}
480 %
481 % \subsection{オプションの実行}
482 % オプションの実行、およびサイズクラスのロードを行ないます。
483 %    \begin{macrocode}
484 %<*article|report|book>
485 %<*article>
486 %<tate>\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,tate}
487 %<yoko>\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final}
488 %</article>
489 %<*report>
490 %<tate>\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,openany,tate}
491 %<yoko>\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,openany}
492 %</report>
493 %<*book>
494 %<tate>\ExecuteOptions{a4paper,10pt,twoside,onecolumn,final,openright,tate}
495 %<yoko>\ExecuteOptions{a4paper,10pt,twoside,onecolumn,final,openright}
496 %</book>
497 \ProcessOptions\relax
498 %<book&tate>\input{ltjtbk1\@ptsize.clo}
499 %<!book&tate>\input{ltjtsize1\@ptsize.clo}
500 %<book&yoko>\input{ltjbk1\@ptsize.clo}
501 %<!book&yoko>\input{ltjsize1\@ptsize.clo}
502 %    \end{macrocode}
503 % 縦組用クラスファイルの場合は、ここで\file{plext.sty}が読み込まれていました。
504 % Lua\TeX-ja でどうなるかは未定です。
505 % \changes{v1.0e}{1996/03/21}{\cs{usepackage} to \cs{RequirePackage}}
506 %    \begin{macrocode}
507 %<tate>%\RequirePackage{plext}
508 %</article|report|book>
509 %    \end{macrocode}
510 %
511 % \section{フォント}
512 %
513 % Lua\LaTeX-jaの標準では、OTFパッケージ由来のメトリックが使われるようになっています。
514 % 本クラスでは、「p\TeX の組版と互換性をできだけ持たせる」例を提示するため、
515 % \begin{itemize}
516 % \item メトリックを\texttt{min10.tfm}ベースの\texttt{jfm-min.lua}に変更。
517 % \item 明朝とゴシックは両方とも\texttt{jfm-min.lua}を用いるが、
518 %   和文処理用グルー挿入時には「違うメトリックを使用」として思わせる。
519 % \item p\TeX と同様に、「異なるメトリックの2つの和文文字」の間には、両者から定める
520 %   グルーを両方挿入する。
521 % \item calllback を利用し、標準で用いる\texttt{jfm-min.lua}を、段落始めの括弧が全角二分下がりになるように内部で変更している。
522
523 % \end{itemize}
524 %
525 %    \begin{macrocode}
526 %<*article|report|book>
527 \directlua{luatexbase.add_to_callback('luatexja.load_jfm', 
528   function (ji, jn) ji.chars['parbdd'] = 0; return ji end, 
529   'ltj.jclasses_load_jfm', 1)}
530 {\jfont\g=psft:Ryumin-Light:jfm=min } % loading jfm-min.lua
531 \expandafter\let\csname JY3/mc/m/n/10\endcsname\relax
532 \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.962216] psft:Ryumin-Light:jfm=min}{}
533 \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.962216] psft:GothicBBB-Medium:jfm=min;jfmvar=goth}{}
534 \ltjglobalsetparameter{differentjfm=both}
535 \directlua{luatexbase.remove_from_callback('luatexja.load_jfm', 'ltj.jclasses_load_jfm')}
536 %</article|report|book>
537 %    \end{macrocode}
538 %
539 % ここでは、\LaTeX{}のフォントサイズコマンドの定義をしています。
540 % フォントサイズコマンドの定義は、次のコマンドを用います。
541 %
542 % |\@setfontsize||\size|\meta{font-size}\meta{baselineskip}
543 %
544 % \begin{description}
545 % \item[\meta{font-size}] これから使用する、フォントの実際の大きさです。
546 % \item[\meta{baselineskip}] 選択されるフォントサイズ用の通常の
547 %    |\baselineskip|の値です(実際は、|\baselinestretch| * \meta{baselineskip}
548 %    の値です)。
549 % \end{description}
550 %
551 % 数値コマンドは、次のように\LaTeX{}カーネルで定義されています。
552 % \begin{center}
553 % \begin{tabular}{ll@{\qquad}ll@{\qquad}ll}
554 %  \verb=\@vpt= & 5 & \verb=\@vipt= & 6 & \verb=\@viipt= & 7 \\
555 %  \verb=\@viiipt= & 8 & \verb=\@ixpt= & 9 & \verb=\@xpt= & 10 \\
556 %  \verb=\@xipt= & 10.95 & \verb=\@xiipt= & 12 & \verb=\@xivpt= & 14.4\\
557 %  ...
558 %  \end{tabular}
559 %  \end{center}
560 %
561 % \begin{macro}{\normalsize}
562 % \begin{macro}{\@normalsize}
563 % 基本サイズとするユーザレベルのコマンドは|\normalsize|です。
564 % \LaTeX{}の内部では|\@normalsize|を使用します。
565 %
566 % |\normalsize|マクロは、|\abovedisplayskip|と
567 % |\abovedisplayshortskip|、および|\belowdisplayshortskip|の値も設定をします。
568 % |\belowdisplayskip|は、つねに|\abovedisplayskip|と同値です。
569 %
570 % また、リスト環境のトップレベルのパラメータは、つねに|\@listI|で与えられます。
571 %    \begin{macrocode}
572 %<*10pt|11pt|12pt>
573 \renewcommand{\normalsize}{%
574 %<10pt&yoko>    \@setfontsize\normalsize\@xpt{15}%
575 %<11pt&yoko>    \@setfontsize\normalsize\@xipt{15.5}%
576 %<12pt&yoko>    \@setfontsize\normalsize\@xiipt{16.5}%
577 %<10pt&tate>    \@setfontsize\normalsize\@xpt{17}%
578 %<11pt&tate>    \@setfontsize\normalsize\@xipt{17}%
579 %<12pt&tate>    \@setfontsize\normalsize\@xiipt{18}%
580 %<*10pt>
581   \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
582   \abovedisplayshortskip \z@ \@plus3\p@
583   \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
584 %</10pt>
585 %<*11pt>
586   \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
587   \abovedisplayshortskip \z@ \@plus3\p@
588   \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
589 %</11pt>
590 %<*12pt>
591   \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
592   \abovedisplayshortskip \z@ \@plus3\p@
593   \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
594 %</12pt>
595    \belowdisplayskip \abovedisplayskip
596    \let\@listi\@listI}
597 %    \end{macrocode}
598 %
599 % ここで、ノーマルフォントを選択し、初期化をします。
600 % このとき、縦組モードならば、デフォルトのエンコードを変更します。
601 %    \begin{macrocode}
602 %<tate>\def\kanjiencodingdefault{JT3}%
603 %<tate>\kanjiencoding{\kanjiencodingdefault}%
604 \normalsize
605 %    \end{macrocode}
606 % \end{macro}
607 % \end{macro}
608 %
609 % \begin{macro}{\Cht}
610 % \begin{macro}{\Cdp}
611 % \begin{macro}{\Cwd}
612 % \begin{macro}{\Cvs}
613 % \begin{macro}{\Chs}
614 % 基準となる長さの設定をします。これらのパラメータは\file{lltjfont.sty}で定義
615 % されています。
616 %    \begin{macrocode}
617 \setbox0\hbox{\char"3000}% 全角スペース
618 \setlength\Cht{\ht0}
619 \setlength\Cdp{\dp0}
620 \setlength\Cwd{\wd0}
621 \setlength\Cvs{\baselineskip}
622 \setlength\Chs{\wd0}
623 %    \end{macrocode}
624 % \end{macro}
625 % \end{macro}
626 % \end{macro}
627 % \end{macro}
628 % \end{macro}
629 %
630 % \begin{macro}{\small}
631 % |\small|コマンドの定義は、|\normalsize|に似ています。
632 %    \begin{macrocode}
633 \newcommand{\small}{%
634 %<*10pt>
635   \@setfontsize\small\@ixpt{11}%
636   \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
637   \abovedisplayshortskip \z@ \@plus2\p@
638   \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
639   \def\@listi{\leftmargin\leftmargini
640               \topsep 4\p@ \@plus2\p@ \@minus2\p@
641               \parsep 2\p@ \@plus\p@ \@minus\p@
642               \itemsep \parsep}%
643 %</10pt>
644 %<*11pt>
645   \@setfontsize\small\@xpt\@xiipt
646   \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
647   \abovedisplayshortskip \z@ \@plus3\p@
648   \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
649   \def\@listi{\leftmargin\leftmargini
650               \topsep 6\p@ \@plus2\p@ \@minus2\p@
651               \parsep 3\p@ \@plus2\p@ \@minus\p@
652               \itemsep \parsep}%
653 %</11pt>
654 %<*12pt>
655   \@setfontsize\small\@xipt{13.6}%
656   \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
657   \abovedisplayshortskip \z@ \@plus3\p@
658   \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
659   \def\@listi{\leftmargin\leftmargini
660               \topsep 9\p@ \@plus3\p@ \@minus5\p@
661               \parsep 4.5\p@ \@plus2\p@ \@minus\p@
662               \itemsep \parsep}%
663 %</12pt>
664   \belowdisplayskip \abovedisplayskip}
665 %    \end{macrocode}
666 % \end{macro}
667 %
668 % \begin{macro}{\footnotesize}
669 % |\footnotesize|コマンドの定義は、|\normalsize|に似ています。
670 %    \begin{macrocode}
671 \newcommand{\footnotesize}{%
672 %<*10pt>
673   \@setfontsize\footnotesize\@viiipt{9.5}%
674   \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@
675   \abovedisplayshortskip \z@ \@plus\p@
676   \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@
677   \def\@listi{\leftmargin\leftmargini
678               \topsep 3\p@ \@plus\p@ \@minus\p@
679               \parsep 2\p@ \@plus\p@ \@minus\p@
680               \itemsep \parsep}%
681 %</10pt>
682 %<*11pt>
683   \@setfontsize\footnotesize\@ixpt{11}%
684   \abovedisplayskip 8\p@ \@plus2\p@ \@minus4\p@
685   \abovedisplayshortskip \z@ \@plus\p@
686   \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
687   \def\@listi{\leftmargin\leftmargini
688               \topsep 4\p@ \@plus2\p@ \@minus2\p@
689               \parsep 2\p@ \@plus\p@ \@minus\p@
690               \itemsep \parsep}%
691 %</11pt>
692 %<*12pt>
693   \@setfontsize\footnotesize\@xpt\@xiipt
694   \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
695   \abovedisplayshortskip \z@ \@plus3\p@
696   \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
697   \def\@listi{\leftmargin\leftmargini
698               \topsep 6\p@ \@plus2\p@ \@minus2\p@
699               \parsep 3\p@ \@plus2\p@ \@minus\p@
700               \itemsep \parsep}%
701 %</12pt>
702   \belowdisplayskip \abovedisplayskip}
703 %    \end{macrocode}
704 % \end{macro}
705 %
706 % \begin{macro}{\scriptsize}
707 % \begin{macro}{\tiny}
708 % \begin{macro}{\large}
709 % \begin{macro}{\Large}
710 % \begin{macro}{\LARGE}
711 % \begin{macro}{\huge}
712 % \begin{macro}{\Huge}
713 % これらは先ほどのマクロよりも簡単です。これらはフォントサイズを変更する
714 % だけで、リスト環境とディスプレイ数式のパラメータは変更しません。
715 %    \begin{macrocode}
716 %<*10pt>
717 \newcommand{\scriptsize}{\@setfontsize\scriptsize\@viipt\@viiipt}
718 \newcommand{\tiny}{\@setfontsize\tiny\@vpt\@vipt}
719 \newcommand{\large}{\@setfontsize\large\@xiipt{17}}
720 \newcommand{\Large}{\@setfontsize\Large\@xivpt{21}}
721 \newcommand{\LARGE}{\@setfontsize\LARGE\@xviipt{25}}
722 \newcommand{\huge}{\@setfontsize\huge\@xxpt{28}}
723 \newcommand{\Huge}{\@setfontsize\Huge\@xxvpt{33}}
724 %</10pt>
725 %<*11pt>
726 \newcommand{\scriptsize}{\@setfontsize\scriptsize\@viiipt{9.5}}
727 \newcommand{\tiny}{\@setfontsize\tiny\@vipt\@viipt}
728 \newcommand{\large}{\@setfontsize\large\@xiipt{17}}
729 \newcommand{\Large}{\@setfontsize\Large\@xivpt{21}}
730 \newcommand{\LARGE}{\@setfontsize\LARGE\@xviipt{25}}
731 \newcommand{\huge}{\@setfontsize\huge\@xxpt{28}}
732 \newcommand{\Huge}{\@setfontsize\Huge\@xxvpt{33}}
733 %</11pt>
734 %<*12pt>
735 \newcommand{\scriptsize}{\@setfontsize\scriptsize\@viiipt{9.5}}
736 \newcommand{\tiny}{\@setfontsize\tiny\@vipt\@viipt}
737 \newcommand{\large}{\@setfontsize\large\@xivpt{21}}
738 \newcommand{\Large}{\@setfontsize\Large\@xviipt{25}}
739 \newcommand{\LARGE}{\@setfontsize\LARGE\@xxpt{28}}
740 \newcommand{\huge}{\@setfontsize\huge\@xxvpt{33}}
741 \let\Huge=\huge
742 %</12pt>
743 %</10pt|11pt|12pt>
744 %    \end{macrocode}
745 % \end{macro}
746 % \end{macro}
747 % \end{macro}
748 % \end{macro}
749 % \end{macro}
750 % \end{macro}
751 % \end{macro}
752 %
753 %
754 %
755 % \section{レイアウト}
756 %
757 % \subsection{用紙サイズの決定}
758 %
759 % \begin{macro}{\columnsep}
760 % \begin{macro}{\columnseprule}
761 % |\columnsep|は、二段組のときの、左右(あるいは上下)の段間の幅です。
762 % このスペースの中央に|\columnseprule|の幅の罫線が引かれます。
763 % \changes{v1.0g}{1997/01/25}{\cs{columnsep}: 10pt to 3\cs{Cwd} or 2\cs{Cwd}.}
764 %    \begin{macrocode}
765 %<*article|report|book>
766 \if@stysize
767 %<tate>  \setlength\columnsep{3\Cwd}
768 %<yoko>  \setlength\columnsep{2\Cwd}
769 \else
770   \setlength\columnsep{10\p@}
771 \fi
772 \setlength\columnseprule{0\p@}
773 %    \end{macrocode}
774 % \end{macro}
775 % \end{macro}
776 %
777 % \begin{macro}{\pdfpagewidth}
778 % \begin{macro}{\pdfpageheight}
779 % 出力の PDF の用紙サイズをここで設定しておきます。
780 % |tombow| が真のときは2インチ足しておきます。
781 %    \begin{macrocode}
782 \setlength{\@tempdima}{\paperwidth}
783 \setlength{\@tempdimb}{\paperheight}
784 \iftombow
785   \advance \@tempdima 2in
786   \advance \@tempdimb 2in
787 \fi
788 \setlength{\pdfpagewidth}{\@tempdima}
789 \setlength{\pdfpageheight}{\@tempdimb}
790 %    \end{macrocode}
791 % \end{macro}
792 % \end{macro}
793 %
794 % \subsection{段落の形}
795 %
796 % \begin{macro}{\lineskip}
797 % \begin{macro}{\normallineskip}
798 % これらの値は、行が近付き過ぎたときの\TeX の動作を制御します。
799 %    \begin{macrocode}
800 \setlength\lineskip{1\p@}
801 \setlength\normallineskip{1\p@}
802 %    \end{macrocode}
803 % \end{macro}
804 % \end{macro}
805 %
806 % \begin{macro}{\baselinestretch}
807 % これは、|\baselineskip|の倍率を示すために使います。
808 % デフォルトでは、\emph{何もしません}。このコマンドが``empty''でない場合、
809 % |\baselineskip|の指定の\texttt{plus}や\texttt{minus}部分は無視される
810 % ことに注意してください。
811 %    \begin{macrocode}
812 \renewcommand{\baselinestretch}{}
813 %    \end{macrocode}
814 % \end{macro}
815 %
816 % \begin{macro}{\parskip}
817 % \begin{macro}{\parindent}
818 % |\parskip|は段落間に挿入される、縦方向の追加スペースです。
819 % |\parindent|は段落の先頭の字下げ幅です。
820 %    \begin{macrocode}
821 \setlength\parskip{0\p@ \@plus \p@}
822 \setlength\parindent{1\Cwd}
823 %    \end{macrocode}
824 % \end{macro}
825 % \end{macro}
826 %
827 %  \begin{macro}{\smallskipamount}
828 %  \begin{macro}{\medskipamount}
829 %  \begin{macro}{\bigskipamount}
830 % これら3つのパラメータの値は、\LaTeX{}カーネルの中で設定されています。
831 % これらはおそらく、サイズオプションの指定によって変えるべきです。
832 % しかし、\LaTeX~2.09や\LaTeXe{}の以前のリリースの両方との互換性を保つために、
833 % これらはまだ同じ値としています。
834 %    \begin{macrocode}
835 %<*10pt|11pt|12pt>
836 \setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
837 \setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@}
838 \setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
839 %</10pt|11pt|12pt>
840 %    \end{macrocode}
841 %  \end{macro}
842 %  \end{macro}
843 %  \end{macro}
844 %
845 % \begin{macro}{\@lowpenalty}
846 % \begin{macro}{\@medpenalty}
847 % \begin{macro}{\@highpenalty}
848 % |\nopagebreak|と|\nolinebreak|コマンドは、これらのコマンドが置かれた場所に、
849 % ペナルティを起いて、分割を制御します。
850 % 置かれるペナルティは、コマンドの引数によって、
851 % |\@lowpenalty|, |\@medpenalty|, |\@highpenalty|のいずれかが使われます。
852 %    \begin{macrocode}
853 \@lowpenalty   51
854 \@medpenalty  151
855 \@highpenalty 301
856 %</article|report|book>
857 %    \end{macrocode}
858 % \end{macro}
859 % \end{macro}
860 % \end{macro}
861 %
862 % \subsection{ページレイアウト}
863 %
864 % \subsubsection{縦方向のスペース}
865 %
866 % \begin{macro}{\headheight}
867 % \begin{macro}{\headsep}
868 % \begin{macro}{\topskip}
869 % |\headheight|は、ヘッダが入るボックスの高さです。
870 % |\headsep|は、ヘッダの下端と本文領域との間の距離です。
871 % |\topskip|は、本文領域の上端と1行目のテキストのベースラインとの距離です。
872 %    \begin{macrocode}
873 %<*10pt|11pt|12pt>
874 \setlength\headheight{12\p@}
875 %<*tate>
876 \if@stysize
877   \ifnum\c@@paper=2 % A5
878     \setlength\headsep{6mm}
879   \else % A4, B4, B5 and other
880     \setlength\headsep{8mm}
881   \fi
882 \else
883     \setlength\headsep{8mm}
884 \fi
885 %</tate>
886 %<*yoko>
887 %<!bk>\setlength\headsep{25\p@}
888 %<10pt&bk>\setlength\headsep{.25in}
889 %<11pt&bk>\setlength\headsep{.275in}
890 %<12pt&bk>\setlength\headsep{.275in}
891 %</yoko>
892 \setlength\topskip{1\Cht}
893 %    \end{macrocode}
894 % \end{macro}
895 % \end{macro}
896 % \end{macro}
897 %
898 % \begin{macro}{\footskip}
899 % |\footskip|は、本文領域の下端とフッタの下端との距離です。
900 % フッタのボックスの高さを示す、|\footheight|は削除されました。
901 %    \begin{macrocode}
902 %<tate>\setlength\footskip{14mm}
903 %<*yoko>
904 %<!bk>\setlength\footskip{30\p@}
905 %<10pt&bk>\setlength\footskip{.35in}
906 %<11pt&bk>\setlength\footskip{.38in}
907 %<12pt&bk>\setlength\footskip{30\p@}
908 %</yoko>
909 %    \end{macrocode}
910 % \end{macro}
911 %
912 % \begin{macro}{\maxdepth}
913 % \changes{v1.1c}{1995/12/25}{\cs{@maxdepth}の設定を除外した}
914 % \TeX のプリミティブレジスタ|\maxdepth|は、|\topskip|と同じような
915 % 働きをします。|\@maxdepth|レジスタは、つねに|\maxdepth|のコピーでなくては
916 % いけません。これは|\begin{document}|の内部で設定されます。
917 % \TeX{}と\LaTeX~2.09では、|\maxdepth|は\texttt{4pt}に固定です。
918 % \LaTeXe{}では、|\maxdepth|$+$|\topskip|を基本サイズの1.5倍にしたいので、
919 % |\maxdepth|を|\topskip|の半分の値で設定します。
920 %    \begin{macrocode}
921 \if@compatibility
922   \setlength\maxdepth{4\p@}
923 \else
924   \setlength\maxdepth{.5\topskip}
925 \fi
926 %    \end{macrocode}
927 % \end{macro}
928 %
929 % \subsubsection{本文領域}
930 % |\textheight|と|\textwidth|は、本文領域の通常の高さと幅を示します。
931 % 縦組でも横組でも、``高さ''は行数を、``幅''は字詰めを意味します。
932 % 後ほど、これらの長さに|\topskip|の値が加えられます。
933 %
934 % \begin{macro}{\textwidth}
935 % 基本組の字詰めです。
936 %
937 % 互換モードの場合:
938 %    \begin{macrocode}
939 \if@compatibility
940 %    \end{macrocode}
941 % \changes{v1.1a}{1997/01/25}{Add paper option with compatibility mode.}
942 % \changes{v1.1h}{1997/09/03}{landscapeでの指定を追加}
943 % 互換モード:|a4j|や|b5j|のクラスオプションが指定された場合の設定:
944 %    \begin{macrocode}
945   \if@stysize
946     \ifnum\c@@paper=2 % A5
947       \if@landscape
948 %<10pt&yoko>        \setlength\textwidth{47\Cwd}
949 %<11pt&yoko>        \setlength\textwidth{42\Cwd}
950 %<12pt&yoko>        \setlength\textwidth{40\Cwd}
951 %<10pt&tate>        \setlength\textwidth{27\Cwd}
952 %<11pt&tate>        \setlength\textwidth{25\Cwd}
953 %<12pt&tate>        \setlength\textwidth{23\Cwd}
954       \else
955 %<10pt&yoko>        \setlength\textwidth{28\Cwd}
956 %<11pt&yoko>        \setlength\textwidth{25\Cwd}
957 %<12pt&yoko>        \setlength\textwidth{24\Cwd}
958 %<10pt&tate>        \setlength\textwidth{46\Cwd}
959 %<11pt&tate>        \setlength\textwidth{42\Cwd}
960 %<12pt&tate>        \setlength\textwidth{38\Cwd}
961       \fi
962     \else\ifnum\c@@paper=3 % B4
963       \if@landscape
964 %<10pt&yoko>        \setlength\textwidth{75\Cwd}
965 %<11pt&yoko>        \setlength\textwidth{69\Cwd}
966 %<12pt&yoko>        \setlength\textwidth{63\Cwd}
967 %<10pt&tate>        \setlength\textwidth{53\Cwd}
968 %<11pt&tate>        \setlength\textwidth{49\Cwd}
969 %<12pt&tate>        \setlength\textwidth{44\Cwd}
970       \else
971 %<10pt&yoko>        \setlength\textwidth{60\Cwd}
972 %<11pt&yoko>        \setlength\textwidth{55\Cwd}
973 %<12pt&yoko>        \setlength\textwidth{50\Cwd}
974 %<10pt&tate>        \setlength\textwidth{85\Cwd}
975 %<11pt&tate>        \setlength\textwidth{76\Cwd}
976 %<12pt&tate>        \setlength\textwidth{69\Cwd}
977       \fi
978     \else\ifnum\c@@paper=4 % B5
979       \if@landscape
980 %<10pt&yoko>        \setlength\textwidth{60\Cwd}
981 %<11pt&yoko>        \setlength\textwidth{55\Cwd}
982 %<12pt&yoko>        \setlength\textwidth{50\Cwd}
983 %<10pt&tate>        \setlength\textwidth{34\Cwd}
984 %<11pt&tate>        \setlength\textwidth{31\Cwd}
985 %<12pt&tate>        \setlength\textwidth{28\Cwd}
986       \else
987 %<10pt&yoko>        \setlength\textwidth{37\Cwd}
988 %<11pt&yoko>        \setlength\textwidth{34\Cwd}
989 %<12pt&yoko>        \setlength\textwidth{31\Cwd}
990 %<10pt&tate>        \setlength\textwidth{55\Cwd}
991 %<11pt&tate>        \setlength\textwidth{51\Cwd}
992 %<12pt&tate>        \setlength\textwidth{47\Cwd}
993       \fi
994     \else % A4 ant other
995       \if@landscape
996 %<10pt&yoko>        \setlength\textwidth{73\Cwd}
997 %<11pt&yoko>        \setlength\textwidth{68\Cwd}
998 %<12pt&yoko>        \setlength\textwidth{61\Cwd}
999 %<10pt&tate>        \setlength\textwidth{41\Cwd}
1000 %<11pt&tate>        \setlength\textwidth{38\Cwd}
1001 %<12pt&tate>        \setlength\textwidth{35\Cwd}
1002       \else
1003 %<10pt&yoko>        \setlength\textwidth{47\Cwd}
1004 %<11pt&yoko>        \setlength\textwidth{43\Cwd}
1005 %<12pt&yoko>        \setlength\textwidth{40\Cwd}
1006 %<10pt&tate>        \setlength\textwidth{67\Cwd}
1007 %<11pt&tate>        \setlength\textwidth{61\Cwd}
1008 %<12pt&tate>        \setlength\textwidth{57\Cwd}
1009       \fi
1010     \fi\fi\fi
1011   \else
1012 %    \end{macrocode}
1013 % 互換モード:デフォルト設定
1014 %    \begin{macrocode}
1015     \if@twocolumn
1016       \setlength\textwidth{52\Cwd}
1017     \else
1018 %<10pt&!bk&yoko>      \setlength\textwidth{327\p@}
1019 %<11pt&!bk&yoko>      \setlength\textwidth{342\p@}
1020 %<12pt&!bk&yoko>      \setlength\textwidth{372\p@}
1021 %<10pt&bk&yoko>      \setlength\textwidth{4.3in}
1022 %<11pt&bk&yoko>      \setlength\textwidth{4.8in}
1023 %<12pt&bk&yoko>      \setlength\textwidth{4.8in}
1024 %<10pt&tate>      \setlength\textwidth{67\Cwd}
1025 %<11pt&tate>      \setlength\textwidth{61\Cwd}
1026 %<12pt&tate>      \setlength\textwidth{57\Cwd}
1027     \fi
1028   \fi
1029 %    \end{macrocode}
1030 % 2eモードの場合:
1031 %    \begin{macrocode}
1032 \else
1033 %    \end{macrocode}
1034 % 2eモード:|a4j|や|b5j|のクラスオプションが指定された場合の設定:
1035 % 二段組では用紙サイズの8割、一段組では用紙サイズの7割を版面の幅として
1036 % 設定します。
1037 %    \begin{macrocode}
1038   \if@stysize
1039     \if@twocolumn
1040 %<yoko>      \setlength\textwidth{.8\paperwidth}
1041 %<tate>      \setlength\textwidth{.8\paperheight}
1042     \else
1043 %<yoko>      \setlength\textwidth{.7\paperwidth}
1044 %<tate>      \setlength\textwidth{.7\paperheight}
1045     \fi
1046   \else
1047 %    \end{macrocode}
1048 % 2eモード:デフォルト設定
1049 %    \begin{macrocode}
1050 %<tate>    \setlength\@tempdima{\paperheight}
1051 %<yoko>    \setlength\@tempdima{\paperwidth}
1052     \addtolength\@tempdima{-2in}
1053 %<tate>    \addtolength\@tempdima{-1.3in}
1054 %<yoko&10pt>    \setlength\@tempdimb{327\p@}
1055 %<yoko&11pt>    \setlength\@tempdimb{342\p@}
1056 %<yoko&12pt>    \setlength\@tempdimb{372\p@}
1057 %<tate&10pt>    \setlength\@tempdimb{67\Cwd}
1058 %<tate&11pt>    \setlength\@tempdimb{61\Cwd}
1059 %<tate&12pt>    \setlength\@tempdimb{57\Cwd}
1060     \if@twocolumn
1061       \ifdim\@tempdima>2\@tempdimb\relax
1062         \setlength\textwidth{2\@tempdimb}
1063       \else
1064         \setlength\textwidth{\@tempdima}
1065       \fi
1066     \else
1067       \ifdim\@tempdima>\@tempdimb\relax
1068         \setlength\textwidth{\@tempdimb}
1069       \else
1070         \setlength\textwidth{\@tempdima}
1071       \fi
1072     \fi
1073   \fi
1074 \fi
1075 \@settopoint\textwidth
1076 %    \end{macrocode}
1077 % \end{macro}
1078 %
1079 % \begin{macro}{\textheight}
1080 % 基本組の行数です。
1081 %
1082 % 互換モードの場合:
1083 %    \begin{macrocode}
1084 \if@compatibility
1085 %    \end{macrocode}
1086 % \changes{v1.1a}{1997/01/25}{Add paper option with compatibility mode.}
1087 % \changes{v1.1f}{1997/09/03}{landscapeでの指定を追加}
1088 % 互換モード:|a4j|や|b5j|のクラスオプションが指定された場合の設定:
1089 %    \begin{macrocode}
1090   \if@stysize
1091     \ifnum\c@@paper=2 % A5
1092       \if@landscape
1093 %<10pt&yoko>        \setlength\textheight{17\Cvs}
1094 %<11pt&yoko>        \setlength\textheight{17\Cvs}
1095 %<12pt&yoko>        \setlength\textheight{16\Cvs}
1096 %<10pt&tate>        \setlength\textheight{26\Cvs}
1097 %<11pt&tate>        \setlength\textheight{26\Cvs}
1098 %<12pt&tate>        \setlength\textheight{25\Cvs}
1099       \else
1100 %<10pt&yoko>        \setlength\textheight{28\Cvs}
1101 %<11pt&yoko>        \setlength\textheight{25\Cvs}
1102 %<12pt&yoko>        \setlength\textheight{24\Cvs}
1103 %<10pt&tate>        \setlength\textheight{16\Cvs}
1104 %<11pt&tate>        \setlength\textheight{16\Cvs}
1105 %<12pt&tate>        \setlength\textheight{15\Cvs}
1106       \fi
1107     \else\ifnum\c@@paper=3 % B4
1108       \if@landscape
1109 %<10pt&yoko>        \setlength\textheight{38\Cvs}
1110 %<11pt&yoko>        \setlength\textheight{36\Cvs}
1111 %<12pt&yoko>        \setlength\textheight{34\Cvs}
1112 %<10pt&tate>        \setlength\textheight{48\Cvs}
1113 %<11pt&tate>        \setlength\textheight{48\Cvs}
1114 %<12pt&tate>        \setlength\textheight{45\Cvs}
1115       \else
1116 %<10pt&yoko>        \setlength\textheight{57\Cvs}
1117 %<11pt&yoko>        \setlength\textheight{55\Cvs}
1118 %<12pt&yoko>        \setlength\textheight{52\Cvs}
1119 %<10pt&tate>        \setlength\textheight{33\Cvs}
1120 %<11pt&tate>        \setlength\textheight{33\Cvs}
1121 %<12pt&tate>        \setlength\textheight{31\Cvs}
1122       \fi
1123     \else\ifnum\c@@paper=4 % B5
1124       \if@landscape
1125 %<10pt&yoko>        \setlength\textheight{22\Cvs}
1126 %<11pt&yoko>        \setlength\textheight{21\Cvs}
1127 %<12pt&yoko>        \setlength\textheight{20\Cvs}
1128 %<10pt&tate>        \setlength\textheight{34\Cvs}
1129 %<11pt&tate>        \setlength\textheight{34\Cvs}
1130 %<12pt&tate>        \setlength\textheight{32\Cvs}
1131       \else
1132 %<10pt&yoko>        \setlength\textheight{35\Cvs}
1133 %<11pt&yoko>        \setlength\textheight{34\Cvs}
1134 %<12pt&yoko>        \setlength\textheight{32\Cvs}
1135 %<10pt&tate>        \setlength\textheight{21\Cvs}
1136 %<11pt&tate>        \setlength\textheight{21\Cvs}
1137 %<12pt&tate>        \setlength\textheight{20\Cvs}
1138       \fi
1139     \else % A4 and other
1140       \if@landscape
1141 %<10pt&yoko>        \setlength\textheight{27\Cvs}
1142 %<11pt&yoko>        \setlength\textheight{26\Cvs}
1143 %<12pt&yoko>        \setlength\textheight{25\Cvs}
1144 %<10pt&tate>        \setlength\textheight{41\Cvs}
1145 %<11pt&tate>        \setlength\textheight{41\Cvs}
1146 %<12pt&tate>        \setlength\textheight{38\Cvs}
1147       \else
1148 %<10pt&yoko>        \setlength\textheight{43\Cvs}
1149 %<11pt&yoko>        \setlength\textheight{42\Cvs}
1150 %<12pt&yoko>        \setlength\textheight{39\Cvs}
1151 %<10pt&tate>        \setlength\textheight{26\Cvs}
1152 %<11pt&tate>        \setlength\textheight{26\Cvs}
1153 %<12pt&tate>        \setlength\textheight{22\Cvs}
1154       \fi
1155     \fi\fi\fi
1156 %<yoko>    \addtolength\textheight{\topskip}
1157 %<bk&yoko>    \addtolength\textheight{\baselineskip}
1158 %<tate>    \addtolength\textheight{\Cht}
1159 %<tate>    \addtolength\textheight{\Cdp}
1160 %    \end{macrocode}
1161 % 互換モード:デフォルト設定
1162 %    \begin{macrocode}
1163   \else
1164 %<10pt&!bk&yoko>  \setlength\textheight{578\p@}
1165 %<10pt&bk&yoko>  \setlength\textheight{554\p@}
1166 %<11pt&yoko>  \setlength\textheight{580.4\p@}
1167 %<12pt&yoko>  \setlength\textheight{586.5\p@}
1168 %<10pt&tate>  \setlength\textheight{26\Cvs}
1169 %<11pt&tate>  \setlength\textheight{25\Cvs}
1170 %<12pt&tate>  \setlength\textheight{24\Cvs}
1171   \fi
1172 %    \end{macrocode}
1173 % 2eモードの場合:
1174 %    \begin{macrocode}
1175 \else
1176 %    \end{macrocode}
1177 % 2eモード:|a4j|や|b5j|のクラスオプションが指定された場合の設定:
1178 % 縦組では用紙サイズの70\%(book)か78\%(ariticle,report)、
1179 % 横組では70\%(book)か75\%(article,report)を版面の高さに設定します。
1180 %    \begin{macrocode}
1181   \if@stysize
1182 %<tate&bk>    \setlength\textheight{.75\paperwidth}
1183 %<tate&!bk>    \setlength\textheight{.78\paperwidth}
1184 %<yoko&bk>    \setlength\textheight{.70\paperheight}
1185 %<yoko&!bk>    \setlength\textheight{.75\paperheight}
1186 %    \end{macrocode}
1187 % 2eモード:デフォルト値
1188 %    \begin{macrocode}
1189   \else
1190 %<tate>    \setlength\@tempdima{\paperwidth}
1191 %<yoko>    \setlength\@tempdima{\paperheight}
1192     \addtolength\@tempdima{-2in}
1193 %<yoko>    \addtolength\@tempdima{-1.5in}
1194     \divide\@tempdima\baselineskip
1195     \@tempcnta\@tempdima
1196     \setlength\textheight{\@tempcnta\baselineskip}
1197   \fi
1198 \fi
1199 %    \end{macrocode}
1200 % 最後に、|\textheight|に|\topskip|の値を加えます。
1201 %    \begin{macrocode}
1202 \addtolength\textheight{\topskip}
1203 \@settopoint\textheight
1204 %    \end{macrocode}
1205 % \end{macro}
1206 %
1207 % \subsubsection{マージン}
1208 %
1209 % \begin{macro}{\topmargin}
1210 % |\topmargin|は、``印字可能領域''---用紙の上端から1インチ内側---%
1211 % の上端からヘッダ部分の上端までの距離です。
1212 %
1213 % 2.09互換モードの場合:
1214 %    \begin{macrocode}
1215 \if@compatibility
1216 %<*yoko>
1217   \if@stysize
1218     \setlength\topmargin{-.3in}
1219   \else
1220 %<!bk>    \setlength\topmargin{27\p@}
1221 %<10pt&bk>    \setlength\topmargin{.75in}
1222 %<11pt&bk>    \setlength\topmargin{.73in}
1223 %<12pt&bk>    \setlength\topmargin{.73in}
1224   \fi
1225 %</yoko>
1226 %<*tate>
1227   \if@stysize
1228     \ifnum\c@@paper=2 % A5
1229       \setlength\topmargin{.8in}
1230     \else % A4, B4, B5 and other
1231       \setlength\topmargin{32mm}
1232     \fi
1233   \else
1234     \setlength\topmargin{32mm}
1235   \fi
1236   \addtolength\topmargin{-1in}
1237   \addtolength\topmargin{-\headheight}
1238   \addtolength\topmargin{-\headsep}
1239 %</tate>
1240 %    \end{macrocode}
1241 % 2eモードの場合:
1242 %    \begin{macrocode}
1243 \else
1244   \setlength\topmargin{\paperheight}
1245   \addtolength\topmargin{-\headheight}
1246   \addtolength\topmargin{-\headsep}
1247 %<tate>  \addtolength\topmargin{-\textwidth}
1248 %<yoko>  \addtolength\topmargin{-\textheight}
1249   \addtolength\topmargin{-\footskip}
1250 %    \end{macrocode}
1251 % \changes{v1.1e}{1997/04/08}{横組クラスでの調整量を
1252 %      -2.4インチから-2.0インチにした。}
1253 % \changes{v1.1j}{1998/02/03}{互換モード時のa5pのトップマージンを0.7in増加}
1254 %    \begin{macrocode}
1255   \if@stysize
1256     \ifnum\c@@paper=2 % A5
1257       \addtolength\topmargin{-1.3in}
1258     \else
1259       \addtolength\topmargin{-2.0in}
1260     \fi
1261   \else
1262 %<yoko>    \addtolength\topmargin{-2.0in}
1263 %<tate>    \addtolength\topmargin{-2.8in}
1264   \fi
1265 %    \end{macrocode}
1266 % \changes{v1.1d}{1997/02/05}{\cs{tompargin}を半分にするのはアキ領域の計算後}
1267 % \changes{v1.1r}{1999/08/09}{\cs{if@stysize}フラグに限らず半分にする}
1268 %    \begin{macrocode}
1269   \addtolength\topmargin{-.5\topmargin}
1270 \fi
1271 \@settopoint\topmargin
1272 %    \end{macrocode}
1273 % \end{macro}
1274 %
1275 % \begin{macro}{\marginparsep}
1276 % \begin{macro}{\marginparpush}
1277 % |\marginparsep|は、本文と傍注の間にあけるスペースの幅です。
1278 % 横組では本文の左(右)端と傍注、
1279 % 縦組では本文の下(上)端と傍注の間になります。
1280 % |\marginparpush|は、傍注と傍注との間のスペースの幅です。
1281 %    \begin{macrocode}
1282 \if@twocolumn
1283   \setlength\marginparsep{10\p@}
1284 \else
1285 %<tate>  \setlength\marginparsep{15\p@}
1286 %<yoko>  \setlength\marginparsep{10\p@}
1287 \fi
1288 %<tate>\setlength\marginparpush{7\p@}
1289 %<*yoko>
1290 %<10pt>\setlength\marginparpush{5\p@}
1291 %<11pt>\setlength\marginparpush{5\p@}
1292 %<12pt>\setlength\marginparpush{7\p@}
1293 %</yoko>
1294 %    \end{macrocode}
1295 % \end{macro}
1296 % \end{macro}
1297 %
1298 % \begin{macro}{\oddsidemargin}
1299 % \begin{macro}{\evensidemargin}
1300 % \begin{macro}{\marginparwidth}
1301 % まず、互換モードでの長さを示します。
1302 %
1303 % 互換モード、縦組の場合:
1304 %    \begin{macrocode}
1305 \if@compatibility
1306 %<tate>   \setlength\oddsidemargin{0\p@}
1307 %<tate>   \setlength\evensidemargin{0\p@}
1308 %    \end{macrocode}
1309 % 互換モード、横組、bookクラスの場合:
1310 %    \begin{macrocode}
1311 %<*yoko>
1312 %<*bk>
1313 %<10pt>    \setlength\oddsidemargin   {.5in}
1314 %<11pt>    \setlength\oddsidemargin   {.25in}
1315 %<12pt>    \setlength\oddsidemargin   {.25in}
1316 %<10pt>    \setlength\evensidemargin  {1.5in}
1317 %<11pt>    \setlength\evensidemargin  {1.25in}
1318 %<12pt>    \setlength\evensidemargin  {1.25in}
1319 %<10pt>    \setlength\marginparwidth {.75in}
1320 %<11pt>    \setlength\marginparwidth {1in}
1321 %<12pt>    \setlength\marginparwidth {1in}
1322 %</bk>
1323 %    \end{macrocode}
1324 % 互換モード、横組、reportとarticleクラスの場合:
1325 %    \begin{macrocode}
1326 %<*!bk>
1327     \if@twoside
1328 %<10pt>      \setlength\oddsidemargin   {44\p@}
1329 %<11pt>      \setlength\oddsidemargin   {36\p@}
1330 %<12pt>      \setlength\oddsidemargin   {21\p@}
1331 %<10pt>      \setlength\evensidemargin  {82\p@}
1332 %<11pt>      \setlength\evensidemargin  {74\p@}
1333 %<12pt>      \setlength\evensidemargin  {59\p@}
1334 %<10pt>      \setlength\marginparwidth {107\p@}
1335 %<11pt>      \setlength\marginparwidth {100\p@}
1336 %<12pt>      \setlength\marginparwidth {85\p@}
1337     \else
1338 %<10pt>     \setlength\oddsidemargin   {60\p@}
1339 %<11pt>     \setlength\oddsidemargin   {54\p@}
1340 %<12pt>     \setlength\oddsidemargin   {39.5\p@}
1341 %<10pt>     \setlength\evensidemargin  {60\p@}
1342 %<11pt>     \setlength\evensidemargin  {54\p@}
1343 %<12pt>     \setlength\evensidemargin  {39.5\p@}
1344 %<10pt>     \setlength\marginparwidth  {90\p@}
1345 %<11pt>     \setlength\marginparwidth  {83\p@}
1346 %<12pt>     \setlength\marginparwidth  {68\p@}
1347   \fi
1348 %</!bk>
1349 %    \end{macrocode}
1350 % 互換モード、横組、二段組の場合:
1351 %    \begin{macrocode}
1352   \if@twocolumn
1353      \setlength\oddsidemargin  {30\p@}
1354      \setlength\evensidemargin {30\p@}
1355      \setlength\marginparwidth {48\p@}
1356   \fi
1357 %</yoko>
1358 %    \end{macrocode}
1359 % 縦組、横組にかかわらず、スタイルオプション設定ではゼロです。
1360 % \changes{v1.0g}{1997/01/25}{\cs{oddsidemargin}, \cs{evensidemagin}:
1361 %    0pt if specified papersize at \cs{documentstyle} option.}
1362 %    \begin{macrocode}
1363   \if@stysize
1364     \if@twocolumn\else
1365       \setlength\oddsidemargin{0\p@}
1366       \setlength\evensidemargin{0\p@}
1367     \fi
1368   \fi
1369 %    \end{macrocode}
1370 %
1371 % 互換モードでない場合:
1372 %    \begin{macrocode}
1373 \else
1374   \setlength\@tempdima{\paperwidth}
1375 %<tate>  \addtolength\@tempdima{-\textheight}
1376 %<yoko>  \addtolength\@tempdima{-\textwidth}
1377 %    \end{macrocode}
1378 %
1379 % |\oddsidemargin|を計算します。
1380 %    \begin{macrocode}
1381   \if@twoside
1382 %<tate>    \setlength\oddsidemargin{.6\@tempdima}
1383 %<yoko>    \setlength\oddsidemargin{.4\@tempdima}
1384   \else
1385     \setlength\oddsidemargin{.5\@tempdima}
1386   \fi
1387   \addtolength\oddsidemargin{-1in}
1388 %    \end{macrocode}
1389 % \changes{v1.1p}{1999/1/6}{\cs{oddsidemargin}のポイントへの変換を後ろに}
1390 % |\evensidemargin|を計算します。
1391 %    \begin{macrocode}
1392   \setlength\evensidemargin{\paperwidth}
1393   \addtolength\evensidemargin{-2in}
1394 %<tate>  \addtolength\evensidemargin{-\textheight}
1395 %<yoko>  \addtolength\evensidemargin{-\textwidth}
1396   \addtolength\evensidemargin{-\oddsidemargin}
1397   \@settopoint\oddsidemargin % 1999.1.6
1398   \@settopoint\evensidemargin
1399 %    \end{macrocode}
1400 % |\marginparwidth|を計算します。
1401 % ここで、|\@tempdima|の値は、\linebreak
1402 % |\paperwidth| $-$ |\textwidth|です。
1403 % \changes{v1.1d}{1995/11/24}{typo: \cs{marginmarwidth} to \cs{marginparwidth}}
1404 %    \begin{macrocode}
1405 %<*yoko>
1406   \if@twoside
1407     \setlength\marginparwidth{.6\@tempdima}
1408     \addtolength\marginparwidth{-.4in}
1409   \else
1410     \setlength\marginparwidth{.5\@tempdima}
1411     \addtolength\marginparwidth{-.4in}
1412   \fi
1413   \ifdim \marginparwidth >2in
1414     \setlength\marginparwidth{2in}
1415   \fi
1416 %</yoko>
1417 %    \end{macrocode}
1418 %
1419 % 縦組の場合は、少し複雑です。
1420 %    \begin{macrocode}
1421 %<*tate>
1422   \setlength\@tempdima{\paperheight}
1423   \addtolength\@tempdima{-\textwidth}
1424   \addtolength\@tempdima{-\topmargin}
1425   \addtolength\@tempdima{-\headheight}
1426   \addtolength\@tempdima{-\headsep}
1427   \addtolength\@tempdima{-\footskip}
1428   \setlength\marginparwidth{.5\@tempdima}
1429 %</tate>
1430   \@settopoint\marginparwidth
1431 \fi
1432 %    \end{macrocode}
1433 % \end{macro}
1434 % \end{macro}
1435 % \end{macro}
1436 %
1437 %
1438 % \subsection{脚注}
1439 %
1440 % \begin{macro}{\footnotesep}
1441 % |\footnotesep|は、それぞれの脚注の先頭に置かれる``支柱''の高さです。
1442 % このクラスでは、通常の|\footnotesize|の支柱と同じ長さですので、
1443 % 脚注間に余計な空白は入りません。
1444 %    \begin{macrocode}
1445 %<10pt>\setlength\footnotesep{6.65\p@}
1446 %<11pt>\setlength\footnotesep{7.7\p@}
1447 %<12pt>\setlength\footnotesep{8.4\p@}
1448 %    \end{macrocode}
1449 % \end{macro}
1450 %
1451 % \begin{macro}{\footins}
1452 % |\skip\footins|は、本文の最終行と最初の脚注との間の距離です。
1453 %    \begin{macrocode}
1454 %<10pt>\setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@}
1455 %<11pt>\setlength{\skip\footins}{10\p@ \@plus 4\p@ \@minus 2\p@}
1456 %<12pt>\setlength{\skip\footins}{10.8\p@ \@plus 4\p@ \@minus 2\p@}
1457 %    \end{macrocode}
1458 % \end{macro}
1459 %
1460 % \subsection{フロート}
1461 % すべてのフロートパラメータは、\LaTeX{}のカーネルでデフォルトが定義
1462 % されています。そのため、カウンタ以外のパラメータは|\renewcommand|で
1463 % 設定する必要があります。
1464 %
1465 % \subsubsection{フロートパラメータ}
1466 %
1467 % \begin{macro}{\floatsep}
1468 % \begin{macro}{\textfloatsep}
1469 % \begin{macro}{\intextsep}
1470 % フロートオブジェクトが本文のあるページに置かれるとき、
1471 % フロートとそのページにある別のオブジェクトの距離は、
1472 % これらのパラメータで制御されます。これらのパラメータは、一段組モードと
1473 % 二段組モードの段抜きでないフロートの両方で使われます。
1474 %
1475 % |\floatsep|は、ページ上部あるいは下部のフロート間の距離です。
1476 %
1477 % |\textfloatsep|は、ページ上部あるいは下部のフロートと本文との距離です。
1478 %
1479 % |\intextsep|は、本文の途中に出力されるフロートと本文との距離です。
1480 %    \begin{macrocode}
1481 %<*10pt>
1482 \setlength\floatsep    {12\p@ \@plus 2\p@ \@minus 2\p@}
1483 \setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
1484 \setlength\intextsep   {12\p@ \@plus 2\p@ \@minus 2\p@}
1485 %</10pt>
1486 %<*11pt>
1487 \setlength\floatsep    {12\p@ \@plus 2\p@ \@minus 2\p@}
1488 \setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
1489 \setlength\intextsep   {12\p@ \@plus 2\p@ \@minus 2\p@}
1490 %</11pt>
1491 %<*12pt>
1492 \setlength\floatsep    {12\p@ \@plus 2\p@ \@minus 4\p@}
1493 \setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
1494 \setlength\intextsep   {14\p@ \@plus 4\p@ \@minus 4\p@}
1495 %</12pt>
1496 %    \end{macrocode}
1497 % \end{macro}
1498 % \end{macro}
1499 % \end{macro}
1500 %
1501 % \begin{macro}{\dblfloatsep}
1502 % \begin{macro}{\dbltextfloatsep}
1503 % 二段組モードで、|\textwidth|の幅を持つ、段抜きのフロートオブジェクトが
1504 % 本文と同じページに置かれるとき、本文とフロートとの距離は、
1505 % |\dblfloatsep|と|\dbltextfloatsep|によって制御されます。
1506 %
1507 % |\dblfloatsep|は、ページ上部あるいは下部のフロートと本文との距離です。
1508 %
1509 % |\dbltextfloatsep|は、ページ上部あるいは下部のフロート間の距離です。
1510 %    \begin{macrocode}
1511 %<*10pt>
1512 \setlength\dblfloatsep    {12\p@ \@plus 2\p@ \@minus 2\p@}
1513 \setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
1514 %</10pt>
1515 %<*11pt>
1516 \setlength\dblfloatsep    {12\p@ \@plus 2\p@ \@minus 2\p@}
1517 \setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
1518 %</11pt>
1519 %<*12pt>
1520 \setlength\dblfloatsep    {14\p@ \@plus 2\p@ \@minus 4\p@}
1521 \setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
1522 %</12pt>
1523 %    \end{macrocode}
1524 % \end{macro}
1525 % \end{macro}
1526 %
1527 % \begin{macro}{\@fptop}
1528 % \begin{macro}{\@fpsep}
1529 % \begin{macro}{\@fpbot}
1530 % フロートオブジェクトが、独立したページに置かれるとき、
1531 % このページのレイアウトは、次のパラメータで制御されます。
1532 % これらのパラメータは、一段組モードか、二段組モードでの一段出力の
1533 % フロートオブジェクトに対して使われます。
1534 %
1535 % ページ上部では、|\@fptop|の伸縮長が挿入されます。
1536 % ページ下部では、|\@fpbot|の伸縮長が挿入されます。
1537 % フロート間には|\@fpsep|が挿入されます。
1538 %
1539 % なお、そのページを空白で満たすために、|\@fptop|と|\@fpbot|の
1540 % 少なくともどちらか一方に、|plus ...fil|を含めてください。
1541 %    \begin{macrocode}
1542 %<*10pt>
1543 \setlength\@fptop{0\p@ \@plus 1fil}
1544 \setlength\@fpsep{8\p@ \@plus 2fil}
1545 \setlength\@fpbot{0\p@ \@plus 1fil}
1546 %</10pt>
1547 %<*11pt>
1548 \setlength\@fptop{0\p@ \@plus 1fil}
1549 \setlength\@fpsep{8\p@ \@plus 2fil}
1550 \setlength\@fpbot{0\p@ \@plus 1fil}
1551 %</11pt>
1552 %<*12pt>
1553 \setlength\@fptop{0\p@ \@plus 1fil}
1554 \setlength\@fpsep{10\p@ \@plus 2fil}
1555 \setlength\@fpbot{0\p@ \@plus 1fil}
1556 %</12pt>
1557 %    \end{macrocode}
1558 % \end{macro}
1559 % \end{macro}
1560 % \end{macro}
1561 %
1562 % \begin{macro}{\@dblfptop}
1563 % \begin{macro}{\@dblfpsep}
1564 % \begin{macro}{\@dblfpbot}
1565 % 二段組モードでの二段抜きのフロートに対しては、
1566 % これらのパラメータが使われます。
1567 %    \begin{macrocode}
1568 %<*10pt>
1569 \setlength\@dblfptop{0\p@ \@plus 1fil}
1570 \setlength\@dblfpsep{8\p@ \@plus 2fil}
1571 \setlength\@dblfpbot{0\p@ \@plus 1fil}
1572 %</10pt>
1573 %<*11pt>
1574 \setlength\@dblfptop{0\p@ \@plus 1fil}
1575 \setlength\@dblfpsep{8\p@ \@plus 2fil}
1576 \setlength\@dblfpbot{0\p@ \@plus 1fil}
1577 %</11pt>
1578 %<*12pt>
1579 \setlength\@dblfptop{0\p@ \@plus 1fil}
1580 \setlength\@dblfpsep{10\p@ \@plus 2fil}
1581 \setlength\@dblfpbot{0\p@ \@plus 1fil}
1582 %</12pt>
1583 %</10pt|11pt|12pt>
1584 %    \end{macrocode}
1585 % \end{macro}
1586 % \end{macro}
1587 % \end{macro}
1588 %
1589 % \subsubsection{フロートオブジェクトの上限値}
1590 %
1591 % \begin{macro}{\c@topnumber}
1592 % \Lcount{topnumber}は、本文ページの上部に出力できるフロートの最大数です。
1593 %    \begin{macrocode}
1594 %<*article|report|book>
1595 \setcounter{topnumber}{2}
1596 %    \end{macrocode}
1597 % \end{macro}
1598 %
1599 % \begin{macro}{\c@bottomnumber}
1600 % \Lcount{bottomnumber}は、本文ページの下部に出力できるフロートの最大数です。
1601 %    \begin{macrocode}
1602 \setcounter{bottomnumber}{1}
1603 %    \end{macrocode}
1604 % \end{macro}
1605 %
1606 % \begin{macro}{\c@totalnumber}
1607 % \Lcount{totalnumber}は、本文ページに出力できるフロートの最大数です。
1608 %    \begin{macrocode}
1609 \setcounter{totalnumber}{3}
1610 %    \end{macrocode}
1611 % \end{macro}
1612 %
1613 % \begin{macro}{\c@dbltopnumber}
1614 % \Lcount{dbltopnumber}は、二段組時における、本文ページの上部に出力できる
1615 % 段抜きのフロートの最大数です。
1616 %    \begin{macrocode}
1617 \setcounter{dbltopnumber}{2}
1618 %    \end{macrocode}
1619 % \end{macro}
1620 %
1621 % \begin{macro}{\topfraction}
1622 % これは、本文ページの上部に出力されるフロートが占有できる最大の割り合いです。
1623 %    \begin{macrocode}
1624 \renewcommand{\topfraction}{.7}
1625 %    \end{macrocode}
1626 % \end{macro}
1627 %
1628 % \begin{macro}{\bottomfraction}
1629 % これは、本文ページの下部に出力されるフロートが占有できる最大の割り合いです。
1630 %    \begin{macrocode}
1631 \renewcommand{\bottomfraction}{.3}
1632 %    \end{macrocode}
1633 % \end{macro}
1634 %
1635 % \begin{macro}{\textfraction}
1636 % これは、本文ページに最低限、入らなくてはならない本文の割り合いです。
1637 %    \begin{macrocode}
1638 \renewcommand{\textfraction}{.2}
1639 %    \end{macrocode}
1640 % \end{macro}
1641 %
1642 % \begin{macro}{\floatpagefraction}
1643 % これは、フロートだけのページで最低限、入らなくてはならない
1644 % フロートの割り合いです。
1645 %    \begin{macrocode}
1646 \renewcommand{\floatpagefraction}{.5}
1647 %    \end{macrocode}
1648 % \end{macro}
1649 %
1650 % \begin{macro}{\dbltopfraction}
1651 % これは、2段組時における本文ページに、
1652 % 2段抜きのフロートが占めることができる最大の割り合いです。
1653 %    \begin{macrocode}
1654 \renewcommand{\dbltopfraction}{.7}
1655 %    \end{macrocode}
1656 % \end{macro}
1657 %
1658 % \begin{macro}{\dblfloatpagefraction}
1659 % これは、2段組時におけるフロートだけのページに最低限、
1660 % 入らなくてはならない2段抜きのフロートの割り合いです。
1661 %    \begin{macrocode}
1662 \renewcommand{\dblfloatpagefraction}{.5}
1663 %    \end{macrocode}
1664 % \end{macro}
1665 %
1666 %
1667 %
1668 % \section{ページスタイル}\label{sec:pagestyle}
1669 % つぎの6種類のページスタイルを使用できます。
1670 % \pstyle{empty}は\file{latex.dtx}で定義されています。 
1671 %
1672 % \begin{tabular}{ll}
1673 % empty      & ヘッダにもフッタにも出力しない\\
1674 % plain      & フッタにページ番号のみを出力する\\
1675 % headnombre & ヘッダにページ番号のみを出力する\\
1676 % footnombre & フッタにページ番号のみを出力する\\
1677 % headings   & ヘッダに見出しとページ番号を出力する\\
1678 % bothstyle  & ヘッダに見出し、フッタにページ番号を出力する\\
1679 % \end{tabular}
1680 %
1681 % ページスタイル\pstyle{foo}は、|\ps@foo|コマンドとして定義されます。
1682 %
1683 % \begin{macro}{\@evenhead}
1684 % \begin{macro}{\@oddhead}
1685 % \begin{macro}{\@evenfoot}
1686 % \begin{macro}{\@oddfoot}
1687 % これらは|\ps@...|から呼び出され、ヘッダとフッタを出力するマクロです。
1688 %
1689 % \DeleteShortVerb{\|}
1690 % \begin{tabular}{ll}
1691 % |\@oddhead| & 奇数ページのヘッダを出力\\
1692 % |\@oddfoot| & 奇数ページのフッタを出力\\
1693 % |\@evenhead| & 偶数ページのヘッダを出力\\
1694 % |\@evenfoot| & 偶数ページのフッタを出力\\
1695 % \end{tabular}
1696 % \MakeShortVerb{\|}
1697 %
1698 % これらの内容は、横組の場合は|\textwidth|の幅を持つ|\hbox|に入れられ、
1699 % 縦組の場合は|\textheight|の幅を持つ|\hbox|に入れられます。
1700 % \end{macro}
1701 % \end{macro}
1702 % \end{macro}
1703 % \end{macro}
1704 %
1705 % \subsection{マークについて}
1706 % ヘッダに入る章番号や章見出しは、見出しコマンドで実行されるマークコマンドで
1707 % 決定されます。ここでは、実行されるマークコマンドの定義を行なっています。
1708 % これらのマークコマンドは、\TeX{}の|\mark|機能を用いて、
1709 % `left'と`right'の2種類のマークを生成するように定義しています。
1710 %
1711 % \begin{flushleft}
1712 % |\markboth{|\meta{LEFT}|}{|\meta{RIGHT}|}|: 両方のマークに追加します。
1713 %
1714 % |\markright{|\meta{RIGHT}|}|: `右'マークに追加します。
1715 %
1716 % |\leftmark|: |\@oddhead|, |\@oddfoot|, |\@evenhead|, |\@evenfoot|マクロで
1717 %     使われ、現在の``左''マークを出力します。
1718 %     |\leftmark|は\TeX{}の|\botmark|コマンドのような働きをします。
1719 %     初期値は空でなくてはいけません。
1720 %
1721 % |\rightmark|: |\@oddhead|, |\@oddfoot|, |\@evenhead|, |\@evenfoot|マクロで
1722 %     使われ、現在の``右''マークを出力します。
1723 %     |\rightmark|は\TeX{}の|\firstmark|コマンドのような働きをします。
1724 %     初期値は空でなくてはいけません。
1725 % \end{flushleft}
1726 %
1727 % マークコマンドの動作は、左マークの`範囲内の'右マークのために
1728 % 合理的になっています。たとえば、左マークは|\chapter|コマンドによって
1729 % 変更されます。そして右マークは|\section|コマンドによって変更されます。
1730 % しかし、同一ページに複数の|\markboth|コマンドが現れたとき、
1731 % おかしな結果となることがあります。
1732 %
1733 % |\tableofcontents|のようなコマンドは、|\@mkboth|コマンドを用いて、
1734 % あるページスタイルの中でマークを設定しなくてはなりません。
1735 % |\@mkboth|は、|\ps@...|コマンドによって、|\markboth|(ヘッダを設定する)か、
1736 % |\@gobbletwo|(何もしない)に|\let|されます。
1737 %
1738 % \changes{v1.0a}{1995/08/30}{柱の書体がノンブルに影響するバグの修正}
1739 %
1740 % \subsection{plainページスタイル}
1741 % \pstyle{jpl@in}に|\let|するために、ここで定義をします。
1742 %
1743 % \begin{macro}{\ps@plain}
1744 %    \begin{macrocode}
1745 \def\ps@plain{\let\@mkboth\@gobbletwo
1746    \let\ps@jpl@in\ps@plain
1747    \let\@oddhead\@empty
1748    \def\@oddfoot{\reset@font\hfil\thepage\hfil}%
1749    \let\@evenhead\@empty
1750    \let\@evenfoot\@oddfoot}
1751 %    \end{macrocode}
1752 % \end{macro}
1753 %
1754 % \subsection{jpl@inページスタイル}
1755 % \changes{v1.0d}{1996/02/29}{\pstyle{jpl@in}の初期値を定義}
1756 %
1757 % \pstyle{jpl@in}スタイルは、クラスファイル内部で使用するものです。
1758 % \LaTeX{}では、bookクラスを\pstyle{headings}としています。
1759 % しかし、\cs{tableofcontnts}コマンドの内部では\pstyle{plain}として
1760 % 設定されるため、一つの文書でのページ番号の位置が上下に出力される
1761 % ことになります。
1762 %
1763 % そこで、ここでは\cs{tableofcontents}や\cs{theindex}のページスタイル
1764 % を\pstyle{jpl@in}にし、実際に出力される形式は、ほかのページスタイル
1765 % で|\let|をしています。したがって、\pstyle{headings}のとき、目次ページの
1766 % ページ番号はヘッダ位置に出力され、\pstyle{plain}のときには、フッタ位置に
1767 % 出力されます。
1768 %
1769 % ここで、定義をしているのは、その初期値です。
1770 %
1771 % \begin{macro}{\ps@jpl@in}
1772 %    \begin{macrocode}
1773 \let\ps@jpl@in\ps@plain
1774 %    \end{macrocode}
1775 % \end{macro}
1776 %
1777 % \subsection{headnombreページスタイル}
1778 %
1779 % \begin{macro}{\ps@headnombre}
1780 % \pstyle{headnombre}スタイルは、ヘッダにページ番号のみを出力します。
1781 %    \begin{macrocode}
1782 \def\ps@headnombre{\let\@mkboth\@gobbletwo
1783     \let\ps@jpl@in\ps@headnombre
1784 %<yoko>  \def\@evenhead{\thepage\hfil}%
1785 %<yoko>  \def\@oddhead{\hfil\thepage}%
1786 %<tate>  \def\@evenhead{\hfil\thepage}%
1787 %<tate>  \def\@oddhead{\thepage\hfil}%
1788   \let\@oddfoot\@empty\let\@evenfoot\@empty}
1789 %    \end{macrocode}
1790 % \end{macro}
1791 %
1792 % \subsection{footnombreページスタイル}
1793 %
1794 % \begin{macro}{\ps@footnombre}
1795 % \pstyle{footnombre}スタイルは、フッタにページ番号のみを出力します。
1796 %    \begin{macrocode}
1797 \def\ps@footnombre{\let\@mkboth\@gobbletwo
1798     \let\ps@jpl@in\ps@footnombre
1799 %<yoko>  \def\@evenfoot{\thepage\hfil}%
1800 %<yoko>  \def\@oddfoot{\hfil\thepage}%
1801 %<tate>  \def\@evenfoot{\hfil\thepage}%
1802 %<tate>  \def\@oddfoot{\thepage\hfil}%
1803   \let\@oddhead\@empty\let\@evenhead\@empty}
1804 %    \end{macrocode}
1805 % \end{macro}
1806 %
1807 % \subsection{headingsスタイル}
1808 % \pstyle{headings}スタイルは、ヘッダに見出しとページ番号を出力します。
1809 %
1810 % \begin{macro}{\ps@headings}
1811 % このスタイルは、両面印刷と片面印刷とで形式が異なります。
1812 %    \begin{macrocode}
1813 \if@twoside
1814 %    \end{macrocode}
1815 % 横組の場合は、奇数ページが右に、偶数ページが左にきます。
1816 % 縦組の場合は、奇数ページが左に、偶数ページが右にきます。
1817 %    \begin{macrocode}
1818   \def\ps@headings{\let\ps@jpl@in\ps@headnombre
1819     \let\@oddfoot\@empty\let\@evenfoot\@empty
1820 %<yoko>    \def\@evenhead{\thepage\hfil\leftmark}%
1821 %<yoko>    \def\@oddhead{{\rightmark}\hfil\thepage}%
1822 %<tate>    \def\@evenhead{{\leftmark}\hfil\thepage}%
1823 %<tate>    \def\@oddhead{\thepage\hfil\rightmark}%
1824     \let\@mkboth\markboth
1825 %<*article>
1826     \def\sectionmark##1{\markboth{%
1827        \ifnum \c@secnumdepth >\z@ \thesection.\hskip1\zw\fi
1828        ##1}{}}%
1829     \def\subsectionmark##1{\markright{%
1830        \ifnum \c@secnumdepth >\@ne \thesubsection.\hskip1\zw\fi
1831        ##1}}%
1832 %</article>
1833 %<*report|book>
1834   \def\chaptermark##1{\markboth{%
1835      \ifnum \c@secnumdepth >\m@ne
1836 %<book>         \if@mainmatter
1837          \@chapapp\thechapter\@chappos\hskip1\zw
1838 %<book>         \fi
1839      \fi
1840      ##1}{}}%
1841   \def\sectionmark##1{\markright{%
1842      \ifnum \c@secnumdepth >\z@ \thesection.\hskip1\zw\fi
1843      ##1}}%
1844 %</report|book>
1845   }
1846 %    \end{macrocode}
1847 % 片面印刷の場合:
1848 % \changes{v1.1g}{1997/08/25}{片面印刷のとき、sectionレベルが出力されない
1849 %      のを修正}
1850 %    \begin{macrocode}
1851 \else % if not twoside
1852   \def\ps@headings{\let\ps@jpl@in\ps@headnombre
1853     \let\@oddfoot\@empty
1854 %<yoko>    \def\@oddhead{{\rightmark}\hfil\thepage}%
1855 %<tate>    \def\@oddhead{\thepage\hfil\rightmark}%
1856     \let\@mkboth\markboth
1857 %<*article>
1858   \def\sectionmark##1{\markright{%
1859      \ifnum \c@secnumdepth >\m@ne \thesection.\hskip1\zw\fi
1860      ##1}}%
1861 %</article>
1862 %<*report|book>
1863 \def\chaptermark##1{\markright{%
1864    \ifnum \c@secnumdepth >\m@ne
1865 %<book>         \if@mainmatter
1866        \@chapapp\thechapter\@chappos\hskip1\zw
1867 %<book>         \fi
1868    \fi
1869    ##1}}%
1870 %</report|book>
1871   }
1872 \fi
1873 %    \end{macrocode}
1874 % \end{macro}
1875 %
1876 % \subsection{bothstyleスタイル}
1877 %
1878 % \begin{macro}{\ps@bothstyle}
1879 % \pstyle{bothstyle}スタイルは、
1880 % ヘッダに見出しを、フッタにページ番号を出力します。
1881 %
1882 % このスタイルは、両面印刷と片面印刷とで形式が異なります。
1883 % \changes{v1.0d}{1995/08/23}{横組の evenfoot が中央揃えになっていたのを修正}
1884 % \changes{v1.0d}{1996/03/05}{横組で偶数ページと奇数ページの設定が逆なのを修正}
1885 %    \begin{macrocode}
1886 \if@twoside
1887   \def\ps@bothstyle{\let\ps@jpl@in\ps@footnombre
1888 %<*yoko>
1889     \def\@evenhead{\leftmark\hfil}% right page
1890     \def\@evenfoot{\thepage\hfil}% right page
1891     \def\@oddhead{\hfil\rightmark}% left page
1892     \def\@oddfoot{\hfil\thepage}% left page
1893 %</yoko>
1894 %<*tate>
1895     \def\@evenhead{\hfil\leftmark}% right page
1896     \def\@evenfoot{\hfil\thepage}% right page
1897     \def\@oddhead{\rightmark\hfil}% left page
1898     \def\@oddfoot{\thepage\hfil}% left page
1899 %</tate>
1900   \let\@mkboth\markboth
1901 %<*article>
1902   \def\sectionmark##1{\markboth{%
1903      \ifnum \c@secnumdepth >\z@ \thesection.\hskip1\zw\fi
1904      ##1}{}}%
1905   \def\subsectionmark##1{\markright{%
1906      \ifnum \c@secnumdepth >\@ne \thesubsection.\hskip1\zw\fi
1907      ##1}}%
1908 %</article>
1909 %<*report|book>
1910 \def\chaptermark##1{\markboth{%
1911      \ifnum \c@secnumdepth >\m@ne
1912 %<book>         \if@mainmatter
1913          \@chapapp\thechapter\@chappos\hskip1\zw
1914 %<book>         \fi
1915      \fi
1916      ##1}{}}%
1917   \def\sectionmark##1{\markright{%
1918      \ifnum \c@secnumdepth >\z@ \thesection.\hskip1\zw\fi
1919      ##1}}%
1920 %</report|book>
1921   }
1922 %    \end{macrocode}
1923 % \changes{v1.1g}{1997/08/25}{片面印刷のとき、sectionレベルが出力されない
1924 %      のを修正}
1925 % \changes{v1.1i}{1997/12/12}{report, bookクラスで片面印刷時に、
1926 %      bothstyleスタイルにすると、コンパイルエラーになるのを修正}
1927 %    \begin{macrocode}
1928 \else % if one column
1929   \def\ps@bothstyle{\let\ps@jpl@in\ps@footnombre
1930 %<yoko>    \def\@oddhead{\hfil\rightmark}%
1931 %<yoko>    \def\@oddfoot{\hfil\thepage}%
1932 %<tate>    \def\@oddhead{\rightmark\hfil}%
1933 %<tate>    \def\@oddfoot{\thepage\hfil}%
1934     \let\@mkboth\markboth
1935 %<*article>
1936   \def\sectionmark##1{\markright{%
1937      \ifnum \c@secnumdepth >\m@ne \thesection.\hskip1\zw\fi
1938      ##1}}%
1939 %</article>
1940 %<*report|book>
1941   \def\chaptermark##1{\markright{%
1942      \ifnum \c@secnumdepth >\m@ne
1943 %<book>         \if@mainmatter
1944          \@chapapp\thechapter\@chappos\hskip1\zw
1945 %<book>         \fi
1946      \fi
1947      ##1}}%
1948 %</report|book>
1949   }
1950 \fi
1951 %    \end{macrocode}
1952 % \end{macro}
1953 %
1954 % \subsection{myheadingスタイル}
1955 %
1956 % \begin{macro}{\ps@myheadings}
1957 % \changes{v1.0d}{1995/08/23}{横組モードの左右が逆であったのを修正}
1958 % \pstyle{myheadings}ページスタイルは簡潔に定義されています。
1959 % ユーザがページスタイルを設計するときのヒナ型として使用することができます。
1960 %    \begin{macrocode}
1961 \def\ps@myheadings{\let\ps@jpl@in\ps@plain%
1962   \let\@oddfoot\@empty\let\@evenfoot\@empty
1963 %<yoko>  \def\@evenhead{\thepage\hfil\leftmark}%
1964 %<yoko>  \def\@oddhead{{\rightmark}\hfil\thepage}%
1965 %<tate>  \def\@evenhead{{\leftmark}\hfil\thepage}%
1966 %<tate>  \def\@oddhead{\thepage\hfil\rightmark}%
1967   \let\@mkboth\@gobbletwo
1968 %<!article>  \let\chaptermark\@gobble
1969   \let\sectionmark\@gobble
1970 %<article>  \let\subsectionmark\@gobble
1971 }
1972 %    \end{macrocode}
1973 % \end{macro}
1974 %
1975 %
1976 % \section{文書コマンド}
1977 %
1978 % \subsubsection{表題}
1979 %
1980 % \begin{macro}{\title}
1981 % \begin{macro}{\autor}
1982 % \begin{macro}{\date}
1983 % 文書のタイトル、著者、日付の情報のための、
1984 % これらの3つのコマンドは\file{latex.dtx}で提供されています。
1985 % これらのコマンドは次のように定義されています。
1986 %    \begin{macrocode}
1987 %\newcommand*{\title}[1]{\gdef\@title{#1}}
1988 %\newcommand*{\author}[1]{\gdef\@author{#1}}
1989 %\newcommand*{\date}[1]{\gdef\@date{#1}}
1990 %    \end{macrocode}
1991 % |\date|マクロのデフォルトは、今日の日付です。
1992 %    \begin{macrocode}
1993 %\date{\today}
1994 %    \end{macrocode}
1995 % \end{macro}
1996 % \end{macro}
1997 % \end{macro}
1998 %
1999 % \begin{environment}{titlepage}
2000 % 通常の環境では、ページの最初と最後を除き、タイトルページ環境は何もしません。
2001 % また、ページ番号の出力を抑制します。レポートスタイルでは、
2002 % ページ番号を1にリセットし、そして最後で1に戻します。
2003 % 互換モードでは、ページ番号はゼロに設定されますが、
2004 % 右起こしページ用のページパラメータでは誤った結果になります。
2005 % 二段組スタイルでも一段組のページが作られます。
2006 %
2007 % 最初に互換モードの定義を作ります。
2008 %    \begin{macrocode}
2009 \if@compatibility
2010 \newenvironment{titlepage}
2011     {%
2012 %<book>      \cleardoublepage
2013      \if@twocolumn\@restonecoltrue\onecolumn
2014      \else\@restonecolfalse\newpage\fi
2015      \thispagestyle{empty}%
2016      \setcounter{page}\z@
2017     }%
2018     {\if@restonecol\twocolumn\else\newpage\fi
2019     }
2020 %   \end{macrocode}
2021 %
2022 % そして、\LaTeX{}ネイティブのための定義です。
2023 %   \begin{macrocode}
2024 \else
2025 \newenvironment{titlepage}
2026     {%
2027 %<book>      \cleardoublepage
2028       \if@twocolumn
2029         \@restonecoltrue\onecolumn
2030       \else
2031         \@restonecolfalse\newpage
2032       \fi
2033       \thispagestyle{empty}%
2034       \setcounter{page}\@ne
2035     }%
2036     {\if@restonecol\twocolumn \else \newpage \fi
2037 %    \end{macrocode}
2038 % 二段組モードでなければ、タイトルページの直後のページのページ番号も1に
2039 % します。
2040 %    \begin{macrocode}
2041      \if@twoside\else
2042         \setcounter{page}\@ne
2043      \fi
2044     }
2045 \fi
2046 %    \end{macrocode}
2047 % \end{environment}
2048 %
2049 % \begin{macro}{\maketitle}
2050 % このコマンドは、表題を作成し、出力します。
2051 % 表題ページを独立させるかどうかによって定義が異なります。
2052 % reportとbookクラスのデフォルトは独立した表題です。
2053 % articleクラスはオプションで独立させることができます。
2054 %
2055 % \begin{macro}{\p@thanks}
2056 % 縦組のときは、|\thanks|コマンドを|\p@thanks|に|\let|します。
2057 % このコマンドは|\footnotetext|を使わず、直接、文字を|\@thanks|に格納
2058 % していきます。
2059 %    \begin{macrocode}
2060 \def\p@thanks#1{\footnotemark
2061   \protected@xdef\@thanks{\@thanks
2062     \protect{\noindent$\m@th^\thefootnote$~#1\protect\par}}}
2063 %    \end{macrocode}
2064 % \end{macro}
2065 %
2066 %    \begin{macrocode}
2067 \if@titlepage
2068   \newcommand{\maketitle}{\begin{titlepage}%
2069   \let\footnotesize\small
2070   \let\footnoterule\relax
2071 %<tate>  \let\thanks\p@thanks
2072   \let\footnote\thanks
2073 %    \end{macrocode}
2074 % \changes{v1.1d}{1997/02/12}{縦組クラスの表紙を縦書きにするようにした}
2075 %    \begin{macrocode}
2076 %<tate>  \vbox to\textheight\bgroup\tate\hsize\textwidth
2077   \null\vfil
2078   \vskip 60\p@
2079   \begin{center}%
2080     {\LARGE \@title \par}%
2081     \vskip 3em%
2082     {\Large
2083      \lineskip .75em%
2084       \begin{tabular}[t]{c}%
2085         \@author
2086       \end{tabular}\par}%
2087       \vskip 1.5em%
2088     {\large \@date \par}%       % Set date in \large size.
2089   \end{center}\par
2090 %<tate>  \vfil{\centering\@thanks}\vfil\null
2091 %<tate>  \egroup
2092 %<yoko>  \@thanks\vfil\null
2093   \end{titlepage}%
2094 %    \end{macrocode}
2095 % \Lcount{footnote}カウンタをリセットし、|\thanks|と|\maketitle|コマンドを
2096 % 無効にし、いくつかの内部マクロを空にして格納領域を節約します。
2097 %    \begin{macrocode}
2098   \setcounter{footnote}{0}%
2099   \global\let\thanks\relax
2100   \global\let\maketitle\relax
2101   \global\let\p@thanks\relax
2102   \global\let\@thanks\@empty
2103   \global\let\@author\@empty
2104   \global\let\@date\@empty
2105   \global\let\@title\@empty
2106 %    \end{macrocode}
2107 % タイトルが組版されたら、|\title|コマンドなどの宣言を無効にできます。
2108 % |\and|の定義は、|\author|の引数でのみ使用しますので、破棄します。
2109 %    \begin{macrocode}
2110   \global\let\title\relax
2111   \global\let\author\relax
2112   \global\let\date\relax
2113   \global\let\and\relax
2114   }%
2115 \else
2116   \newcommand{\maketitle}{\par
2117   \begingroup
2118     \renewcommand{\thefootnote}{\fnsymbol{footnote}}%
2119     \def\@makefnmark{\hbox{\ifydir $\m@th^{\@thefnmark}$
2120       \else\hbox{\yoko$\m@th^{\@thefnmark}$}\fi}}%
2121 %<*tate>
2122     \long\def\@makefntext##1{\parindent 1\zw\noindent
2123        \hbox to 2\zw{\hss\@makefnmark}##1}%
2124 %</tate>
2125 %<*yoko>
2126      \long\def\@makefntext##1{\parindent 1em\noindent
2127        \hbox to1.8em{\hss$\m@th^{\@thefnmark}$}##1}%
2128 %</yoko>
2129     \if@twocolumn
2130       \ifnum \col@number=\@ne \@maketitle
2131       \else \twocolumn[\@maketitle]%
2132       \fi
2133     \else
2134       \newpage
2135       \global\@topnum\z@   % Prevents figures from going at top of page.
2136       \@maketitle
2137     \fi
2138      \thispagestyle{jpl@in}\@thanks
2139 %    \end{macrocode}
2140 % ここでグループを閉じ、\Lcount{footnote}カウンタをリセットし、
2141 % |\thanks|, |\maketitle|, |\@maketitle|を無効にし、
2142 % いくつかの内部マクロを空にして格納領域を節約します。
2143 %    \begin{macrocode}
2144   \endgroup
2145   \setcounter{footnote}{0}%
2146   \global\let\thanks\relax
2147   \global\let\maketitle\relax
2148   \global\let\p@thanks\relax
2149   \global\let\@thanks\@empty
2150   \global\let\@author\@empty
2151   \global\let\@date\@empty
2152   \global\let\@title\@empty
2153   \global\let\title\relax
2154   \global\let\author\relax
2155   \global\let\date\relax
2156   \global\let\and\relax
2157   }
2158 %    \end{macrocode}
2159 % \end{macro}
2160 %
2161 % \begin{macro}{\@maketitle}
2162 % 独立した表題ページを作らない場合の、表題の出力形式です。
2163 %    \begin{macrocode}
2164   \def\@maketitle{%
2165   \newpage\null
2166   \vskip 2em%
2167   \begin{center}%
2168 %<yoko>  \let\footnote\thanks
2169 %<tate>  \let\footnote\p@thanks
2170     {\LARGE \@title \par}%
2171     \vskip 1.5em%
2172     {\large
2173       \lineskip .5em%
2174       \begin{tabular}[t]{c}%
2175         \@author
2176       \end{tabular}\par}%
2177     \vskip 1em%
2178     {\large \@date}%
2179   \end{center}%
2180   \par\vskip 1.5em}
2181 \fi
2182 %    \end{macrocode}
2183 % \end{macro}
2184 %
2185 % \subsubsection{概要}
2186 %
2187 % \begin{environment}{abstract}
2188 % 要約文のための環境です。bookクラスでは使えません。
2189 % reportスタイルと、|titlepage|オプションを指定したarticleスタイルでは、
2190 % 独立したページに出力されます。
2191 %    \begin{macrocode}
2192 %<*article|report>
2193 \if@titlepage
2194   \newenvironment{abstract}{%
2195       \titlepage
2196       \null\vfil
2197       \@beginparpenalty\@lowpenalty
2198       \begin{center}%
2199         {\bfseries\abstractname}%
2200         \@endparpenalty\@M
2201       \end{center}}%
2202       {\par\vfil\null\endtitlepage}
2203 \else
2204   \newenvironment{abstract}{%
2205     \if@twocolumn
2206       \section*{\abstractname}%
2207     \else
2208       \small
2209       \begin{center}%
2210         {\bfseries\abstractname\vspace{-.5em}\vspace{\z@}}%
2211       \end{center}%
2212       \quotation
2213     \fi}{\if@twocolumn\else\endquotation\fi}
2214 \fi
2215 %</article|report>
2216 %    \end{macrocode}
2217 % \end{environment}
2218 %
2219 %
2220 % \subsection{章見出し}
2221 %
2222 % \subsection{マークコマンド}
2223 %
2224 % \begin{macro}{\chaptermark}
2225 % \begin{macro}{\sectionmark}
2226 % \begin{macro}{\subsectionmark}
2227 % \begin{macro}{\subsubsectionmark}
2228 % \begin{macro}{\paragraphmark}
2229 % \begin{macro}{\subparagraphmark}
2230 % |\...mark|コマンドを初期化します。これらのコマンドはページスタイルの
2231 % 定義で使われます(第\ref{sec:pagestyle}節参照)。
2232 % これらのたいていのコマンドは\file{latex.dtx}ですでに定義されています。
2233 %    \begin{macrocode}
2234 %<!article>\newcommand*{\chaptermark}[1]{}
2235 %\newcommand*{\sectionmark}[1]{}
2236 %\newcommand*{\subsectionmark}[1]{}
2237 %\newcommand*{\subsubsectionmark}[1]{}
2238 %\newcommand*{\paragraph}[1]{}
2239 %\newcommand*{\subparagraph}[1]{}
2240 %    \end{macrocode}
2241 % \end{macro}
2242 % \end{macro}
2243 % \end{macro}
2244 % \end{macro}
2245 % \end{macro}
2246 % \end{macro}
2247 %
2248 % \subsubsection{カウンタの定義}
2249 %
2250 % \begin{macro}{\c@secnumdepth}
2251 % \Lcount{secnumdepth}には、番号を付ける、見出しコマンドのレベルを設定します。
2252 %    \begin{macrocode}
2253 %<article>\setcounter{secnumdepth}{3}
2254 %<!article>\setcounter{secnumdepth}{2}
2255 %    \end{macrocode}
2256 % \end{macro}
2257 %
2258 % \begin{macro}{\c@chapter}
2259 % \begin{macro}{\c@section}
2260 % \begin{macro}{\c@subsection}
2261 % \begin{macro}{\c@subsubsection}
2262 % \begin{macro}{\c@paragraph}
2263 % \begin{macro}{\c@subparagraph}
2264 % これらのカウンタは見出し番号に使われます。
2265 % 最初の引数は、二番目の引数が増加するたびにリセットされます。
2266 % 二番目のカウンタはすでに定義されているものでなくてはいけません。
2267 %    \begin{macrocode}
2268 \newcounter{part}
2269 %<*book|report>
2270 \newcounter{chapter}
2271 \newcounter{section}[chapter]
2272 %</book|report>
2273 %<article>\newcounter{section}
2274 \newcounter{subsection}[section]
2275 \newcounter{subsubsection}[subsection]
2276 \newcounter{paragraph}[subsubsection]
2277 \newcounter{subparagraph}[paragraph]
2278 %    \end{macrocode}
2279 % \end{macro}
2280 % \end{macro}
2281 % \end{macro}
2282 % \end{macro}
2283 % \end{macro}
2284 % \end{macro}
2285 %
2286 % \begin{macro}{\thepart}
2287 % \begin{macro}{\thechapter}
2288 % \begin{macro}{\thesection}
2289 % \begin{macro}{\thesubsection}
2290 % \begin{macro}{\thesubsubsection}
2291 % \begin{macro}{\theparagraph}
2292 % \begin{macro}{\thesubparagraph}
2293 % |\theCTR|が実際に出力される形式の定義です。
2294 %
2295 % |\arabic{|\Lcount{COUNTER}|}|は、\Lcount{COUNTER}の値を
2296 % 算用数字で出力します。
2297 %
2298 % |\roman{|\Lcount{COUNTER}|}|は、\Lcount{COUNTER}の値を
2299 % 小文字のローマ数字で出力します。
2300 %
2301 % |\Roman{|\Lcount{COUNTER}|}|は、\Lcount{COUNTER}の値を
2302 % 大文字のローマ数字で出力します。
2303 %
2304 % |\alph{|\Lcount{COUNTER}|}|は、\Lcount{COUNTER}の値を
2305 % $1=$~a, $2=$~b のようにして出力します。
2306 %
2307 % |\Roman{|\Lcount{COUNTER}|}|は、\Lcount{COUNTER}の値を
2308 % $1=$~A, $2=$~B のようにして出力します。
2309 %
2310 % |\kansuji{|\Lcount{COUNTER}|}|は、\Lcount{COUNTER}の値を
2311 % 漢数字で出力します。
2312 %
2313 % |\rensuji{|\meta{obj}|}|は、\meta{obj}を横に並べて出力します。
2314 % したがって、横組のときには、何も影響しません。
2315 %
2316 %    \begin{macrocode}
2317 %<*tate>
2318 \renewcommand{\thepart}{\rensuji{\@Roman\c@part}}
2319 %<article>\renewcommand{\thesection}{\rensuji{\@arabic\c@section}}
2320 %<*report|book>
2321 \renewcommand{\thechapter}{\rensuji{\@arabic\c@chapter}}
2322 \renewcommand{\thesection}{\thechapter・\rensuji{\@arabic\c@section}}
2323 %</report|book>
2324 \renewcommand{\thesubsection}{\thesection・\rensuji{\@arabic\c@subsection}}
2325 \renewcommand{\thesubsubsection}{%
2326    \thesubsection・\rensuji{\@arabic\c@subsubsection}}
2327 \renewcommand{\theparagraph}{%
2328    \thesubsubsection・\rensuji{\@arabic\c@paragraph}}
2329 \renewcommand{\thesubparagraph}{%
2330    \theparagraph・\rensuji{\@arabic\c@subparagraph}}
2331 %</tate>
2332 %<*yoko>
2333 \renewcommand{\thepart}{\@Roman\c@part}
2334 %<article>\renewcommand{\thesection}{\@arabic\c@section}
2335 %<*report|book>
2336 \renewcommand{\thechapter}{\@arabic\c@chapter}
2337 \renewcommand{\thesection}{\thechapter.\@arabic\c@section}
2338 %</report|book>
2339 \renewcommand{\thesubsection}{\thesection.\@arabic\c@subsection}
2340 \renewcommand{\thesubsubsection}{%
2341    \thesubsection.\@arabic\c@subsubsection}
2342 \renewcommand{\theparagraph}{%
2343    \thesubsubsection.\@arabic\c@paragraph}
2344 \renewcommand{\thesubparagraph}{%
2345    \theparagraph.\@arabic\c@subparagraph}
2346 %</yoko>
2347 %    \end{macrocode}
2348 % \end{macro}
2349 % \end{macro}
2350 % \end{macro}
2351 % \end{macro}
2352 % \end{macro}
2353 % \end{macro}
2354 % \end{macro}
2355 %
2356 % \begin{macro}{\@chapapp}
2357 % \begin{macro}{\@chappos}
2358 % |\@chapapp|の初期値は`|\prechaptername|'です。
2359 %
2360 % |\@chappos|の初期値は`|\postchaptername|'です。
2361 %
2362 % |\appendix|コマンドは|\@chapapp|を`|\appendixname|'に、
2363 % |\@chappos|を空に再定義します。
2364 %    \begin{macrocode}
2365 %<*report|book>
2366 \newcommand{\@chapapp}{\prechaptername}
2367 \newcommand{\@chappos}{\postchaptername}
2368 %</report|book>
2369 %    \end{macrocode}
2370 % \end{macro}
2371 % \end{macro}
2372 %
2373 % \subsubsection{前付け、本文、後付け}
2374 %
2375 % \begin{macro}{\frontmatter}
2376 % \begin{macro}{\mainmatter}
2377 % \begin{macro}{\backmatter}
2378 % \changes{v1.1}{1997/01/15}{\cs{frontmatter}, \cs{mainmatter}, \cs{backmatter}
2379 %   を\LaTeX\ の定義に修正}
2380 % 一冊の本は論理的に3つに分割されます。
2381 % 表題や目次や「はじめに」あるいは権利などの前付け、
2382 % そして本文、それから用語集や索引や奥付けなどの後付けです。
2383 %    \begin{macrocode}
2384 %<*book>
2385 \newcommand\frontmatter{%
2386   \if@openright \cleardoublepage \else \clearpage \fi
2387   \@mainmatterfalse\pagenumbering{roman}}
2388 \newcommand{\mainmatter}{%
2389   \if@openright \cleardoublepage \else \clearpage \fi
2390   \@mainmattertrue\pagenumbering{arabic}}
2391 \newcommand{\backmatter}{%
2392   \if@openright \cleardoublepage \else \clearpage \fi
2393   \@mainmatterfalse}
2394 %</book>
2395 %    \end{macrocode}
2396 % \end{macro}
2397 % \end{macro}
2398 % \end{macro}
2399 %
2400 % \subsubsection{ボックスの組み立て}
2401 % クラスファイル定義の、この部分では、|\@startsection|と|\secdef|の
2402 % 二つの内部マクロを使います。これらの構文を次に示します。
2403 %
2404 % |\@startsection|マクロは6つの引数と1つのオプション引数`*'を取ります。
2405 %
2406 %    |\@startsection|\meta{name}\meta{level}\meta{indent}^^A
2407 %                    \meta{beforeskip}\meta{afterskip}\meta{style}
2408 %            optional *\\
2409 %    \null\hphantom{\bslash @startsection}^^A
2410 %            |[|\meta{altheading}|]|\meta{heading}
2411 %
2412 % それぞれの引数の意味は、次のとおりです。
2413 %
2414 % \begin{description}
2415 % \item[\meta{name}] レベルコマンドの名前です(例:section)。
2416 % \item[\meta{level}] 見出しの深さを示す数値です(chapter=1, section=2,
2417 %    $\ldots$)。``\meta{level}$<=$カウンタ\Lcount{secnumdepth}の値''のとき、
2418 %    見出し番号が出力されます。
2419 % \item[\meta{indent}] 見出しに対する、左マージンからのインデント量です。
2420 % \item[\meta{beforeskip}] 見出しの上に置かれる空白の絶対値です。
2421 %    負の場合は、見出しに続くテキストのインデントを抑制します。
2422 % \item[\meta{afterskip}] 正のとき、見出しの後の垂直方向のスペースとなります。
2423 %    負の場合は、見出しの後の水平方向のスペースとなります。
2424 % \item[\meta{style}] 見出しのスタイルを設定するコマンドです。
2425 % \item[\meta{$*$}] 見出し番号を付けないとき、対応するカウンタは増加します。
2426 % \item[\meta{heading}] 新しい見出しの文字列です。
2427 % \end{description}
2428 %
2429 % 見出しコマンドは通常、|\@startsection|と6つの引数で定義されています。
2430 %
2431 % |\secdef|マクロは、
2432 % 見出しコマンドを|\@startsection|を用いないで定義するときに使います。
2433 % このマクロは、2つの引数を持ちます。
2434 %
2435 % |\secdef|\meta{unstarcmds}\meta{starcmds}
2436 %
2437 % \begin{description}
2438 % \item[\meta{unstarcmds}] 見出しコマンドの普通の形式で使われます。
2439 % \item[\meta{starcmds}] $*$形式の見出しコマンドで使われます。
2440 % \end{description}
2441 %
2442 % |\secdef|は次のようにして使うことができます。
2443 % \begin{verbatim}
2444 %    \def\chapter {... \secdef \CMDA \CMDB }
2445 %    \def\CMDA    [#1]#2{....} % \chapter[...]{...} の定義
2446 %    \def\CMDB    #1{....}     % \chapter*{...} の定義
2447 % \end{verbatim}
2448 %
2449 %
2450 % \subsubsection{partレベル}
2451 %
2452 % \begin{macro}{\part}
2453 % このコマンドは、新しいパート(部)をはじめます。
2454 %
2455 % articleクラスの場合は、簡単です。
2456 %
2457 % 新しい段落を開始し、小さな空白を入れ、段落後のインデントをしないようにし、
2458 % |\secdef|で作成します。
2459 %    \begin{macrocode}
2460 %<*article>
2461 \newcommand{\part}{\par\addvspace{4ex}%
2462   \@afterindenttrue
2463   \secdef\@part\@spart}
2464 %</article>
2465 %    \end{macrocode}
2466 % reportとbookスタイルの場合は、少し複雑です。
2467 %
2468 % まず、右ページからはじまるように改ページをします。
2469 % そして、部扉のページスタイルを\pstyle{empty}にします。
2470 % 2段組の場合でも、1段組で作成しますが、後ほど2段組に戻すために、
2471 % |\@restonecol|スイッチを使います。
2472 % \changes{v1.1}{1997/01/15}{\cs{part}を\LaTeX\ の定義に修正}
2473 %    \begin{macrocode}
2474 %<*report|book>
2475 \newcommand{\part}{%
2476   \if@openright \cleardoublepage \else \clearpage \fi
2477   \thispagestyle{empty}%
2478   \if@twocolumn\onecolumn\@tempswatrue\else\@tempswafalse\fi
2479   \null\vfil
2480   \secdef\@part\@spart}
2481 %</report|book>
2482 %    \end{macrocode}
2483 % \end{macro}
2484 %
2485 % \begin{macro}{\@part}
2486 % このマクロが実際に部レベルの見出しを作成します。
2487 % このマクロも文書クラスによって定義が異なります。
2488 %
2489 % articleクラスの場合は、\Lcount{secnumdepth}が$-1$よりも大きいとき、
2490 % 見出し番号を付けます。このカウンタが$-1$以下の場合には付けません。
2491 %    \begin{macrocode}
2492 %<*article>
2493 \def\@part[#1]#2{%
2494   \ifnum \c@secnumdepth >\m@ne
2495     \refstepcounter{part}%
2496     \addcontentsline{toc}{part}{%
2497        \prepartname\thepart\postpartname\hspace{1\zw}#1}%
2498   \else
2499     \addcontentsline{toc}{part}{#1}%
2500   \fi
2501   \markboth{}{}%
2502   {\parindent\z@\raggedright
2503    \interlinepenalty\@M\reset@font
2504    \ifnum \c@secnumdepth >\m@ne
2505      \Large\bfseries\prepartname\thepart\postpartname
2506      \par\nobreak
2507    \fi
2508    \huge\bfseries#2\par}%
2509   \nobreak\vskip3ex\@afterheading}
2510 %</article>
2511 %    \end{macrocode}
2512 %
2513 % reportとbookクラスの場合は、\Lcount{secnumdepth}が$-2$よりも大きいときに、
2514 % 見出し番号を付けます。$-2$以下では付けません。
2515 %
2516 %    \begin{macrocode}
2517 %<*report|book>
2518 \def\@part[#1]#2{%
2519   \ifnum \c@secnumdepth >-2\relax
2520     \refstepcounter{part}%
2521     \addcontentsline{toc}{part}{%
2522        \prepartname\thepart\postpartname\hspace{1em}#1}%
2523   \else
2524     \addcontentsline{toc}{part}{#1}%
2525   \fi
2526   \markboth{}{}%
2527   {\centering
2528    \interlinepenalty\@M\reset@font
2529    \ifnum \c@secnumdepth >-2\relax
2530      \huge\bfseries\prepartname\thepart\postpartname
2531      \par\vskip20\p@
2532    \fi
2533    \Huge\bfseries#2\par}%
2534    \@endpart}
2535 %</report|book>
2536 %    \end{macrocode}
2537 % \end{macro}
2538 %
2539 % \begin{macro}{\@spart}
2540 % このマクロは、番号を付けないときの体裁です。
2541 %    \begin{macrocode}
2542 %<*article>
2543 \def\@spart#1{{%
2544   \parindent\z@\raggedright
2545   \interlinepenalty\@M\reset@font
2546   \huge\bfseries#1\par}%
2547   \nobreak\vskip3ex\@afterheading}
2548 %</article>
2549 %    \end{macrocode}
2550 % \changes{v1.1k}{1998/03/23}{reportとbookクラスで番号を付けない見出しの
2551 %   ペナルティが\cs{M@}だったのを\cs{@M}に修正}
2552 %    \begin{macrocode}
2553 %<*report|book>
2554 \def\@spart#1{{%
2555   \centering
2556   \interlinepenalty\@M\reset@font
2557   \Huge\bfseries#1\par}%
2558   \@endpart}
2559 %</report|book>
2560 %    \end{macrocode}
2561 % \end{macro}
2562 %
2563 % \begin{macro}{\@endpart}
2564 % |\@part|と|\@spart|の最後で実行されるマクロです。
2565 % 両面印刷モードのときは、白ページを追加します。
2566 % 二段組モードのときには、これ以降のページを二段組に戻します。
2567 %    \begin{macrocode}
2568 %<*report|book>
2569 \def\@endpart{\vfil\newpage
2570    \if@twoside\null\thispagestyle{empty}\newpage\fi
2571 %    \end{macrocode}
2572 % 二段組文書のとき、スイッチを二段組モードに戻す必要があります。
2573 %    \begin{macrocode}
2574    \if@tempswa\twocolumn\fi}
2575 %</report|book>
2576 %    \end{macrocode}
2577 % \end{macro}
2578 %
2579 % \subsubsection{chapterレベル}
2580 %
2581 % \begin{macro}{chapter}
2582 % 章レベルは、必ずページの先頭から開始します。
2583 % |openright|オプションが指定されている場合は、右ページからはじまる
2584 % ように|\cleardoublepage|を呼び出します。
2585 % そうでなければ、|\clearpage|を呼び出します。
2586 % なお、縦組の場合でも右ページからはじまるように、
2587 % フォーマットファイルで|\clerdoublepage|が定義されています。
2588 %
2589 % 章見出しが出力されるページのスタイルは、\pstyle{jpl@in}になります。
2590 % \pstyle{jpl@in}は、\pstyle{headnomble}か\pstyle{footnomble}のいずれかです。
2591 % 詳細は、第\ref{sec:pagestyle}節を参照してください。
2592 %
2593 % また、|\@topnum|をゼロにして、
2594 % 章見出しの上にトップフロートが置かれないようにしています。
2595 %    \begin{macrocode}
2596 %<*report|book>
2597 \newcommand{\chapter}{%
2598   \if@openright\cleardoublepage\else\clearpage\fi
2599   \thispagestyle{jpl@in}%
2600   \global\@topnum\z@
2601   \@afterindenttrue
2602   \secdef\@chapter\@schapter}
2603 %    \end{macrocode}
2604 % \end{macro}
2605 %
2606 % \begin{macro}{\@chapter}
2607 % このマクロは、章見出しに番号を付けるときに呼び出されます。
2608 % \Lcount{secnumdepth}が$-1$よりも大きく、
2609 % |\@mainmatter|が真(bookクラスの場合)のときに、番号を出力します。
2610 %    \begin{macrocode}
2611 \def\@chapter[#1]#2{%
2612   \ifnum \c@secnumdepth >\m@ne
2613 %<book>    \if@mainmatter
2614     \refstepcounter{chapter}%
2615     \typeout{\@chapapp\space\thechapter\space\@chappos}%
2616     \addcontentsline{toc}{chapter}%
2617       {\protect\numberline{\@chapapp\thechapter\@chappos}#1}%
2618 %<book>    \else\addcontentsline{toc}{chapter}{#1}\fi
2619   \else
2620     \addcontentsline{toc}{chapter}{#1}%
2621   \fi
2622   \chaptermark{#1}%
2623   \addtocontents{lof}{\protect\addvspace{10\p@}}%
2624   \addtocontents{lot}{\protect\addvspace{10\p@}}%
2625   \@makechapterhead{#2}\@afterheading}
2626 %    \end{macrocode}
2627 % \end{macro}
2628 %
2629 % \begin{macro}{\@makechapterhead}
2630 % このマクロが実際に章見出しを組み立てます。
2631 % \changes{v1.1o}{1998/12/24}{secnumdepthカウンタを$-1$以下にすると、
2632 %   見出し文字列も消えてしまうのを修正}
2633 % \changes{v1.2}{2001/09/04}{\cs{chapter}の出力位置がアスタリスク形式と
2634 %   そうでないときと違うのを修正(ありがとう、鈴木@津さん)}
2635 %    \begin{macrocode}
2636 \def\@makechapterhead#1{\hbox{}%
2637   \vskip2\Cvs
2638   {\parindent\z@
2639    \raggedright
2640    \reset@font\huge\bfseries
2641    \leavevmode
2642    \ifnum \c@secnumdepth >\m@ne
2643      \setlength\@tempdima{\linewidth}%
2644 %<book>    \if@mainmatter
2645      \setbox\z@\hbox{\@chapapp\thechapter\@chappos\hskip1\zw}%
2646      \addtolength\@tempdima{-\wd\z@}%
2647      \unhbox\z@\nobreak
2648 %<book>    \fi
2649      \vtop{\hsize\@tempdima#1}%
2650    \else
2651      #1\relax
2652    \fi}\nobreak\vskip3\Cvs}
2653 %    \end{macrocode}
2654 % \end{macro}
2655 %
2656 % \begin{macro}{\@schapter}
2657 % このマクロは、章見出しに番号を付けないときに呼び出されます。
2658 %    \begin{macrocode}
2659 \def\@schapter#1{%
2660 %<article>  \if@twocolumn\@topnewpage[\@makeschapterhead{#1}]\else
2661   \@makeschapterhead{#1}\@afterheading
2662 %<article>  \fi
2663 }
2664 %    \end{macrocode}
2665 % \end{macro}
2666 %
2667 % \begin{macro}{\@makeschapterhead}
2668 % 番号を付けない場合の形式です。
2669 % \changes{v1.2}{2001/09/04}{\cs{chapter}の出力位置がアスタリスク形式と
2670 %   そうでないときと違うのを修正(ありがとう、鈴木@津さん)}
2671 %    \begin{macrocode}
2672 \def\@makeschapterhead#1{\hbox{}%
2673   \vskip2\Cvs
2674   {\parindent\z@
2675    \raggedright
2676    \reset@font\huge\bfseries
2677    \leavevmode
2678    \setlength\@tempdima{\linewidth}%
2679    \vtop{\hsize\@tempdima#1}}\vskip3\Cvs}
2680 %</report|book>
2681 %    \end{macrocode}
2682 % \end{macro}
2683 %
2684 % \subsubsection{下位レベルの見出し}
2685 %
2686 % \begin{macro}{\section}
2687 % 見出しの前後に空白を付け、|\Large\bfseries|で出力をします。
2688 %    \begin{macrocode}
2689 \newcommand{\section}{\@startsection{section}{1}{\z@}%
2690    {1.5\Cvs \@plus.5\Cvs \@minus.2\Cvs}%
2691    {.5\Cvs \@plus.3\Cvs}%
2692    {\reset@font\Large\bfseries}}
2693 %    \end{macrocode}
2694 % \end{macro}
2695 %
2696 % \begin{macro}{\subsection}
2697 % 見出しの前後に空白を付け、|\large\bfseries|で出力をします。
2698 %    \begin{macrocode}
2699 \newcommand{\subsection}{\@startsection{subsection}{2}{\z@}%
2700    {1.5\Cvs \@plus.5\Cvs \@minus.2\Cvs}%
2701    {.5\Cvs \@plus.3\Cvs}%
2702    {\reset@font\large\bfseries}}
2703 %    \end{macrocode}
2704 % \end{macro}
2705 %
2706 % \begin{macro}{\subsubsection}
2707 % 見出しの前後に空白を付け、|\normalsize\bfseries|で出力をします。
2708 %    \begin{macrocode}
2709 \newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}%
2710    {1.5\Cvs \@plus.5\Cvs \@minus.2\Cvs}%
2711    {.5\Cvs \@plus.3\Cvs}%
2712    {\reset@font\normalsize\bfseries}}
2713 %    \end{macrocode}
2714 % \end{macro}
2715 %
2716 % \begin{macro}{\paragraph}
2717 % 見出しの前に空白を付け、|\normalsize\bfseries|で出力をします。
2718 % 見出しの後ろで改行されません。
2719 %    \begin{macrocode}
2720 \newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}%
2721    {3.25ex \@plus 1ex \@minus .2ex}%
2722    {-1em}%
2723    {\reset@font\normalsize\bfseries}}
2724 %    \end{macrocode}
2725 % \end{macro}
2726 %
2727 % \begin{macro}{\subparagraph}
2728 % 見出しの前に空白を付け、|\normalsize\bfseries|で出力をします。
2729 % 見出しの後ろで改行されません。
2730 %    \begin{macrocode}
2731 \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}%
2732    {3.25ex \@plus 1ex \@minus .2ex}%
2733    {-1em}%
2734    {\reset@font\normalsize\bfseries}}
2735 %    \end{macrocode}
2736 % \end{macro}
2737 %
2738 %
2739 % \subsubsection{付録}
2740 %
2741 % \begin{macro}{\appendix}
2742 % articleクラスの場合、|\appendix|コマンドは次のことを行ないます。
2743 %
2744 % \begin{itemize}
2745 % \item \Lcount{section}と\Lcount{subsection}カウンタをリセットする。
2746 % \item |\thesection|を英小文字で出力するように再定義する。
2747 % \end{itemize}
2748 %
2749 %    \begin{macrocode}
2750 %<*article>
2751 \newcommand{\appendix}{\par
2752   \setcounter{section}{0}%
2753   \setcounter{subsection}{0}%
2754 %<tate>  \renewcommand{\thesection}{\rensuji{\@Alph\c@section}}}
2755 %<yoko>  \renewcommand{\thesection}{\@Alph\c@section}}
2756 %</article>
2757 %    \end{macrocode}
2758 %
2759 % reportとbookクラスの場合、|\appendix|コマンドは次のことを行ないます。
2760 %
2761 % \begin{itemize}
2762 % \item \Lcount{chapter}と\Lcount{section}カウンタをリセットする。
2763 % \item |\@chapapp|を|\appendixname|に設定する。
2764 % \item |\@chappos|を空にする。
2765 % \item |\thechapter|を英小文字で出力するように再定義する。
2766 % \end{itemize}
2767 %
2768 %    \begin{macrocode}
2769 %<*report|book>
2770 \newcommand{\appendix}{\par
2771   \setcounter{chapter}{0}%
2772   \setcounter{section}{0}%
2773   \renewcommand{\@chapapp}{\appendixname}%
2774   \renewcommand{\@chappos}\space%
2775 %<tate>  \renewcommand{\thechapter}{\rensuji{\@Alph\c@chapter}}}
2776 %<yoko>  \renewcommand{\thechapter}{\@Alph\c@chapter}}
2777 %</report|book>
2778 %    \end{macrocode}
2779 % \end{macro}
2780 %
2781 %
2782 %
2783 % \subsection{リスト環境}
2784 % ここではリスト環境について説明をしています。
2785 %
2786 % リスト環境のデフォルトは次のように設定されます。
2787 %
2788 % まず、|\rigtmargin|, |\listparindent|, |\itemindent|をゼロにします。
2789 % そして、K番目のレベルのリストは|\@listK|で示されるマクロが呼び出されます。
2790 % ここで`K'は小文字のローマ数字で示されます。たとえば、3番目のレベルのリスト
2791 % として|\@listiii|が呼び出されます。
2792 % |\@listK|は|\leftmargin|を|\leftmarginK|に設定します。
2793 %
2794 % \begin{macro}{\leftmargin}
2795 % \begin{macro}{\leftmargini}
2796 % \begin{macro}{\leftmarginii}
2797 % \begin{macro}{\leftmarginiii}
2798 % \begin{macro}{\leftmarginiv}
2799 % \begin{macro}{\leftmarginv}
2800 % \begin{macro}{\leftmarginvi}
2801 % 二段組モードのマージンは少しだけ小さく設定してあります。
2802 %    \begin{macrocode}
2803 \if@twocolumn
2804   \setlength\leftmargini {2em}
2805 \else
2806   \setlength\leftmargini {2.5em}
2807 \fi
2808 %    \end{macrocode}
2809 % 次の3つの値は、|\labelsep|とデフォルトラベル(`(m)', `vii.', `M.')の
2810 % 幅の合計よりも大きくしてあります。
2811 %    \begin{macrocode}
2812 \setlength\leftmarginii  {2.2em}
2813 \setlength\leftmarginiii {1.87em}
2814 \setlength\leftmarginiv  {1.7em}
2815 \if@twocolumn
2816   \setlength\leftmarginv {.5em}
2817   \setlength\leftmarginvi{.5em}
2818 \else
2819   \setlength\leftmarginv {1em}
2820   \setlength\leftmarginvi{1em}
2821 \fi
2822 %    \end{macrocode}
2823 % \end{macro}
2824 % \end{macro}
2825 % \end{macro}
2826 % \end{macro}
2827 % \end{macro}
2828 % \end{macro}
2829 % \end{macro}
2830 %
2831 % \begin{macro}{\labelsep}
2832 % \begin{macro}{\labelwidth}
2833 % |\labelsep|はラベルとテキストの項目の間の距離です。
2834 % |\labelwidth|はラベルの幅です。
2835 %    \begin{macrocode}
2836 \setlength  \labelsep  {.5em}
2837 \setlength  \labelwidth{\leftmargini}
2838 \addtolength\labelwidth{-\labelsep}
2839 %    \end{macrocode}
2840 % \end{macro}
2841 % \end{macro}
2842 %
2843 % \begin{macro}{\@beginparpenalty}
2844 % \begin{macro}{\@endparpenalty}
2845 % これらのペナルティは、リストや段落環境の前後に挿入されます。
2846 % \begin{macro}{\@itempenalty}
2847 % このペナルティは、リスト項目の間に挿入されます。
2848 %    \begin{macrocode}
2849 \@beginparpenalty -\@lowpenalty
2850 \@endparpenalty   -\@lowpenalty
2851 \@itempenalty     -\@lowpenalty
2852 %</article|report|book>
2853 %    \end{macrocode}
2854 % \end{macro}
2855 % \end{macro}
2856 % \end{macro}
2857 %
2858 % \begin{macro}{\partopsep}
2859 % リスト環境の前に空行がある場合、|\parskip|と|\topsep|に|\partopsep|が
2860 % 加えられた値の縦方向の空白が取られます。
2861 %    \begin{macrocode}
2862 %<10pt>\setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@}
2863 %<11pt>\setlength\partopsep{3\p@ \@plus 1\p@ \@minus 1\p@}
2864 %<12pt>\setlength\partopsep{3\p@ \@plus 2\p@ \@minus 2\p@}
2865 %    \end{macrocode}
2866 % \end{macro}
2867 %
2868 % \begin{macro}{\@listi}
2869 % \begin{macro}{\@listI}
2870 % |\@listi|は、|\leftmargin|, |\parsep|, |\topsep|, |\itemsep|などの
2871 % トップレベルの定義をします。
2872 % この定義は、フォントサイズコマンドによって変更されます(たとえば、
2873 % |\small|の中では``小さい''リストパラメータになります)。
2874 %
2875 % このため、|\normalsize|がすべてのパラメータを戻せるように、
2876 % |\@listI|は|\@listi|のコピーを保存するように定義されています。
2877 %    \begin{macrocode}
2878 %<*10pt|11pt|12pt>
2879 \def\@listi{\leftmargin\leftmargini
2880 %<*10pt>
2881   \parsep 4\p@ \@plus2\p@ \@minus\p@
2882   \topsep 8\p@ \@plus2\p@ \@minus4\p@
2883   \itemsep4\p@ \@plus2\p@ \@minus\p@}
2884 %</10pt>
2885 %<*11pt>
2886   \parsep 4.5\p@ \@plus2\p@ \@minus\p@
2887   \topsep 9\p@   \@plus3\p@ \@minus5\p@
2888   \itemsep4.5\p@ \@plus2\p@ \@minus\p@}
2889 %</11pt>
2890 %<*12pt>
2891   \parsep 5\p@  \@plus2.5\p@ \@minus\p@
2892   \topsep 10\p@ \@plus4\p@   \@minus6\p@
2893   \itemsep5\p@  \@plus2.5\p@ \@minus\p@}
2894 %</12pt>
2895 \let\@listI\@listi
2896 %    \end{macrocode}
2897 % ここで、パラメータを初期化しますが、厳密には必要ありません。
2898 %    \begin{macrocode}
2899 \@listi
2900 %    \end{macrocode}
2901 % \end{macro}
2902 % \end{macro}
2903 %
2904 % \begin{macro}{\@listii}
2905 % \begin{macro}{\@listiii}
2906 % \begin{macro}{\@listiv}
2907 % \begin{macro}{\@listv}
2908 % \begin{macro}{\@listvi}
2909 % 下位レベルのリスト環境のパラメータの設定です。
2910 % これらは保存用のバージョンを持たないことと、
2911 % フォントサイズコマンドによって変更されないことに注意をしてください。
2912 % 言い換えれば、このクラスは、本文サイズが
2913 % |\normalsize|で現れるリストの入れ子についてだけ考えています。
2914 %    \begin{macrocode}
2915 \def\@listii{\leftmargin\leftmarginii
2916    \labelwidth\leftmarginii \advance\labelwidth-\labelsep
2917 %<*10pt>
2918    \topsep  4\p@ \@plus2\p@ \@minus\p@
2919    \parsep  2\p@ \@plus\p@  \@minus\p@
2920 %</10pt>
2921 %<*11pt>
2922    \topsep  4.5\p@ \@plus2\p@ \@minus\p@
2923    \parsep  2\p@   \@plus\p@  \@minus\p@
2924 %</11pt>
2925 %<*12pt>
2926    \topsep  5\p@   \@plus2.5\p@ \@minus\p@
2927    \parsep  2.5\p@ \@plus\p@  \@minus\p@
2928 %</12pt>
2929    \itemsep\parsep}
2930 \def\@listiii{\leftmargin\leftmarginiii
2931    \labelwidth\leftmarginiii \advance\labelwidth-\labelsep
2932 %<10pt>   \topsep 2\p@  \@plus\p@\@minus\p@
2933 %<11pt>   \topsep 2\p@  \@plus\p@\@minus\p@
2934 %<12pt>   \topsep 2.5\p@\@plus\p@\@minus\p@
2935    \parsep\z@
2936    \partopsep \p@ \@plus\z@ \@minus\p@
2937    \itemsep\topsep}
2938 \def\@listiv {\leftmargin\leftmarginiv
2939               \labelwidth\leftmarginiv
2940               \advance\labelwidth-\labelsep}
2941 \def\@listv  {\leftmargin\leftmarginv
2942               \labelwidth\leftmarginv
2943               \advance\labelwidth-\labelsep}
2944 \def\@listvi {\leftmargin\leftmarginvi
2945               \labelwidth\leftmarginvi
2946               \advance\labelwidth-\labelsep}
2947 %</10pt|11pt|12pt>
2948 %    \end{macrocode}
2949 % \end{macro}
2950 % \end{macro}
2951 % \end{macro}
2952 % \end{macro}
2953 % \end{macro}
2954 %
2955 %
2956 % \subsubsection{enumerate環境}
2957 % enumerate環境は、カウンタ\Lcount{enumi}, \Lcount{enumii}, \Lcount{enumiii},
2958 % \Lcount{enumiv}を使います。\Lcount{enumN}はN番目のレベルの番号を制御します。
2959 %
2960 % \begin{macro}{\theenumi}
2961 % \begin{macro}{\theenumii}
2962 % \begin{macro}{\theenumiii}
2963 % \begin{macro}{\theenumiv}
2964 % 出力する番号の書式を設定します。
2965 % これらは、すでに\file{ltlists.dtx}で定義されています。
2966 %    \begin{macrocode}
2967 %<*article|report|book>
2968 %<*tate>
2969 \renewcommand{\theenumi}{\rensuji{\@arabic\c@enumi}}
2970 \renewcommand{\theenumii}{\rensuji{(\@alph\c@enumii)}}
2971 \renewcommand{\theenumiii}{\rensuji{\@roman\c@enumiii}}
2972 \renewcommand{\theenumiv}{\rensuji{\@Alph\c@enumiv}}
2973 %</tate>
2974 %<*yoko>
2975 \renewcommand{\theenumi}{\@arabic\c@enumi}
2976 \renewcommand{\theenumii}{\@alph\c@enumii}
2977 \renewcommand{\theenumiii}{\@roman\c@enumiii}
2978 \renewcommand{\theenumiv}{\@Alph\c@enumiv}
2979 %</yoko>
2980 %    \end{macrocode}
2981 % \end{macro}
2982 % \end{macro}
2983 % \end{macro}
2984 % \end{macro}
2985 %
2986 % \begin{macro}{\labelenumi}
2987 % \begin{macro}{\labelenumii}
2988 % \begin{macro}{\labelenumiii}
2989 % \begin{macro}{\labelenumiv}
2990 % enumerate環境のそれぞれの項目のラベルは、
2991 % |\labelenumi| \ldots\ |\labelenumiv|で生成されます。
2992 %    \begin{macrocode}
2993 %<*tate>
2994 \newcommand{\labelenumi}{\theenumi}
2995 \newcommand{\labelenumii}{\theenumii}
2996 \newcommand{\labelenumiii}{\theenumiii}
2997 \newcommand{\labelenumiv}{\theenumiv}
2998 %</tate>
2999 %<*yoko>
3000 \newcommand{\labelenumi}{\theenumi.}
3001 \newcommand{\labelenumii}{(\theenumii)}
3002 \newcommand{\labelenumiii}{\theenumiii.}
3003 \newcommand{\labelenumiv}{\theenumiv.}
3004 %</yoko>
3005 %    \end{macrocode}
3006 % \end{macro}
3007 % \end{macro}
3008 % \end{macro}
3009 % \end{macro}
3010 %
3011 % \begin{macro}{\p@enumii}
3012 % \begin{macro}{\p@enumiii}
3013 % \begin{macro}{\p@enumiv}
3014 % |\ref|コマンドによって、
3015 % enumerate環境のN番目のリスト項目が参照されるときの書式です。
3016 %    \begin{macrocode}
3017 \renewcommand{\p@enumii}{\theenumi}
3018 \renewcommand{\p@enumiii}{\theenumi(\theenumii)}
3019 \renewcommand{\p@enumiv}{\p@enumiii\theenumiii}
3020 %    \end{macrocode}
3021 % \end{macro}
3022 % \end{macro}
3023 % \end{macro}
3024 %
3025 % \begin{environment}{enumerate}
3026 % \changes{v1.1q}{1999/05/18}{縦組時のみに設定するようにした}
3027 % トップレベルで使われたときに、最初と最後に半行分のスペースを開けるように、
3028 % 変更します。この環境は、\file{ltlists.dtx}で定義されています。
3029 %
3030 %    \begin{macrocode}
3031 \renewenvironment{enumerate}
3032   {\ifnum \@enumdepth >\thr@@\@toodeep\else
3033    \advance\@enumdepth\@ne
3034    \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
3035    \list{\csname label\@enumctr\endcsname}{%
3036       \iftdir
3037          \ifnum \@listdepth=\@ne \topsep.5\normalbaselineskip
3038            \else\topsep\z@\fi
3039          \parskip\z@ \itemsep\z@ \parsep\z@
3040          \labelwidth1\zw \labelsep.3\zw
3041          \ifnum \@enumdepth=\@ne \leftmargin1\zw\relax
3042            \else\leftmargin\leftskip\fi
3043          \advance\leftmargin 1\zw
3044       \fi
3045          \usecounter{\@enumctr}%
3046          \def\makelabel##1{\hss\llap{##1}}}%
3047    \fi}{\endlist}
3048 %    \end{macrocode}
3049 % \end{environment}
3050 %
3051 %
3052 % \subsubsection{itemize環境}
3053 %
3054 % \begin{macro}{\labelitemi}
3055 % \begin{macro}{\labelitemii}
3056 % \begin{macro}{\labelitemiii}
3057 % \begin{macro}{\labelitemiv}
3058 % itemize環境のそれぞれの項目のラベルは、
3059 % |\labelenumi| \ldots\ |\labelenumiv|で生成されます。
3060 % \changes{v1.1a}{1997/01/28}{Bug fix: \cs{labelitemii}.}
3061 %    \begin{macrocode}
3062 \newcommand{\labelitemi}{\textbullet}
3063 \newcommand{\labelitemii}{%
3064   \iftdir
3065      {\textcircled{~}}
3066   \else
3067      {\normalfont\bfseries\textendash}
3068   \fi
3069 }
3070 \newcommand{\labelitemiii}{\textasteriskcentered}
3071 \newcommand{\labelitemiv}{\textperiodcentered}
3072 %    \end{macrocode}
3073 % \end{macro}
3074 % \end{macro}
3075 % \end{macro}
3076 % \end{macro}
3077 %
3078 % \begin{environment}{itemize}
3079 % \changes{v1.0e}{1996/03/14}{縦組時のみに設定するようにした}
3080 % トップレベルで使われたときに、最初と最後に半行分のスペースを開けるように、
3081 % 変更します。この環境は、\file{ltlists.dtx}で定義されています。
3082 %    \begin{macrocode}
3083 \renewenvironment{itemize}
3084   {\ifnum \@itemdepth >\thr@@\@toodeep\else
3085    \advance\@itemdepth\@ne
3086    \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
3087    \expandafter
3088    \list{\csname \@itemitem\endcsname}{%
3089       \iftdir
3090          \ifnum \@listdepth=\@ne \topsep.5\normalbaselineskip
3091            \else\topsep\z@\fi
3092          \parskip\z@ \itemsep\z@ \parsep\z@
3093          \labelwidth1\zw \labelsep.3\zw
3094          \ifnum \@itemdepth =\@ne \leftmargin1\zw\relax
3095            \else\leftmargin\leftskip\fi
3096          \advance\leftmargin 1\zw
3097       \fi
3098          \def\makelabel##1{\hss\llap{##1}}}%
3099    \fi}{\endlist}
3100 %    \end{macrocode}
3101 % \end{environment}
3102 %
3103 %
3104 % \subsubsection{description環境}
3105 %
3106 % \begin{environment}{description}
3107 % \changes{v1.0e}{1996/03/14}{\cs{topskip}や\cs{parkip}などの値を縦組時のみに
3108 %        設定するようにした}
3109 % description環境を定義します。
3110 % 縦組時には、インデントが3字分だけ深くなります。
3111 %    \begin{macrocode}
3112 \newenvironment{description}
3113   {\list{}{\labelwidth\z@ \itemindent-\leftmargin
3114    \iftdir
3115      \leftmargin\leftskip \advance\leftmargin3\Cwd
3116      \rightmargin\rightskip
3117      \labelsep=1\zw \itemsep\z@
3118      \listparindent\z@ \topskip\z@ \parskip\z@ \partopsep\z@
3119    \fi
3120            \let\makelabel\descriptionlabel}}{\endlist}
3121 %    \end{macrocode}
3122 % \end{environment}
3123 %
3124 % \begin{macro}{\descriptionlabel}
3125 % ラベルの形式を変更する必要がある場合は、|\descriptionlabel|を
3126 % 再定義してください。
3127 %    \begin{macrocode}
3128 \newcommand{\descriptionlabel}[1]{%
3129    \hspace\labelsep\normalfont\bfseries #1}
3130 %    \end{macrocode}
3131 % \end{macro}
3132 %
3133 %
3134 % \subsubsection{verse環境}
3135 %
3136 % \begin{environment}{verse}
3137 % verse環境は、リスト環境のパラメータを使って定義されています。
3138 % 改行をするには|\\|を用います。|\\|は|\@centercr|に|\let|されています。
3139 %    \begin{macrocode}
3140 \newenvironment{verse}
3141   {\let\\\@centercr
3142    \list{}{\itemsep\z@ \itemindent -1.5em%
3143            \listparindent\itemindent
3144            \rightmargin\leftmargin \advance\leftmargin 1.5em}%
3145            \item\relax}{\endlist}
3146 %    \end{macrocode}
3147 % \end{environment}
3148 %
3149 % \subsubsection{quotation環境}
3150 %
3151 % \begin{environment}{quotation}
3152 % quotation環境もまた、list環境のパラメータを使用して定義されています。
3153 % この環境の各行は、|\textwidth|よりも小さく設定されています。
3154 % この環境における、段落の最初の行はインデントされます。
3155 %    \begin{macrocode}
3156 \newenvironment{quotation}
3157   {\list{}{\listparindent 1.5em%
3158            \itemindent\listparindent
3159            \rightmargin\leftmargin
3160            \parsep\z@ \@plus\p@}%
3161            \item\relax}{\endlist}
3162 %    \end{macrocode}
3163 % \end{environment}
3164 %
3165 % \subsubsection{quote環境}
3166 %
3167 % \begin{environment}{quote}
3168 % quote環境は、段落がインデントされないことを除き、quotation環境と同じです。
3169 %    \begin{macrocode}
3170 \newenvironment{quote}
3171   {\list{}{\rightmargin\leftmargin}%
3172            \item\relax}{\endlist}
3173 %    \end{macrocode}
3174 % \end{environment}
3175 %
3176 %
3177 %
3178 % \subsection{フロート}
3179 %
3180 % \file{ltfloat.dtx}では、フロートオブジェクトを操作するためのツールしか
3181 % 定義していません。タイプが\texttt{TYPE}のフロートオブジェクトを
3182 % 扱うマクロを定義するには、次の変数が必要です。
3183 %
3184 % \begin{description}
3185 % \item[\texttt{\bslash fps@TYPE}]
3186 %   タイプ\texttt{TYPE}のフロートを置くデフォルトの位置です。
3187 %
3188 % \item[\texttt{\bslash ftype@TYPE}]
3189 %   タイプ\texttt{TYPE}のフロートの番号です。
3190 %   各\texttt{TYPE}には、一意な、2の倍数の\texttt{TYPE}番号を割り当てます。
3191 %   たとえば、図が番号1ならば、表は2です。次のタイプは4となります。
3192 %
3193 % \item[\texttt{\bslash ext@TYPE}]
3194 %   タイプ\texttt{TYPE}のフロートの目次を出力するファイルの拡張子です。
3195 %   たとえば、|\ext@figure|は`lot'です。
3196 %
3197 % \item[\texttt{\bslash fnum@TYPE}]
3198 %   キャプション用の図番号を生成するマクロです。
3199 %   たとえば、|\fnum@figure|は`図|\thefigure|'を作ります。
3200 % \end{description}
3201 %
3202 % \subsubsection{figure環境}
3203 % ここでは、figure環境を実装しています。
3204 %
3205 % \begin{macro}{\c@figure}
3206 % \begin{macro}{\thefigure}
3207 % 図番号です。
3208 %    \begin{macrocode}
3209 %<article>\newcounter{figure}
3210 %<report|book>\newcounter{figure}[chapter]
3211 %<*tate>
3212 %<article>\renewcommand{\thefigure}{\rensuji{\@arabic\c@figure}}
3213 %    \end{macrocode}
3214 % \changes{v1.1d}{1997/02/14}{\cs{ifnum}文の構文エラーを訂正。}
3215 %    \begin{macrocode}
3216 %<*report|book>
3217 \renewcommand{\thefigure}{%
3218   \ifnum\c@chapter>\z@\thechapter{}・\fi\rensuji{\@arabic\c@figure}}
3219 %</report|book>
3220 %</tate>
3221 %<*yoko>
3222 %<article>\renewcommand{\thefigure}{\@arabic\c@figure}
3223 %<*report|book>
3224 \renewcommand{\thefigure}{%
3225   \ifnum\c@chapter>\z@\thechapter.\fi\@arabic\c@figure}
3226 %</report|book>
3227 %</yoko>
3228 %    \end{macrocode}
3229 % \end{macro}
3230 % \end{macro}
3231 %
3232 % \begin{macro}{\fps@figure}
3233 % \begin{macro}{\ftype@figure}
3234 % \begin{macro}{\ext@figure}
3235 % \begin{macro}{\fnum@figure}
3236 % フロートオブジェクトタイプ``figure''のためのパラメータです。
3237 %    \begin{macrocode}
3238 \def\fps@figure{tbp}
3239 \def\ftype@figure{1}
3240 \def\ext@figure{lof}
3241 %<tate>\def\fnum@figure{\figurename\thefigure}
3242 %<yoko>\def\fnum@figure{\figurename~\thefigure}
3243 %    \end{macrocode}
3244 % \end{macro}
3245 % \end{macro}
3246 % \end{macro}
3247 % \end{macro}
3248 %
3249 % \begin{environment}{figure}
3250 % \begin{environment}{figure*}
3251 % |*|形式は2段抜きのフロートとなります。
3252 %    \begin{macrocode}
3253 \newenvironment{figure}
3254                {\@float{figure}}
3255                {\end@float}
3256 \newenvironment{figure*}
3257                {\@dblfloat{figure}}
3258                {\end@dblfloat}
3259 %    \end{macrocode}
3260 % \end{environment}
3261 % \end{environment}
3262 %
3263 % \subsubsection{table環境}
3264 % ここでは、table環境を実装しています。
3265 %
3266 % \begin{macro}{\c@table}
3267 % \begin{macro}{\thetable}
3268 % \changes{v1.1n}{1998/10/13}
3269 %    {report, bookクラスでchapterカウンタを考慮していなかったのを修正。
3270 %     ありがとう、平川@慶應大さん。}
3271 % 表番号です。
3272 %    \begin{macrocode}
3273 %<article>\newcounter{table}
3274 %<report|book>\newcounter{table}[chapter]
3275 %<*tate>
3276 %<article>\renewcommand{\thetable}{\rensuji{\@arabic\c@table}}
3277 %<*report|book>
3278 \renewcommand{\thetable}{%
3279   \ifnum\c@chapter>\z@\thechapter{}・\fi\rensuji{\@arabic\c@table}}
3280 %</report|book>
3281 %</tate>
3282 %<*yoko>
3283 %<article>\renewcommand{\thetable}{\@arabic\c@table}
3284 %<*report|book>
3285 \renewcommand{\thetable}{%
3286   \ifnum\c@chapter>\z@\thechapter.\fi\@arabic\c@table}
3287 %</report|book>
3288 %</yoko>
3289 %    \end{macrocode}
3290 % \end{macro}
3291 % \end{macro}
3292 %
3293 % \begin{macro}{\fps@table}
3294 % \begin{macro}{\ftype@table}
3295 % \begin{macro}{\ext@table}
3296 % \begin{macro}{\fnum@table}
3297 % フロートオブジェクトタイプ``table''のためのパラメータです。
3298 %    \begin{macrocode}
3299 \def\fps@table{tbp}
3300 \def\ftype@table{2}
3301 \def\ext@table{lot}
3302 %<tate>\def\fnum@table{\tablename\thetable}
3303 %<yoko>\def\fnum@table{\tablename~\thetable}
3304 %    \end{macrocode}
3305 % \end{macro}
3306 % \end{macro}
3307 % \end{macro}
3308 % \end{macro}
3309 %
3310 % \begin{environment}{table}
3311 % \begin{environment}{table*}
3312 % |*|形式は2段抜きのフロートとなります。
3313 %    \begin{macrocode}
3314 \newenvironment{table}
3315                {\@float{table}}
3316                {\end@float}
3317 \newenvironment{table*}
3318                {\@dblfloat{table}}
3319                {\end@dblfloat}
3320 %    \end{macrocode}
3321 % \end{environment}
3322 % \end{environment}
3323 %
3324 % \subsection{キャプション}
3325 %
3326 % \begin{macro}{\@makecaption}
3327 % |\caption|コマンドは、キャプションを組み立てるために|\@mkcaption|を呼出ます。
3328 % このコマンドは二つの引数を取ります。
3329 % 一つは、\meta{number}で、フロートオブジェクトの番号です。
3330 % もう一つは、\meta{text}でキャプション文字列です。
3331 % \meta{number}には通常、`図 3.2'のような文字列が入っています。
3332 % このマクロは、|\parbox|の中で呼び出されます。書体は|\normalsize|です。
3333 %
3334 % \begin{macro}{\abovecaptionskip}
3335 % \begin{macro}{\belowcaptionskip}
3336 % これらの長さはキャプションの前後に挿入されるスペースです。
3337 %    \begin{macrocode}
3338 \newlength\abovecaptionskip
3339 \newlength\belowcaptionskip
3340 \setlength\abovecaptionskip{10\p@}
3341 \setlength\belowcaptionskip{0\p@}
3342 %    \end{macrocode}
3343 % \end{macro}
3344 % \end{macro}
3345 %
3346 % キャプション内で複数の段落を作成することができるように、
3347 % このマクロは|\long|で定義をします。
3348 %    \begin{macrocode}
3349 \long\def\@makecaption#1#2{%
3350   \vskip\abovecaptionskip
3351   \iftdir\sbox\@tempboxa{#1\hskip1\zw#2}%
3352     \else\sbox\@tempboxa{#1: #2}%
3353   \fi
3354   \ifdim \wd\@tempboxa >\hsize
3355     \iftdir #1\hskip1\zw#2\relax\par
3356       \else #1: #2\relax\par\fi
3357   \else
3358     \global \@minipagefalse
3359     \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
3360   \fi
3361   \vskip\belowcaptionskip}
3362 %    \end{macrocode}
3363 % \end{macro}
3364 %
3365 % \subsection{コマンドパラメータの設定}
3366 %
3367 % \subsubsection{arrayとtabular環境}
3368 %
3369 % \begin{macro}{\arraycolsep}
3370 % array環境のカラムは2|\arraycolsep|で分離されます。
3371 %    \begin{macrocode}
3372 \setlength\arraycolsep{5\p@}
3373 %    \end{macrocode}
3374 % \end{macro}
3375 %
3376 % \begin{macro}{\tabcolsep}
3377 % tabular環境のカラムは2|\tabcolsep|で分離されます。
3378 %    \begin{macrocode}
3379 \setlength\tabcolsep{6\p@}
3380 %    \end{macrocode}
3381 % \end{macro}
3382 %
3383 % \begin{macro}{\arrayrulewidth}
3384 % arrayとtabular環境内の罫線の幅です。
3385 %    \begin{macrocode}
3386 \setlength\arrayrulewidth{.4\p@}
3387 %    \end{macrocode}
3388 % \end{macro}
3389 %
3390 % \begin{macro}{\doublerulesep}
3391 % arrayとtabular環境内の罫線間を調整する空白です。
3392 %    \begin{macrocode}
3393 \setlength\doublerulesep{2\p@}
3394 %    \end{macrocode}
3395 % \end{macro}
3396 %
3397 % \subsubsection{tabbing環境}
3398 %
3399 % \begin{macro}{\tabbingsep}
3400 % |\'|コマンドで置かれるスペースを制御します。
3401 %    \begin{macrocode}
3402 \setlength\tabbingsep{\labelsep}
3403 %    \end{macrocode}
3404 % \end{macro}
3405 %
3406 % \subsubsection{minipage環境}
3407 %
3408 % \begin{macro}{\@mpfootins}
3409 % minipageにも脚注を付けることができます。
3410 % |\skip||\@mpfootins|は、通常の|\skip||\footins|と同じような動作をします。
3411 %    \begin{macrocode}
3412 \skip\@mpfootins = \skip\footins
3413 %    \end{macrocode}
3414 % \end{macro}
3415 %
3416 % \subsubsection{framebox環境}
3417 %
3418 % \begin{macro}{\fboxsep}
3419 % \begin{macro}{\fboxrule}
3420 % |\fboxsep|は、|\fbox|と|\framebox|での、
3421 % テキストとボックスの間に入る空白です。
3422 % |\fboxrule|は|\fbox|と|\framebox|で作成される罫線の幅です。
3423 %    \begin{macrocode}
3424 \setlength\fboxsep{3\p@}
3425 \setlength\fboxrule{.4\p@}
3426 %    \end{macrocode}
3427 % \end{macro}
3428 % \end{macro}
3429 %
3430 % \subsubsection{equationとeqnarray環境}
3431 %
3432 % \begin{macro}{\theequation}
3433 % equationカウンタは、新しい章の開始でリセットされます。
3434 % また、equation番号には、章番号が付きます。
3435 %
3436 % このコードは|\chapter|定義の後、より正確にはchapterカウンタの定義の後、
3437 % でなくてはいけません。
3438 %    \begin{macrocode}
3439 %<article>\renewcommand{\theequation}{\@arabic\c@equation}
3440 %<*report|book>
3441 \@addtoreset{equation}{chapter}
3442 \renewcommand{\theequation}{%
3443   \ifnum\c@chapter>\z@\thechapter.\fi \@arabic\c@equation}
3444 %</report|book>
3445 %    \end{macrocode}
3446 % \end{macro}
3447 %
3448 %
3449 % \section{フォントコマンド}
3450 % まず、数式内に日本語を直接、記述するために数式記号用文字に
3451 % ``JY3/mc/m/n''を登録します。数式バージョンがboldの場合は、
3452 % ``JY3/gt/m/n''を用います。
3453 % これらは、|\mathmc|, |\mathgt|として登録されます。
3454 % また、日本語数式ファミリとして|\symmincho|がこの段階で設定されます。
3455 % |mathrmmc|オプションが指定されていた場合には、これに引き続き
3456 % |\mathrm|と|\mathbf|を和欧文両対応にするための作業がなされます。この際、
3457 % 他のマクロとの衝突を避けるため|\AtBeginDocument|
3458 % を用いて展開順序を遅らせる必要があります。
3459 %
3460 %   \textbf{変更}
3461 %
3462 % \changes{v1.6}{2006/06/27}{フォントコマンドを修正。ありがとう、ymtさん。}
3463 %    \LaTeX{} 2.09
3464 %    compatibility mode では和文数式フォントfam が2重定義されていた
3465 %    ので、その部分を変更しました。
3466 %    \begin{macrocode}
3467 \if@compatibility\else
3468   \DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
3469   \DeclareSymbolFontAlphabet{\mathmc}{mincho}
3470   \SetSymbolFont{mincho}{bold}{JY3}{gt}{m}{n}
3471   \jfam\symmincho
3472   \DeclareMathAlphabet{\mathgt}{JY3}{gt}{m}{n}
3473 \fi
3474 \if@mathrmmc
3475   \AtBeginDocument{%
3476   \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
3477   \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
3478 }%
3479 \fi
3480 %    \end{macrocode}
3481 %
3482 % ここでは\LaTeX~2.09で一般的に使われていたコマンドを定義しています。
3483 % これらのコマンドはテキストモードと数式モードの\emph{どちらでも}動作します。
3484 % これらは互換性のために提供をしますが、できるだけ|\text...|と|\math...|を
3485 % 使うようにしてください。
3486 %
3487 % \begin{macro}{\mc}
3488 % \begin{macro}{\gt}
3489 % \begin{macro}{\rm}
3490 % \begin{macro}{\sf}
3491 % \begin{macro}{\tt}
3492 % これらのコマンドはフォントファミリを変更します。
3493 % 互換モードの同名コマンドと異なり、すべてのコマンドがデフォルトフォントに
3494 % リセットしてから、対応する属性を変更することに注意してください。
3495 %    \begin{macrocode}
3496 \DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
3497 \DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
3498 \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
3499 \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
3500 \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
3501 %    \end{macrocode}
3502 % \end{macro}
3503 % \end{macro}
3504 % \end{macro}
3505 % \end{macro}
3506 % \end{macro}
3507 %
3508 % \begin{macro}{\bf}
3509 % このコマンドはボールド書体にします。ノーマル書体に変更するには、
3510 % |\mdseries|と指定をします。
3511 %    \begin{macrocode}
3512 \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
3513 %    \end{macrocode}
3514 % \end{macro}
3515 %
3516 % \begin{macro}{\it}
3517 % \begin{macro}{\sl}
3518 % \begin{macro}{\sc}
3519 % これらのコマンドはフォントシェイプを切替えます。
3520 % スラント体とスモールキャップの数式アルファベットはありませんので、
3521 % 数式モードでは何もしませんが、警告メッセージを出力します。
3522 % |\upshape|コマンドで通常のシェイプにすることができます。
3523 %    \begin{macrocode}
3524 \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
3525 \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
3526 \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
3527 %    \end{macrocode}
3528 % \end{macro}
3529 % \end{macro}
3530 % \end{macro}
3531 %
3532 % \begin{macro}{\cal}
3533 % \begin{macro}{\mit}
3534 % これらのコマンドは数式モードでだけ使うことができます。
3535 % 数式モード以外では何もしません。
3536 % 現在のNFSSは、これらのコマンドが警告を生成するように定義していますので、
3537 % `手ずから'定義する必要があります。
3538 %    \begin{macrocode}
3539 \DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal}
3540 \DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal}
3541 %    \end{macrocode}
3542 % \end{macro}
3543 % \end{macro}
3544 %
3545 %
3546 %
3547 % \section{相互参照}
3548 %
3549 % \subsection{目次}
3550 % |\section|コマンドは、\file{.toc}ファイルに、次のような行を出力します。
3551 %
3552 % |\contentsline{section}{|\meta{title}|}{|\meta{page}|}|
3553 %
3554 % \meta{title}には項目が、\meta{page}にはページ番号が入ります。
3555 % |\section|に見出し番号が付く場合は、\meta{title}は、
3556 % |\numberline{|\meta{num}|}{|\meta{heading}|}|となります。
3557 % \meta{num}は|\thesection|コマンドで生成された見出し番号です。
3558 % \meta{heading}は見出し文字列です。この他の見出しコマンドも同様です。
3559 %
3560 % figure環境での|\caption|コマンドは、\file{.lof}ファイルに、
3561 % 次のような行を出力します。
3562 %
3563 % |\contentsline{figure}{\numberline{|\meta{num}|}{|%
3564 %                              \meta{caption}|}}{|\meta{page}|}|
3565 %
3566 % \meta{num}は、|\thefigure|コマンドで生成された図番号です。
3567 % \meta{caption}は、キャプション文字列です。table環境も同様です。
3568 %
3569 % |\contentsline{|\meta{name}|}|コマンドは、|\l@|\meta{name}に展開されます。
3570 % したがって、目次の体裁を記述するには、|\l@chapter|, |\l@section|などを
3571 % 定義します。図目次のためには|\l@figure|です。
3572 % これらの多くのコマンドは|\@dottedtocline|コマンドで定義されています。
3573 % このコマンドは次のような書式となっています。
3574 %
3575 % |\@dottedtocline{|\meta{level}|}{|\meta{indent}|}{|^^A
3576 %        \meta{numwidth}|}{|\meta{title}|}{|\meta{page}|}|
3577 %
3578 % \begin{description}
3579 % \item[\meta{level}] ``\meta{level} $<=$ \Lcount{tocdepth}''のときにだけ、
3580 %   生成されます。|\chapter|はレベル0、|\section|はレベル1、$\ldots$ です。
3581 % \item[\meta{indent}] 一番外側からの左マージンです。
3582 % \item[\meta{numwidth}] 見出し番号(|\numberline|コマンドの\meta{num})が
3583 %   入るボックスの幅です。
3584 % \end{description}
3585 %
3586 % \begin{macro}{\c@tocdepth}
3587 % \Lcount{tocdepth}は、目次ページに出力をする見出しレベルです。
3588 %    \begin{macrocode}
3589 %<article>\setcounter{tocdepth}{3}
3590 %<!article>\setcounter{tocdepth}{2}
3591 %    \end{macrocode}
3592 % \end{macro}
3593 %
3594 % また、目次を生成するために次のパラメータも使います。
3595 %
3596 % \begin{macro}{\@pnumwidth}
3597 % ページ番号の入るボックスの幅です。
3598 %    \begin{macrocode}
3599 \newcommand{\@pnumwidth}{1.55em}
3600 %    \end{macrocode}
3601 % \end{macro}
3602 %
3603 % \begin{macro}{\@tocmarg}
3604 % 複数行にわたる場合の右マージンです。
3605 %    \begin{macrocode}
3606 \newcommand{\@tocrmarg}{2.55em}
3607 %    \end{macrocode}
3608 % \end{macro}
3609 %
3610 % \begin{macro}{\@dotsep}
3611 % ドットの間隔(mu単位)です。2や1.7のように指定をします。
3612 %    \begin{macrocode}
3613 \newcommand{\@dotsep}{4.5}
3614 %    \end{macrocode}
3615 % \end{macro}
3616 %
3617 % \begin{macro}{\toclineskip}
3618 % この長さ変数は、目次項目の間に入るスペースの長さです。
3619 % デフォルトはゼロとなっています。縦組のとき、スペースを少し広げます。
3620 %    \begin{macrocode}
3621 \newdimen\toclineskip
3622 %<yoko>\setlength\toclineskip{\z@}
3623 %<tate>\setlength\toclineskip{2\p@}
3624 %    \end{macrocode}
3625 % \end{macro}
3626 %
3627 % \begin{macro}{\numberline}
3628 % \begin{macro}{\@lnumwidth}
3629 % |\numberline|マクロの定義を示します。オリジナルの定義では、ボックスの幅を
3630 % |\@tempdima|にしていますが、この変数はいろいろな箇所で使われますので、
3631 % 期待した値が入らない場合があります。
3632 %
3633 % たとえば、|lltjfont.sty|での|\selectfont|は、和欧文のベースラインを調整する
3634 % ために|\@tempdima|変数を用いています。そのため、|\l@...|マクロの中で
3635 % フォントを切替えると、|\numberline|マクロのボックス
3636 % の幅が、ベースラインを調整するときに計算した値になってしまいます。
3637 %
3638 % フォント選択コマンドの後、あるいは|\numberline|マクロの中でフォントを
3639 % 切替えてもよいのですが、一時変数を意識したくないので、
3640 % 見出し番号の入るボックスを|\@lnumwidth|変数を用いて組み立てるように
3641 % |\numberline|マクロを再定義します。
3642 %    \begin{macrocode}
3643 \newdimen\@lnumwidth
3644 \def\numberline#1{\hbox to\@lnumwidth{#1\hfil}}
3645 %    \end{macrocode}
3646 % \end{macro}
3647 % \end{macro}
3648 %
3649 % \begin{macro}{\@dottedtocline}
3650 % 目次の各行間に|\toclineskip|を入れるように変更します。
3651 % このマクロは\file{ltsect.dtx}で定義されています。
3652 % \changes{v1.3}{2001/10/04}{第5引数の書体を\cs{rmfamily}から\cs{normalfont}に変更}
3653 %    \begin{macrocode}
3654 \def\@dottedtocline#1#2#3#4#5{%
3655   \ifnum #1>\c@tocdepth \else
3656     \vskip\toclineskip \@plus.2\p@
3657     {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip
3658      \parindent #2\relax\@afterindenttrue
3659      \interlinepenalty\@M
3660      \leavevmode
3661      \@lnumwidth #3\relax
3662      \advance\leftskip \@lnumwidth \hbox{}\hskip -\leftskip
3663      {#4}\nobreak
3664      \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep mu$}%
3665      \hfill\nobreak
3666      \hb@xt@\@pnumwidth{\hss\normalfont \normalcolor #5}%
3667      \par}%
3668   \fi}
3669 %    \end{macrocode}
3670 % \end{macro}
3671 %
3672 % \begin{macro}{\addcontentsline}
3673 % ページ番号を|\rensuji|で囲むように変更します。
3674 % 横組のときにも`|\rensuji|'コマンドが出力されますが、
3675 % このコマンドによる影響はありません。
3676 %
3677 % このマクロは\file{ltsect.dtx}で定義されています。
3678 %    \begin{macrocode}
3679 \def\addcontentsline#1#2#3{%
3680   \protected@write\@auxout
3681     {\let\label\@gobble \let\index\@gobble \let\glossary\@gobble
3682 %<tate>\@temptokena{\rensuji{\thepage}}}%
3683 %<yoko>\@temptokena{\thepage}}%
3684     {\string\@writefile{#1}%
3685        {\protect\contentsline{#2}{#3}{\the\@temptokena}}}%
3686 }
3687 %    \end{macrocode}
3688 % \end{macro}
3689 %
3690 %
3691 % \subsubsection{本文目次}
3692 %
3693 % \begin{macro}{\tableofcontents}
3694 % 目次を生成します。
3695 %    \begin{macrocode}
3696 \newcommand{\tableofcontents}{%
3697 %<*report|book>
3698   \if@twocolumn\@restonecoltrue\onecolumn
3699   \else\@restonecolfalse\fi
3700 %</report|book>
3701 %<article>  \section*{\contentsname
3702 %<!article>  \chapter*{\contentsname
3703     \@mkboth{\contentsname}{\contentsname}%
3704   }\@starttoc{toc}%
3705 %<report|book>  \if@restonecol\twocolumn\fi
3706 }
3707 %    \end{macrocode}
3708 % \end{macro}
3709 %
3710 % \begin{macro}{\l@part}
3711 % partレベルの目次です。
3712 %    \begin{macrocode}
3713 \newcommand*{\l@part}[2]{%
3714   \ifnum \c@tocdepth >-2\relax
3715 %<article>    \addpenalty{\@secpenalty}%
3716 %<!article>    \addpenalty{-\@highpenalty}%
3717     \addvspace{2.25em \@plus\p@}%
3718     \begingroup
3719     \parindent\z@\rightskip\@pnumwidth
3720     \parfillskip-\@pnumwidth
3721     {\leavevmode\large\bfseries
3722      \setlength\@lnumwidth{4\zw}%
3723      #1\hfil\nobreak
3724      \hbox to\@pnumwidth{\hss#2}}\par
3725     \nobreak
3726 %<article>    \if@compatibility
3727     \global\@nobreaktrue
3728     \everypar{\global\@nobreakfalse\everypar{}}%
3729 %<article>    \fi
3730      \endgroup
3731   \fi}
3732 %    \end{macrocode}
3733 % \end{macro}
3734 %
3735 % \begin{macro}{\l@chapter}
3736 % chapterレベルの目次です。
3737 %    \begin{macrocode}
3738 %<*report|book>
3739 \newcommand*{\l@chapter}[2]{%
3740   \ifnum \c@tocdepth >\m@ne
3741     \addpenalty{-\@highpenalty}%
3742     \addvspace{1.0em \@plus\p@}%
3743     \begingroup
3744       \parindent\z@ \rightskip\@pnumwidth \parfillskip-\rightskip
3745       \leavevmode\bfseries
3746       \setlength\@lnumwidth{4\zw}%
3747       \advance\leftskip\@lnumwidth \hskip-\leftskip
3748       #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss#2}\par
3749       \penalty\@highpenalty
3750     \endgroup
3751   \fi}
3752 %</report|book>
3753 %    \end{macrocode}
3754 % \end{macro}
3755 %
3756 % \begin{macro}{\l@section}
3757 % sectionレベルの目次です。
3758 %    \begin{macrocode}
3759 %<*article>
3760 \newcommand*{\l@section}[2]{%
3761   \ifnum \c@tocdepth >\z@
3762     \addpenalty{\@secpenalty}%
3763     \addvspace{1.0em \@plus\p@}%
3764     \begingroup
3765       \parindent\z@ \rightskip\@pnumwidth \parfillskip-\rightskip
3766       \leavevmode\bfseries
3767       \setlength\@lnumwidth{1.5em}%
3768       \advance\leftskip\@lnumwidth \hskip-\leftskip
3769       #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss#2}\par
3770     \endgroup
3771   \fi}
3772 %</article>
3773 %    \end{macrocode}
3774 %
3775 %    \begin{macrocode}
3776 %<*report|book>
3777 %<tate>\newcommand*{\l@section}{\@dottedtocline{1}{1\zw}{4\zw}}
3778 %<yoko>\newcommand*{\l@section}{\@dottedtocline{1}{1.5em}{2.3em}}
3779 %</report|book>
3780 %    \end{macrocode}
3781 % \end{macro}
3782 %
3783 % \begin{macro}{\l@subsection}
3784 % \begin{macro}{\l@subsubsection}
3785 % \begin{macro}{\l@paragraph}
3786 % \begin{macro}{\l@subparagraph}
3787 % 下位レベルの目次項目の体裁です。
3788 %    \begin{macrocode}
3789 %<*tate>
3790 %<*article>
3791 \newcommand*{\l@subsection}   {\@dottedtocline{2}{1\zw}{4\zw}}
3792 \newcommand*{\l@subsubsection}{\@dottedtocline{3}{2\zw}{6\zw}}
3793 \newcommand*{\l@paragraph}    {\@dottedtocline{4}{3\zw}{8\zw}}
3794 \newcommand*{\l@subparagraph} {\@dottedtocline{5}{4\zw}{9\zw}}
3795 %</article>
3796 %<*report|book>
3797 \newcommand*{\l@subsection}   {\@dottedtocline{2}{2\zw}{6\zw}}
3798 \newcommand*{\l@subsubsection}{\@dottedtocline{3}{3\zw}{8\zw}}
3799 \newcommand*{\l@paragraph}    {\@dottedtocline{4}{4\zw}{9\zw}}
3800 \newcommand*{\l@subparagraph} {\@dottedtocline{5}{5\zw}{10\zw}}
3801 %</report|book>
3802 %</tate>
3803 %<*yoko>
3804 %<*article>
3805 \newcommand*{\l@subsection}   {\@dottedtocline{2}{1.5em}{2.3em}}
3806 \newcommand*{\l@subsubsection}{\@dottedtocline{3}{3.8em}{3.2em}}
3807 \newcommand*{\l@paragraph}    {\@dottedtocline{4}{7.0em}{4.1em}}
3808 \newcommand*{\l@subparagraph} {\@dottedtocline{5}{10em}{5em}}
3809 %</article>
3810 %<*report|book>
3811 \newcommand*{\l@subsection}   {\@dottedtocline{2}{3.8em}{3.2em}}
3812 \newcommand*{\l@subsubsection}{\@dottedtocline{3}{7.0em}{4.1em}}
3813 \newcommand*{\l@paragraph}    {\@dottedtocline{4}{10em}{5em}}
3814 \newcommand*{\l@subparagraph} {\@dottedtocline{5}{12em}{6em}}
3815 %</report|book>
3816 %</yoko>
3817 %    \end{macrocode}
3818 % \end{macro}
3819 % \end{macro}
3820 % \end{macro}
3821 % \end{macro}
3822 %
3823 %
3824 % \subsubsection{図目次と表目次}
3825 %
3826 % \begin{macro}{\listoffigures}
3827 % 図の一覧を作成します。
3828 %    \begin{macrocode}
3829 \newcommand{\listoffigures}{%
3830 %<*report|book>
3831   \if@twocolumn\@restonecoltrue\onecolumn
3832   \else\@restonecolfalse\fi
3833   \chapter*{\listfigurename
3834 %</report|book>
3835 %<article>    \section*{\listfigurename
3836   \@mkboth{\listfigurename}{\listfigurename}}%
3837   \@starttoc{lof}%
3838 %<report|book>  \if@restonecol\twocolumn\fi
3839 }
3840 %    \end{macrocode}
3841 % \end{macro}
3842 %
3843 % \begin{macro}{\l@figure}
3844 % 図目次の体裁です。
3845 %    \begin{macrocode}
3846 %<tate>\newcommand*{\l@figure}{\@dottedtocline{1}{1\zw}{4\zw}}
3847 %<yoko>\newcommand*{\l@figure}{\@dottedtocline{1}{1.5em}{2.3em}}
3848 %    \end{macrocode}
3849 % \end{macro}
3850 %
3851 % \begin{macro}{\listoftables}
3852 % \changes{v1.0c}{1995/12/28}{fix the \cs{listoftable} typo.}
3853 % 表の一覧を作成します。
3854 %    \begin{macrocode}
3855 \newcommand{\listoftables}{%
3856 %<*report|book>
3857   \if@twocolumn\@restonecoltrue\onecolumn
3858   \else\@restonecolfalse\fi
3859   \chapter*{\listtablename
3860 %</report|book>
3861 %<article>    \section*{\listtablename
3862   \@mkboth{\listtablename}{\listtablename}}%
3863   \@starttoc{lot}%
3864 %<report|book>  \if@restonecol\twocolumn\fi
3865 }
3866 %    \end{macrocode}
3867 % \end{macro}
3868 %
3869 % \begin{macro}{\l@table}
3870 % 表目次の体裁は、図目次と同じにします。
3871 %    \begin{macrocode}
3872 \let\l@table\l@figure
3873 %    \end{macrocode}
3874 % \end{macro}
3875 %
3876 %
3877 % \subsection{参考文献}
3878 %
3879 % \begin{macro}{\bibindent}
3880 % オープンスタイルの参考文献で使うインデント幅です。
3881 %    \begin{macrocode}
3882 \newdimen\bibindent
3883 \setlength\bibindent{1.5em}
3884 %    \end{macrocode}
3885 % \end{macro}
3886 %
3887 % \begin{macro}{\newblock}
3888 % |\newblock|のデフォルト定義は、小さなスペースを生成します。
3889 %    \begin{macrocode}
3890 \newcommand{\newblock}{\hskip .11em\@plus.33em\@minus.07em}
3891 %    \end{macrocode}
3892 % \end{macro}
3893 %
3894 % \begin{environment}{thebibliography}
3895 % 参考文献や関連図書のリストを作成します。
3896 %    \begin{macrocode}
3897 \newenvironment{thebibliography}[1]
3898 %<article>{\section*{\refname\@mkboth{\refname}{\refname}}%
3899 %<report|book>{\chapter*{\bibname\@mkboth{\bibname}{\bibname}}%
3900    \list{\@biblabel{\@arabic\c@enumiv}}%
3901         {\settowidth\labelwidth{\@biblabel{#1}}%
3902          \leftmargin\labelwidth
3903          \advance\leftmargin\labelsep
3904          \@openbib@code
3905          \usecounter{enumiv}%
3906          \let\p@enumiv\@empty
3907          \renewcommand\theenumiv{\@arabic\c@enumiv}}%
3908    \sloppy
3909 %    \end{macrocode}
3910 % \changes{v1.1a}{1997/01/23}{\LaTeX\ \texttt{!<1996/12/01!>}に合わせて修正}
3911 %    \begin{macrocode}
3912    \clubpenalty4000
3913    \@clubpenalty\clubpenalty
3914    \widowpenalty4000%
3915    \sfcode`\.\@m}
3916   {\def\@noitemerr
3917     {\@latex@warning{Empty `thebibliography' environment}}%
3918    \endlist}
3919 %    \end{macrocode}
3920 % \end{environment}
3921 %
3922 % \begin{macro}{\@openbib@code}
3923 % |\@openbib@code|のデフォルト定義は何もしません。
3924 % この定義は、\Lopt{openbib}オプションによって変更されます。
3925 %    \begin{macrocode}
3926 \let\@openbib@code\@empty
3927 %    \end{macrocode}
3928 % \end{macro}
3929 %
3930 % \begin{macro}{\@biblabel}
3931 %    The label for a |\bibitem[...]| command is produced by this
3932 %    macro. The default from \file{latex.dtx} is used.
3933 %    \begin{macrocode}
3934 % \renewcommand*{\@biblabel}[1]{[#1]\hfill}
3935 %    \end{macrocode}
3936 % \end{macro}
3937 %
3938 % \begin{macro}{\@cite}
3939 %    The output of the |\cite| command is produced by this macro. The
3940 %    default from \file{latex.dtx} is used.
3941 %    \begin{macrocode}
3942 % \renewcommand*{\@cite}[1]{[#1]}
3943 %    \end{macrocode}
3944 % \end{macro}
3945 %
3946 %
3947 % \subsection{索引}
3948 %
3949 % \begin{environment}{theindex}
3950 % 2段組の索引を作成します。
3951 % 索引の先頭のページのスタイルは\pstyle{jpl@in}とします。したがって、
3952 % \pstyle{headings}と\pstyle{bothstyle}に適した位置に出力されます。
3953 %    \begin{macrocode}
3954 \newenvironment{theindex}
3955   {\if@twocolumn\@restonecolfalse\else\@restonecoltrue\fi
3956    \columnseprule\z@ \columnsep 35\p@
3957 %<article>   \twocolumn[\section*{\indexname}]%
3958 %<report|book>   \twocolumn[\@makeschapterhead{\indexname}]%
3959    \@mkboth{\indexname}{\indexname}%
3960    \thispagestyle{jpl@in}\parindent\z@
3961    \parskip\z@ \@plus .3\p@\relax
3962    \let\item\@idxitem}
3963   {\if@restonecol\onecolumn\else\clearpage\fi}
3964 %    \end{macrocode}
3965 % \end{environment}
3966 %
3967 % \begin{macro}{\@idxitem}
3968 % \begin{macro}{\subitem}
3969 % \begin{macro}{\subsubitem}
3970 % 索引項目の字下げ幅です。|\@idxitem|は|\item|の項目の字下げ幅です。
3971 %    \begin{macrocode}
3972 \newcommand{\@idxitem}{\par\hangindent 40\p@}
3973 \newcommand{\subitem}{\@idxitem \hspace*{20\p@}}
3974 \newcommand{\subsubitem}{\@idxitem \hspace*{30\p@}}
3975 %    \end{macrocode}
3976 % \end{macro}
3977 % \end{macro}
3978 % \end{macro}
3979 %
3980 % \begin{macro}{\indexspace}
3981 % 索引の``文字''見出しの前に入るスペースです。
3982 %    \begin{macrocode}
3983 \newcommand{\indexspace}{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
3984 %    \end{macrocode}
3985 % \end{macro}
3986 %
3987 %
3988 % \subsection{脚注}
3989 %
3990 % \begin{macro}{\footnoterule}
3991 % 本文と脚注の間に引かれる罫線です。
3992 %    \begin{macrocode}
3993 \renewcommand{\footnoterule}{%
3994   \kern-3\p@
3995   \hrule width .4\columnwidth
3996   \kern 2.6\p@}
3997 %    \end{macrocode}
3998 % \end{macro}
3999 %
4000 % \begin{macro}{\c@footnote}
4001 % reportとbookクラスでは、chapterレベルでリセットされます。
4002 %    \begin{macrocode}
4003 %<!article>\@addtoreset{footnote}{chapter}
4004 %    \end{macrocode}
4005 % \end{macro}
4006 %
4007 % \begin{macro}{\@makefntext}
4008 % このマクロにしたがって脚注が組まれます。
4009 %
4010 % |\@makefnmark|は脚注記号を組み立てるマクロです。
4011 %    \begin{macrocode}
4012 %<*tate>
4013 \newcommand\@makefntext[1]{\parindent 1\zw
4014   \noindent\hbox to 2\zw{\hss\@makefnmark}#1}
4015 %</tate>
4016 %<*yoko>
4017 \newcommand\@makefntext[1]{\parindent 1em
4018   \noindent\hbox to 1.8em{\hss\@makefnmark}#1}
4019 %</yoko>
4020 %    \end{macrocode}
4021 % \end{macro}
4022 %
4023 %
4024 % \section{今日の日付}
4025 % 組版時における現在の日付を出力します。
4026 %
4027 % \iffalse  meta-comment!
4028 %  注意:ここで \DisableCrossrefs, \EnableCrossrefs をしているのは、
4029 %        platex jclasses.dtx で dvi を作るときにエラーになるため。
4030 % \fi
4031 % \DisableCrossrefs
4032 % \begin{macro}{\ifSeireki}
4033 % \begin{macro}{\Seireki}
4034 % \begin{macro}{\Wareki}
4035 % \changes{v1.0h}{1996/12/17}{Typo:和歴 to 和暦}
4036 % |\today|コマンドの`年'を、
4037 % 西暦か和暦のどちらで出力するかを指定するコマンドです。
4038 %    \begin{macrocode}
4039 \newif\ifSeireki \Seirekifalse
4040 \def\Seireki{\Seirekitrue}
4041 \def\Wareki{\Seirekifalse}
4042 %    \end{macrocode}
4043 % \end{macro}
4044 % \end{macro}
4045 % \end{macro}
4046 % \EnableCrossrefs
4047 %
4048 % \begin{macro}{\heisei}
4049 % \changes{v1.1m}{1998/04/07}{\cs{today}の計算手順を変更}
4050 % |\today|コマンドを|\rightmark|で指定したとき、|\rightmark|を出力する部分
4051 % で和暦のための計算ができないので、クラスファイルを読み込む時点で計算して
4052 % おきます。
4053 %    \begin{macrocode}
4054 \newcount\heisei \heisei\year \advance\heisei-1988\relax
4055 %    \end{macrocode}
4056 % \end{macro}
4057 %
4058 % \begin{macro}{\today}
4059 % 縦組の場合は、漢数字で出力します。
4060 %    \begin{macrocode}
4061 \def\today{{%
4062   \iftdir
4063     \ifSeireki
4064       \kansuji\number\year 年
4065       \kansuji\number\month 月
4066       \kansuji\number\day 日
4067     \else
4068       平成\ifnum\heisei=1 元年\else\kansuji\number\heisei 年\fi
4069       \kansuji\number\month 月
4070       \kansuji\number\day 日
4071     \fi
4072   \else
4073     \ifSeireki
4074       \number\year~年
4075       \number\month~月
4076       \number\day~日
4077     \else
4078       平成\ifnum\heisei=1 元年\else\number\heisei~年\fi
4079       \number\month~月
4080       \number\day~日
4081     \fi
4082   \fi}}
4083 %    \end{macrocode}
4084 % \end{macro}
4085 %
4086 %
4087 %
4088 %
4089 % \section{初期設定}
4090 %
4091 % \begin{macro}{\prepartname}
4092 % \begin{macro}{\postpartname}
4093 % \begin{macro}{\prechaptername}
4094 % \begin{macro}{\postchaptername}
4095 %    \begin{macrocode}
4096 \newcommand{\prepartname}{第}
4097 \newcommand{\postpartname}{部}
4098 %<report|book>\newcommand{\prechaptername}{第}
4099 %<report|book>\newcommand{\postchaptername}{章}
4100 %    \end{macrocode}
4101 % \end{macro}
4102 % \end{macro}
4103 % \end{macro}
4104 % \end{macro}
4105 %
4106 % \begin{macro}{\contentsname}
4107 % \begin{macro}{\listfigurename}
4108 % \begin{macro}{\listtablename}
4109 %    \begin{macrocode}
4110 \newcommand{\contentsname}{目 次}
4111 \newcommand{\listfigurename}{図 目 次}
4112 \newcommand{\listtablename}{表 目 次}
4113 %    \end{macrocode}
4114 % \end{macro}
4115 % \end{macro}
4116 % \end{macro}
4117 %
4118 % \begin{macro}{\refname}
4119 % \begin{macro}{\bibname}
4120 % \begin{macro}{\indexname}
4121 %    \begin{macrocode}
4122 %<article>\newcommand{\refname}{参考文献}
4123 %<report|book>\newcommand{\bibname}{関連図書}
4124 \newcommand{\indexname}{索 引}
4125 %    \end{macrocode}
4126 % \end{macro}
4127 % \end{macro}
4128 % \end{macro}
4129 %
4130 % \begin{macro}{\figurename}
4131 % \begin{macro}{\tablename}
4132 %    \begin{macrocode}
4133 \newcommand{\figurename}{図}
4134 \newcommand{\tablename}{表}
4135 %    \end{macrocode}
4136 % \end{macro}
4137 % \end{macro}
4138 %
4139 % \begin{macro}{\appendixname}
4140 % \begin{macro}{\abstractname}
4141 %    \begin{macrocode}
4142 \newcommand{\appendixname}{付 録}
4143 %<article|report>\newcommand{\abstractname}{概 要}
4144 %    \end{macrocode}
4145 % \end{macro}
4146 % \end{macro}
4147 %
4148 % \changes{v1.0d}{1996/02/29}{articleとreportのデフォルトを
4149 %                              \pstyle{plain}に修正}
4150 % \changes{v1.4}{2002/04/09}{縦組スタイルで\cs{flushbottom}しないようにした}
4151 %    \begin{macrocode}
4152 %<book>\pagestyle{headings}
4153 %<!book>\pagestyle{plain}
4154 \pagenumbering{arabic}
4155 \raggedbottom
4156 \if@twocolumn
4157   \twocolumn
4158   \sloppy
4159 \else
4160   \onecolumn
4161 \fi
4162 %    \end{macrocode}
4163 % |\@mparswitch|は傍注を左右(縦組では上下)どちらのマージンに
4164 % 出力するかの指定です。偽の場合、傍注は一方の側にしか出力されません。
4165 % このスイッチを真とすると、とくに縦組の場合、奇数ページでは本文の上に、
4166 % 偶数ページでは本文の下に傍注が出力されますので、おかしなことになります。
4167 %
4168 % また、縦組のときには、傍注を本文の下に出すようにしています。
4169 % |\reversemarginpar|とすると本文の上側に出力されます。
4170 % ただし、二段組の場合は、つねに隣接するテキスト側のマージンに出力されます。
4171 %    \begin{macrocode}
4172 %<*tate>
4173 \normalmarginpar
4174 \@mparswitchfalse
4175 %</tate>
4176 %<*yoko>
4177 \if@twoside
4178   \@mparswitchtrue
4179 \else 
4180   \@mparswitchfalse
4181 \fi
4182 %</yoko>
4183 %</article|report|book>
4184 %    \end{macrocode}
4185 %
4186 %
4187 %
4188 % \Finale
4189 %
4190 \endinput