OSDN Git Service

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