OSDN Git Service

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