OSDN Git Service

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