OSDN Git Service

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