OSDN Git Service

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