0
|
1 % Copyright (C) 1995-2007 by Hiroshi Nakashima, Yasuki Saito and
|
|
2 % The Editorial Board of the IPSJ Journal
|
|
3 %
|
|
4 % ipsjcommon.sty 15-Jun-07 by Hiroshi Nakashima (ver 2.12)
|
|
5 % (revision history deleted)
|
|
6 % ipsjcommon.sty 24-Apr-95 by Hiroshi Nakashima (ver 1.0)
|
|
7
|
|
8 %%%%%% Sectioning Commands %%%%%%
|
|
9
|
|
10 % \section: 2 rows
|
|
11 % others: 1 row
|
|
12 %
|
|
13 % Note that \paragraph and \subparagraph act as \subsubsubsection and
|
|
14 % \subsubsubsubsection resp.
|
|
15 %
|
|
16 % The form of sectioning header is;
|
|
17 % <1 Kanji sp> \the<sect-command> [`.' if \section] <1 Kanji sp> <title>
|
|
18 % Nothe that <1 Kanji sp> is that of \normalsize.
|
|
19
|
|
20 \def\section{\@startsection
|
|
21 {section}{1}{\@mojihaba}{\sec@aboveskip}{\sec@belowskip}{\fs@sec\bf}}
|
|
22 \let\ipsj@section\section % 2.04(1)
|
|
23 \def\subsection{\@startsection
|
|
24 {subsection}{2}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}}
|
|
25 \def\subsubsection{\@startsection
|
|
26 {subsubsection}{3}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}}
|
|
27 \def\paragraph{\@startsection
|
|
28 {paragraph}{4}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}}
|
|
29 \def\subparagraph{\@startsection
|
|
30 {subparagraph}{5}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}}
|
|
31
|
|
32 \newcounter{section}
|
|
33 \newcounter{subsection}[section]
|
|
34 \newcounter{subsubsection}[subsection]
|
|
35 \newcounter{paragraph}[subsubsection]
|
|
36 \newcounter{subparagraph}[paragraph]
|
|
37
|
|
38 \def\thesection{\arabic{section}}
|
|
39 \def\sec@section@postfix{.}
|
|
40 \def\thesubsection{\thesection.\arabic{subsection}}
|
|
41 \def\thesubsubsection{\thesubsection.\arabic{subsubsection}}
|
|
42 \def\theparagraph{\thesubsubsection.\arabic{paragraph}}
|
|
43 \def\thesubparagraph{\theparagraph.\arabic{subparagraph}}
|
|
44
|
|
45 \setcounter{secnumdepth}{5}
|
|
46
|
|
47 \def\appendix{\let\sec@sec\section
|
|
48 \def\section{\@startsection
|
|
49 {section}{1}{\@mojihaba}{\z@}{\z@}{\fs@subsec\bf}}%
|
|
50 \def\thesection{\appendixprefix\arabic{section}}%
|
|
51 \def\sec@section@postfix{\appendixpostfix}%
|
|
52 \stepcounter{section}\setcounter{section}{0}%
|
|
53 \@ifnextchar[%]
|
|
54 {\sec@oappendix}{\sec@xappendix}}
|
|
55 \def\sec@xappendix{\@ifstar{\let\section\sec@sec}%
|
|
56 {\sec@sec*{\ifDS@english Appendix\else\ipsj@j@app \fi}}}% 2.12(1b)
|
|
57 \def\sec@oappendix[#1]{\sec@sec*{\ifDS@english Appendix: \else
|
|
58 \ipsj@j@app\hskip\jspaceskip\fi #1}} % 2.12(1b)
|
|
59 \def\appendixprefix{A.}
|
|
60 \def\appendixpostfix{}
|
|
61
|
|
62 \def\acknowledgment{\par
|
|
63 {\bf \ifDS@english Acknowledgments \else\ipsj@j@ack\fi}%% 2.12(1b)
|
|
64 \hskip\@mojihaba \ignorespaces}
|
|
65 \let\endacknowledgment\par
|
|
66
|
|
67 \newif\ifipsj@recommendation \ipsj@recommendationfalse % 2.04(1) >>
|
|
68 \def\recommendation#1{\global\ipsj@recommendationtrue
|
|
69 \ifDS@draft\else \ra@putrcvacc\fi
|
|
70 \ipsj@section*{#1}
|
|
71 }
|
|
72 \def\endrecommendation{\par\vskip\baselineskip\penalty\opt@magicpenalty}
|
|
73 % 2.04(1) <<
|
|
74
|
|
75 % Modified \@startsection has a trick for "2-row" of \section, which must
|
|
76 % work even if \section appears the top of a page. The BEFORESKIP must be
|
|
77 % inserted with respect to the previous baseline. So, we must go back to
|
|
78 % the imaginary previous baseline at the top of a page. That is, we do;
|
|
79 % \vskip\baselineskip \vspace*{-\baselineskip}
|
|
80 % which resuls;
|
|
81 % <a> do nothing at midpage
|
|
82 % <b> go to the first baseline by \topskip, then go back to 0th
|
|
83 % baseline by \vspace*.
|
|
84 % The trick "\vskip-\prevdepth \prevdepth\z@" will assure exact vertical
|
|
85 % space even when the last line has much depth.
|
|
86 %
|
|
87 % \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}
|
|
88 \def\@startsection#1#2#3#4#5#6{\if@noskipsec \leavevmode \fi
|
|
89 \par \@tempskipa #4\relax
|
|
90 \@afterindenttrue
|
|
91 \ifdim\@tempskipa<\z@ \@tempskipa-\@tempskipa \@afterindentfalse\fi
|
|
92 \if@nobreak \everypar{}\else \addpenalty{\@secpenalty}\fi
|
|
93 \ifdim\@tempskipa>\z@
|
|
94 % Here is the trick for \section.
|
|
95 \vskip-\prevdepth \prevdepth\z@ \vskip\baselineskip
|
|
96 \vspace*{-\baselineskip}\vskip\@tempskipa\fi
|
|
97 \@ifstar
|
|
98 {\@ssect{#3}{#4}{#5}{#6}}{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
|
|
99
|
|
100 % \@sect is modified to cope with `.' for \section and MOJI-DORI
|
|
101 %
|
|
102 % \@sect{NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}[TITLE]{TITLE}
|
|
103 \def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth
|
|
104 \def\@svsec{}\else
|
|
105 \refstepcounter{#1}
|
|
106 % 2.00(1)>>
|
|
107 \let\@@protect\protect \def\protect{\noexpand\protect\noexpand}
|
|
108 \edef\@svsec{\csname the#1\endcsname \csname sec@#1@postfix\endcsname
|
|
109 \hskip\@mojihaba} \let\protect\@@protect\fi % 2.00(1)<<
|
|
110 \@tempskipa #5\relax
|
|
111 \ifdim \@tempskipa<\z@
|
|
112 \def\@svsechd{#6\hskip #3\relax\@svsec #8} % 2.00(1)
|
|
113 \else
|
|
114 \begingroup #6\relax
|
|
115 \@hangfrom{\hskip #3\relax\@svsec}%
|
|
116 {\interlinepenalty\@M \sec@mojidori{#8}\par}%
|
|
117 \endgroup
|
|
118 \fi \@xsect{#5}}
|
|
119
|
|
120 % \@ssect is modified to cope with MOJI-DORI
|
|
121 %
|
|
122 % \@sect{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}{TITLE}
|
|
123 \def\@ssect#1#2#3#4#5{\@tempskipa #3\relax
|
|
124 \ifdim \@tempskipa<\z@ \def\@svsechd{#4\hskip #1\relax #5}%
|
|
125 \else \begingroup #4%
|
|
126 \@hangfrom{\hskip #1}{\interlinepenalty\@M
|
|
127 \sec@mojidori{#5}\par}\endgroup
|
|
128 \fi \@xsect{#3}}
|
|
129
|
|
130 %% Modify \@xsect to avoid (buggy) \clubpenalty=10000. (H.N.)
|
|
131 \def\@xsect#1{\@tempskipa #1\relax
|
|
132 \ifdim \@tempskipa<\z@
|
|
133 \glboal\@nobreakfalse \global\@noskipsectrue
|
|
134 \everypar{\global\@noskipsecfalse \hskip-\parindent
|
|
135 \begingroup \@svsechd \endgroup \unskip
|
|
136 \hskip -#1\everypar{}}%
|
|
137 \else
|
|
138 \par \nobreak
|
|
139 \vskip \@tempskipa \global\@nobreaktrue
|
|
140 \everypar{\global\@nobreakfalse
|
|
141 \if@afterindent\else {\setbox0\lastbox}\fi \everypar{}}
|
|
142 \fi\ignorespaces}
|
|
143
|
|
144 % Here is a trick for MOJI-DORI of sectioning tilte. The rule is;
|
|
145 % 2 - 4 Kanji char -> 5 Kanji char
|
|
146 % otherwise -> natural width
|
|
147 %
|
|
148 \def\sec@mojidori#1{\ifDS@english #1\else % 2.12(1b)
|
|
149 \setbox0\hbox{#1}\settowidth\@tempdimb{\ipsj@j@a}% % 2.12(1b)
|
|
150 \ifdim\wd0>4.5\@tempdimb #1\else
|
|
151 \ifdim\wd0<1.5\@tempdimb #1\else
|
|
152 \jintercharskip\fill \jasciikanjiskip\fill \jmathkanjiskip\fill
|
|
153 \leavevmode\hbox to5\@tempdimb{#1\hfil}\fi\fi\fi}
|
|
154
|
|
155 %%%%%% List-like Environments %%%%%%
|
|
156 %
|
|
157 % LM RM LW LS LPI II
|
|
158 % default 2K 0 0.75K 0.25K 0 0
|
|
159 % \enumerate 3K 0 3K 0 0 0
|
|
160 % \Enumerate 0 0 3K 0 0 3K
|
|
161 % \ENUMERATE 0 0 3K 0 0 4K
|
|
162 % \enumerate* 1K 0 3K 0 0 2K
|
|
163 % \itemize 2K 0 2K 0 0 0
|
|
164 % \Itemize 0 0 2K 0 0 2K
|
|
165 % \ITEMIZE 0 0 2K 0 0 3K
|
|
166 % \itemize* 1K 0 2K 0 0 1K
|
|
167 % \description 2K 0 0 1K 0 -1K
|
|
168 % \Description 0 0 0 1K 0 1K
|
|
169 % \DESCRIPTION 0 0 0 1K 0 2K
|
|
170 % \description* 1K 0 0 1K 0 0
|
|
171 % \verse 3K 2K 0.75K 0.25K -1K -1K
|
|
172 % \quotation 2K 2K 0.75K 0.25K 1K 1K
|
|
173 % \quote 2K 2K 0.75K 0.25K 0 0
|
|
174 %
|
|
175 % where LM is \leftmargin, RM is \rightmargin, LW is \labelwidth, LS is
|
|
176 % \labelsep, \LPI is \listparindent, II is \itemindent, and K is Kanji char
|
|
177 % width (\@mojihaba).
|
|
178 %
|
|
179 % All vertical space parameters, \topsep, \partopsep, \itemsep and \parsep,
|
|
180 % are 0pt.
|
|
181
|
|
182 \leftmargini2\@mojihaba
|
|
183 \leftmarginii2\@mojihaba
|
|
184 \leftmarginiii2\@mojihaba
|
|
185 \leftmarginiv2\@mojihaba
|
|
186 \leftmarginv2\@mojihaba
|
|
187 \leftmarginvi2\@mojihaba
|
|
188
|
|
189 \def\lst@listi{\labelsep.75\@mojihaba \labelwidth.25\@mojihaba
|
|
190 \rightmargin\z@ \listparindent\z@ \itemindent\z@
|
|
191 \partopsep\z@ \parsep\z@ \topsep\z@ \itemsep\z@}
|
|
192 \def\@listi{\leftmargin\leftmargini \lst@listi}
|
|
193 \def\@listii{\leftmargin\leftmarginii \lst@listi}
|
|
194 \def\@listiii{\leftmargin\leftmarginiii \lst@listi}
|
|
195 \def\@listiv{\leftmargin\leftmarginiv \lst@listi}
|
|
196 \def\@listv{\leftmargin\leftmarginv \lst@listi}
|
|
197 \def\@listvi{\leftmargin\leftmarginvi \lst@listi}
|
|
198
|
|
199 \@listi
|
|
200
|
|
201 \def\labelenumi{(\,\theenumi\,)}
|
|
202 \def\theenumi{\arabic{enumi}}
|
|
203 \def\labelenumii{(\,\theenumii\,)}
|
|
204 \def\theenumii{\alph{enumii}}
|
|
205 \def\p@enumii{\theenumi}
|
|
206 \def\labelenumiii{(\,\theenumiii\,)}
|
|
207 \def\theenumiii{\roman{enumiii}}
|
|
208 \def\p@enumiii{\theenumi(\theenumii)}
|
|
209 \def\labelenumiv{(\,\theenumiv\,)}
|
|
210 \def\theenumiv{\Alph{enumiv}}
|
|
211 \def\p@enumiv{\p@enumiii\theenumiii}
|
|
212 \def\enumerate{\ifnum \@enumdepth >3 \@toodeep\else
|
|
213 \advance\@enumdepth \@ne
|
|
214 \edef\@enumctr{enum\romannumeral\the\@enumdepth}
|
|
215 \list{\csname label\@enumctr\endcsname}{\usecounter
|
|
216 {\@enumctr}\def\makelabel##1{##1\hss}%
|
|
217 \leftmargin3\@mojihaba \labelwidth3\@mojihaba \labelsep\z@}\fi}
|
|
218 \let\endenumerate\endlist
|
|
219
|
|
220 \def\labelitemi{$\bullet$}
|
|
221 \def\labelitemii{\bf --}
|
|
222 \def\labelitemiii{$\ast$}
|
|
223 \def\labelitemiv{$\cdot$}
|
|
224 \def\itemize{\ifnum \@itemdepth >3 \@toodeep\else \advance\@itemdepth \@ne
|
|
225 \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
|
|
226 \list{\csname\@itemitem\endcsname}{\def\makelabel##1{\hss##1\hss}%
|
|
227 \labelwidth2\@mojihaba \labelsep\z@}\fi}
|
|
228 \let\enditemize\endlist
|
|
229
|
|
230 \def\description{\list{}{\labelwidth\z@ \labelsep\@mojihaba
|
|
231 \itemindent\labelsep \advance\itemindent-\leftmargin
|
|
232 \def\makelabel##1{\bf ##1}}}
|
|
233 \let\enddescription\endlist
|
|
234
|
|
235 \let\latex@trivlist\@trivlist
|
|
236 \def\lst@trivlist#1#2{\leftmargin#1\relax
|
|
237 \itemindent\labelwidth \advance\itemindent\labelsep
|
|
238 \advance\itemindent#2\relax
|
|
239 \let\@trivlist\latex@trivlist \@trivlist}
|
|
240
|
|
241 \def\lst@Trivlist{\def\@trivlist{\lst@trivlist\z@\z@}}
|
|
242 \def\Enumerate{\lst@Trivlist \enumerate}
|
|
243 \let\endEnumerate\endlist
|
|
244 \def\Itemize{\lst@Trivlist \itemize}
|
|
245 \let\endItemize\endlist
|
|
246 \def\Description{\lst@Trivlist \description}
|
|
247 \let\endDescription\endlist
|
|
248
|
|
249 \def\lst@TRIVLIST{\def\@trivlist{\lst@trivlist\z@\@mojihaba}}
|
|
250 \def\ENUMERATE{\lst@TRIVLIST \enumerate}
|
|
251 \let\endENUMERATE\endlist
|
|
252 \def\ITEMIZE{\lst@TRIVLIST \itemize}
|
|
253 \let\endITEMIZE\endlist
|
|
254 \def\DESCRIPTION{\lst@TRIVLIST \description}
|
|
255 \let\endDESCRIPTION\endlist
|
|
256
|
|
257 \def\lst@strivlist{\def\@trivlist{\lst@trivlist\@mojihaba{-\@mojihaba}}}
|
|
258 \@namedef{enumerate*}{\lst@strivlist \enumerate}
|
|
259 \@namedef{endenumerate*}{\endlist}
|
|
260 \@namedef{itemize*}{\lst@strivlist \itemize}
|
|
261 \@namedef{enditemize*}{\endlist}
|
|
262 \@namedef{description*}{\lst@strivlist \description}
|
|
263 \@namedef{enddescription*}{\endlist}
|
|
264
|
|
265 \def\verse{\let\\=\@centercr
|
|
266 \list{}{\itemindent-\@mojihaba \listparindent\itemindent
|
|
267 \rightmargin\leftmargin \advance\leftmargin\@mojihaba}\item[]}
|
|
268 \let\endverse\endlist
|
|
269 \def\quotation{\list{}{\listparindent\@mojihaba \itemindent\listparindent
|
|
270 \rightmargin\leftmargin}\item[]}
|
|
271 \let\endquotation\endlist
|
|
272 \def\quote{\list{}{\rightmargin\leftmargin}\item[]}
|
|
273 \let\endquote\endlist
|
|
274
|
|
275 \def\newtheorem{\@ifstar
|
|
276 {\theo@newtheorem{\theo@it}{\ }}{\theo@newtheorem{}{\theo@sp}}}
|
|
277 \def\theo@newtheorem#1#2#3{\@namedef{theo@it@#3}{#1}\@namedef{theo@sp@#3}{#2}%
|
|
278 \@ifnextchar[%]
|
|
279 {\@othm{#3}}{\@nthm{#3}}}
|
|
280 \def\@begintheorem#1#2{\DESCRIPTION \csname theo@it@\@currenvir\endcsname
|
|
281 \item[#1\csname theo@sp@\@currenvir\endcsname #2]}
|
|
282 \def\@opargbegintheorem#1#2#3{\DESCRIPTION
|
|
283 \csname theo@style@\@currenvir\endcsname
|
|
284 \item[#1\csname theo@sp@\@currenvir\endcsname #2\ (#3)]}
|
|
285 \let\@endtheorem\endlist % 1.02(2)
|
|
286 \ifDS@english
|
|
287 \let\theo@it\it \let\theo@sp\ %
|
|
288 \else
|
|
289 \let\theo@it\relax \let\theo@sp\relax
|
|
290 \fi
|
|
291
|
|
292 %%%%%% Bibliography %%%%%%
|
|
293 %
|
|
294 % 1. Label format is "<nn>)".
|
|
295 % 2. \leftmargin 24Q (or 2K)
|
|
296 % 3. \labelsep is 6Q (or 0.5K)
|
|
297 % 4. \baselineskip is 16Q(j)/15Q(e)/normal(d)
|
|
298 % 5. ~ and \ is null but stretchable and (hardly) breakable. % 2.09(1)
|
|
299
|
|
300 \def\thebibliography#1{%
|
|
301 \section*{\hskip-\@mojihaba\hfill\hbox{\bib@refname}\hfill\hskip\z@}
|
|
302 \ifDS@draft \@tempdima\@mojihaba \else\@tempdima12\@Q\fi
|
|
303 \list{\arabic{enumi}\rlap{%(
|
|
304 )}}%
|
|
305 {\fs@bibliography \leftmargin2\@tempdima \labelwidth\z@
|
|
306 \labelsep\@tempdima \itemindent.5\@tempdima
|
|
307 \usecounter{enumi}\def\makelabel##1{\hss\llap{##1}}}
|
|
308 \def\newblock{\hskip .11em plus .33em minus .07em}
|
|
309 \sloppy \frenchspacing
|
|
310 \def\ {\hskip\z@ plus\fontdimen\thr@@\font \penalty5000\relax}
|
|
311 % 2.09(1)
|
|
312 \ifDS@english\else \ipsj@defcolonforbib \fi} % 2.12(1b)(2)
|
|
313
|
|
314 % (removal of \bib@refname) % 2.12(1a)
|
|
315
|
|
316 \newdimen\bib@adjustheight \bib@adjustheight-\maxdimen
|
|
317 \def\endthebibliography{\endlist \par \@normalsize
|
|
318 \@tempdima\@colht \advance\@tempdima-\@colroom
|
|
319 \advance\@tempdima\pagetotal \advance\@tempdima-\prevdepth
|
|
320 \advance\@tempdima-\topskip
|
|
321 \@tempdimb\@tempdima \divide\@tempdima\baselineskip
|
|
322 \@tempcnta\@tempdima \@tempdima\@tempcnta\baselineskip
|
|
323 \advance\@tempdima-\@tempdimb
|
|
324 \ifdim\@tempdima<\z@ \advance\@tempdima\baselineskip \fi
|
|
325 \vskip-\prevdepth \vskip\@tempdima \prevdepth\z@
|
|
326 \bib@adjustheight\@tempdimb \advance\bib@adjustheight\@tempdima
|
|
327 \global\advance\bib@adjustheight\topskip
|
|
328 \if@firstcolumn\else\global\advance\bib@adjustheight\@M pt\fi}
|
|
329
|
|
330
|
|
331 %%%%%% Floats %%%%%%
|
|
332
|
|
333 % You may need to change following parameters
|
|
334 \setcounter{topnumber}{4}
|
|
335 \setcounter{bottomnumber}{4}
|
|
336 \setcounter{totalnumber}{8}
|
|
337 \setcounter{dbltopnumber}{4}
|
|
338 \def\topfraction{.9}
|
|
339 \def\bottomfraction{.9}
|
|
340 \def\textfraction{.1}
|
|
341 \def\dbltopfraction{.9}
|
|
342 \def\floatpagefraction{.9}
|
|
343 \def\dblfloatpagefraction{.9}
|
|
344
|
|
345 \newcounter{figure}
|
|
346 \newcounter{table}
|
|
347 \def\thefigure{\@arabic\c@figure}
|
|
348 \def\thetable{\@arabic\c@table}
|
|
349 \def\fps@figure{tbp}
|
|
350 \def\fps@table{tbp}
|
|
351 \def\ftype@figure{1}
|
|
352 \def\ftype@table{2}
|
|
353 \def\fnum@figure{\fname@figure\thefigure}
|
|
354 \def\fnum@table{\fname@table\thetable}
|
|
355 \ifDS@english
|
|
356 \def\fname@figure{Fig.\,} % 2.06(1)
|
|
357 \def\fname@Figure{Figure~}
|
|
358 \def\fname@table{Table~}
|
|
359 \def\fname@figures{Figs.\,} % 2.12(8)>>
|
|
360 \def\fname@Figures{Figures~}
|
|
361 \def\fname@tables{Tables~} % 2.12(8)<<
|
|
362 \else
|
|
363 \def\fname@figure{\ipsj@j@fig\fref@nobreak} % 1.06(1), 2.12(1b)
|
|
364 \let\fname@Figure\fname@figure
|
|
365 \def\fname@table{\ipsj@j@tab\fref@nobreak} % 1.06(1), 2.12(1b)
|
|
366 \let\fname@figures\fname@figure % 2.12(8)>>
|
|
367 \let\fname@Figures\fname@figure
|
|
368 \let\fname@tables\fname@table % 2.12(8)<<
|
|
369 \fi
|
|
370 \def\fnum@efigure{Fig.\,\thefigure} % 2.06(1)
|
|
371 \def\fnum@etable{Table~\thetable}
|
|
372
|
|
373 % 1.06(3) >>
|
|
374 \def\figure{\let\cap@afterskip\relax \let\flt@fontsize\relax \@float{figure}}
|
|
375 \def\endfigure{\end@float}
|
|
376 \@namedef{figure*}{\let\cap@afterskip\relax \let\flt@fontsize\relax
|
|
377 \@dblfloat{figure}}
|
|
378 \@namedef{endfigure*}{\end@dblfloat}
|
|
379
|
|
380 %% Default font for table env. is \footnotesize (H.N.)
|
|
381 \def\table{\let\cap@beforeskip\relax \let\flt@fontsize\fs@table
|
|
382 \@float{table}}
|
|
383 \def\endtable{\end@float}
|
|
384 \@namedef{table*}{\let\cap@beforeskip\relax \let\flt@fontsize\fs@table
|
|
385 \@dblfloat{table}} % 2.01(2)
|
|
386 \@namedef{endtable*}{\end@dblfloat}
|
|
387 % 1.06(3) <<
|
|
388
|
|
389 \let\latex@float\@float
|
|
390 \let\latex@dbflt\@dbflt
|
|
391 \def\@float{\cap@linewidth\hsize \cap@hsize\hsize \latex@float}
|
|
392 \def\@dbflt{\cap@linewidth.8\textwidth \cap@hsize.667\textwidth \latex@dbflt}
|
|
393 \let\latex@xfloat\@xfloat % 1.06(3)
|
|
394 \def\@xfloat#1[#2]{\latex@xfloat#1[#2]\flt@fontsize}
|
|
395 % 1.06(3)
|
|
396 \def\end@float{\flt@endfloat
|
|
397 \ifdim\bib@adjustheight=-\maxdimen\else
|
|
398 \advance\bib@adjustheight\@tempdima
|
|
399 \global\advance\bib@adjustheight\baselineskip \fi
|
|
400 \ifnum\@floatpenalty <\z@
|
|
401 \@nameuse{@largefloatcheck}% % 2.00(2)
|
|
402 \@cons\@currlist\@currbox
|
|
403 \ifdim \ht\@currbox >\textheight
|
|
404 \ht\@currbox\textheight \fi
|
|
405 \ifnum\@floatpenalty < -\@Mii
|
|
406 \penalty -\@Miv
|
|
407 \@tempdima\prevdepth \vbox{} \prevdepth\@tempdima
|
|
408 \penalty\@floatpenalty
|
|
409 \else \vadjust{\penalty -\@Miv \vbox{}\penalty\@floatpenalty}\@esphack
|
|
410 \fi\fi}
|
|
411 \def\end@dblfloat{\if@twocolumn \flt@endfloat
|
|
412 \ifnum\@floatpenalty <\z@ \@cons\@dbldeferlist\@currbox\fi
|
|
413 \ifnum \@floatpenalty =-\@Mii \@esphack\fi\else\end@float\fi}
|
|
414 \def\flt@endfloat{\par \boxmaxdepth\dp\strutbox % 2.12(7c)
|
|
415 \global\@minipagefalse \@nameuse{outer@nobreak}\egroup % 2.00(2)
|
|
416 \@nameuse{color@endbox}\@normalsize % 2.00(2)
|
|
417 \@tempdima\ht\@currbox \advance\@tempdima\dp\@currbox
|
|
418 \divide\@tempdima\baselineskip \@tempcnta\@tempdima
|
|
419 \advance\@tempcnta\@ne \@tempdima\@tempcnta\baselineskip
|
|
420 \global\setbox\@currbox\vbox to\@tempdima{\box\@currbox\vfil}}
|
|
421 % 2.10(1)
|
|
422 % 2.12(7a,b)>>
|
|
423 \let\ipsj@cflb\@cflb
|
|
424 \let\ipsj@comflelt\@comflelt
|
|
425 \def\@cflb{\let\ipsj@botfigrule\botfigrule \let\botfigrule\vfil
|
|
426 \let\@comflelt\ipsj@comfleltbot \ipsj@cflb
|
|
427 \let\@comflelt\ipsj@comflelt \let\botfigrule\ipsj@botfigrule}
|
|
428 \def\ipsj@comfleltbot#1{%
|
|
429 \setbox#1\vbox to\ht#1{\vfil\unvbox#1\unskip}\ipsj@comflelt{#1}}
|
|
430 % 2.12(7a,b)<<
|
|
431
|
|
432 \def\cap@beforeskip{\nointerlineskip\vskip5pt}
|
|
433 \def\cap@afterskip{\nointerlineskip\vskip5pt}
|
|
434 \long\def\@caption#1[#2]#3{\par\begingroup
|
|
435 \fs@caption \cap@beforeskip
|
|
436 \@makecaption{{\bf \csname fnum@#1\endcsname}}{\ignorespaces#3}\par
|
|
437 \ifDS@english \cap@afterskip \fi
|
|
438 \endgroup}
|
|
439 \def\ecaption{\@dblarg{\@ecaption\@captype}}
|
|
440 \long\def\@ecaption#1[#2]#3{\par
|
|
441 \begingroup \fs@caption
|
|
442 \@makecaption{\csname fnum@e#1\endcsname}{\ignorespaces #3}\par
|
|
443 \cap@afterskip
|
|
444 \endgroup}
|
|
445
|
|
446 \newif\ifcap@sw
|
|
447 \newdimen\cap@linewidth
|
|
448 \newdimen\cap@hsize
|
|
449 \newcount\cap@prevgraf
|
|
450 \newbox\cap@box
|
|
451 \let\latex@label\label
|
|
452 \long\def\@makecaption#1#2{\begingroup \gdef\cap@label{}\let\label\@gobble
|
|
453 \setbox0\hbox{#1\hskip\jspaceskip}
|
|
454 \advance\cap@linewidth-\wd0 \advance\cap@hsize-\wd0
|
|
455 \cap@makepar\cap@linewidth{#2}{\def\label##1{{% %1.03(1)
|
|
456 \def\protect{\noexpand\protect\noexpand} %1.03(1)
|
|
457 \xdef\cap@label{\cap@label\protect\label{##1}}}}} %1.03(1)
|
|
458 \cap@swtrue
|
|
459 \ifnum\cap@prevgraf=\@ne
|
|
460 \setbox1\vbox{\unvcopy1\cap@getbox1
|
|
461 \ifhbox1 \global\setbox\cap@box\hbox{\unhbox1}
|
|
462 \ifdim\wd\cap@box>\cap@linewidth\else
|
|
463 \global\cap@swfalse \fi\fi}
|
|
464 \ifcap@sw\else
|
|
465 \cap@put{\vtop{\box\cap@box\hbox{}}}
|
|
466 \fi\fi
|
|
467 \ifcap@sw \cap@makepar\cap@hsize{#2}\relax
|
|
468 \ifnum\cap@prevgraf=\tw@
|
|
469 \setbox1\vbox{\unvcopy1\cap@getbox2\cap@getbox3
|
|
470 \ifhbox2\ifhbox3
|
|
471 \setbox2\hbox{\unhbox2}\setbox3\hbox{\unhbox3}
|
|
472 \ifdim\wd2>\cap@hsize\else
|
|
473 \ifdim\wd3>\cap@hsize\else
|
|
474 \global\cap@swfalse
|
|
475 \global\setbox\cap@box\vtop{\box3\box2\hbox{}}
|
|
476 \fi\fi\fi\fi}\fi
|
|
477 \ifcap@sw \setbox1\vtop{\hsize\cap@hsize
|
|
478 \@parboxrestore #2\par\hbox{}}\cap@put{\box1}
|
|
479 \else\cap@put{\box\cap@box}\fi
|
|
480 \fi
|
|
481 \endgroup \cap@label}
|
|
482 \long\def\cap@makepar#1#2#3{\setbox1\vbox{\hsize#1\@parboxrestore
|
|
483 \rightskip\@flushglue \hfuzz\maxdimen
|
|
484 \exhyphenpenalty\z@ \finalhyphendemerits\z@
|
|
485 \let\@@par\cap@par \let\par\cap@par \global\cap@prevgraf\z@
|
|
486 #3#2\cap@par}}
|
|
487 \let\cap@@par\@@par
|
|
488 \def\cap@par{\cap@@par\global\advance\cap@prevgraf\prevgraf \prevgraf\z@}
|
|
489 \def\cap@put#1{\hbox to\hsize{\hss\box0#1\hss}
|
|
490 \vskip-\baselineskip\prevdepth\z@}
|
|
491 \def\cap@getbox#1{\@tempcnta10\relax\@whilenum\@tempcnta>0\do{%
|
|
492 \unskip\unkern\unpenalty\advance\@tempcnta\m@ne}\setbox#1\lastbox}
|
|
493
|
|
494 \def\figref{\fref@ref\fname@figure}
|
|
495 \def\Figref{\fref@ref\fname@Figure}
|
|
496 \def\tabref{\fref@ref\fname@table}
|
|
497 \let\Tabref\tabref
|
|
498 \def\fref@ref#1{\@ifstar{\fref@sref{#1}}{\fref@iref\bf{#1}}}
|
|
499 \def\fref@iref#1#2#3{{\@ifundefined{fref@r@#3}%
|
|
500 {#1#2\fref@doref{#3}\global\@namedef{fref@r@#3}{}}{#2\fref@doref{#3}}}}
|
|
501 \def\fref@sref#1#2{#1\fref@doref{#2}}
|
|
502 \def\fref@doref#1{{\let\null\relax\ref{#1}}} % 1.06(2)
|
|
503 \def\fref@nobreak{\nobreak\ifASCII\else\hskip\@@jasciikanjiskip\fi}
|
|
504 % 1.06(1)
|
|
505 \def\figsref{\fref@refs\fname@figures} % 2.12(8)>>
|
|
506 \def\Figsref{\fref@refs\fname@Figures}
|
|
507 \def\tabsref{\fref@refs\fname@tables}
|
|
508 \let\Tabsref\tabsref
|
|
509 \def\fref@refs#1{\@ifstar{\fref@irefs\relax{#1}}{\fref@irefs\bf{#1}}}
|
|
510 \def\fref@irefs#1#2#3{\def\fref@list{#3}\@tempswafalse \@tempcnta\z@
|
|
511 \@for\fref@elem:=\fref@list\do{%
|
|
512 \@ifundefined{fref@r@\fref@elem}{\@tempswatrue}{}%
|
|
513 \advance\@tempcnta\@ne}%
|
|
514 \ifx#1\relax \@tempswafalse\fi
|
|
515 \ifDS@english {\if@tempswa #1\fi #2}\let\fref@temp\relax
|
|
516 \else \def\fref@temp{#2}\fi
|
|
517 \@for\fref@elem:=\fref@list\do{%
|
|
518 \if@tempswa \fref@iref{#1}{\fref@temp}{\fref@elem}%
|
|
519 \else \fref@temp\fref@doref{\fref@elem}\fi
|
|
520 \advance\@tempcnta\m@ne
|
|
521 \ifnum\@tempcnta=\@ne \fref@and
|
|
522 \else\ifnum\@tempcnta>\@ne \fref@comma \fi\fi}}
|
|
523 \ifDS@english
|
|
524 \def\fref@and{ and~}
|
|
525 \def\fref@comma{, }
|
|
526 \else
|
|
527 \def\fref@and{\ipsj@j@comma}
|
|
528 \let\fref@comma\fref@and
|
|
529 \fi
|
|
530
|
|
531 \ifDS@printer
|
|
532 \def\figures{{\bf\fname@figures}}
|
|
533 \def\Figures{{\bf\fname@Figures}}
|
|
534 \def\tables{{\bf\fname@tables}}
|
|
535 \let\Tables\tables
|
|
536 \def\Ref{\fref@iref\bf\relax}
|
|
537 \fi % 2.12(8)<<
|
|
538
|
|
539 \def\fig@extraspace{3mm} %1.04(4)
|
|
540 \def\figspace#1{\vskip#1\vskip\fig@extraspace} %1.04(4)
|
|
541
|
|
542 %%%%%% Footnote %%%%%%
|
|
543
|
|
544 %% The following codes are from pfnote.sty, by H. Nakashima of Kyoto Univ.,
|
|
545 %% to reset footnote counter at the begining of every page. (H.N.)
|
|
546
|
|
547 % 1.04(2c)>>
|
|
548 \def\footnote{\@ifnextchar[%]
|
|
549 {\@xfootnote}{{\PF@adjustfnote \stepcounter{\@mpfn}%
|
|
550 \def\protect{\noexpand\protect\noexpand}%
|
|
551 \xdef\@thefnmark{\thempfn}}\@footnotemark\@footnotetext}}
|
|
552 \def\footnotemark{\@ifnextchar[%]
|
|
553 {\@xfootnotemark}{{\PF@adjustfnote \stepcounter{footnote}%
|
|
554 \def\protect{\noexpand\protect\noexpand}%
|
|
555 \xdef\@thefnmark{\thefootnote}}\@footnotemark}}
|
|
556 % 1.04(2c)<<
|
|
557
|
|
558 \newcount\PF@fnotectr\global\PF@fnotectr=\z@
|
|
559 \newcount\PF@page\global\PF@page=-\@M
|
|
560 \def\PF@thepage{\number\c@page}
|
|
561 \def\PF@adjustfnote{\global\advance\PF@fnotectr\@ne
|
|
562 \expandafter\ifx\csname PF@fn\number\PF@fnotectr\endcsname\relax
|
|
563 \global\c@footnote\z@\else
|
|
564 \expandafter\@tempcnta\csname PF@fn\number\PF@fnotectr\endcsname\relax
|
|
565 \ifnum\@tempcnta=\PF@page\else
|
|
566 \global\PF@page\@tempcnta \global\c@footnote\z@ \fi\fi
|
|
567 \@tempcnta\c@footnote \multiply\@tempcnta\@M
|
|
568 \advance\@tempcnta\PF@fnotectr
|
|
569 \if@filesw{\let\PF@thepage\relax
|
|
570 \xdef\@gtempa{\write\@auxout{\string\PF@fnpage
|
|
571 {\number\@tempcnta}{\PF@thepage}}}}%
|
|
572 \@gtempa\fi}
|
|
573 % 1.04(2a)<<
|
|
574
|
|
575 % 1.04(2a)>>
|
|
576 \def\PF@fnpage#1#2{\@tempcnta#1\relax \@tempcntb\@tempcnta \divide\@tempcnta\@M
|
|
577 \expandafter\xdef\csname PF@fnpage#2\endcsname{\number\@tempcnta}
|
|
578 \multiply\@tempcnta\@M \advance\@tempcntb-\@tempcnta
|
|
579 \global\@namedef{PF@fn\number\@tempcntb}{#2}}
|
|
580 % 1.04(2a)<<
|
|
581 %% End of quote from pfnote.sty. (H.N.)
|
|
582
|
|
583 \long\def\@makefntext#1{\leftskip20\@Q
|
|
584 \noindent\llap{\@makefnmarkforfn\hskip-\scriptspace\hskip5\@Q}#1}
|
|
585 % 1.04(2e)
|
|
586 \def\@makefnmarkstar{$\@thefnmark$} % 2.12(3)
|
|
587 \def\@makefnmarkdagger{$\@thefnmark$}
|
|
588 \def\@makefnmarkast{$\@thefnmark$} % 2.12(3)
|
|
589 \let\@makefnmarkforfn\@makefnmarkstar
|
|
590
|
|
591 \def\@makefnmark{\smash{$^{\@thefnmark}$}} % 2.12(3)
|
|
592 % 1.04(2d)
|
|
593 % smashed to make it
|
|
594 % zero height
|
|
595
|
|
596 \def\thefootnote{\ifnum\c@footnote>0\relax{\star}\number\c@footnote\fi}
|
|
597 % 2.12(3)
|
|
598
|
|
599 %%%%%% Citation %%%%%%
|
|
600
|
|
601 %% The following codes for \cite are from overcite.sty by D. Arseneau, but
|
|
602 %% modified for Trans. IPSJ (H.N.)
|
|
603 % O V E R C I T E . S T Y
|
|
604 %
|
|
605 % version 3.2 (Mar 1993)
|
|
606 %
|
|
607 % Compressed, sorted lists of superscript numerical citations.
|
|
608 % see also CITE.STY and DRFTCITE.STY
|
|
609 %
|
|
610 % Copyright (C) 1989-1993 by Donald Arseneau
|
|
611 % These macros may be freely transmitted, reproduced, or modified for
|
|
612 % non-commercial purposes provided that this notice is left intact.
|
|
613 %
|
|
614 \def\cite{\protect\@p@cite}
|
|
615 \def\@p@cite{\let\@citeY\@citey \@p@@cite}
|
|
616 \def\Cite{\protect\@p@Cite}
|
|
617 \def\@p@Cite{\let\@citeY\@Citey \@p@@cite}
|
|
618 \def\@p@@cite{\@ifnextchar[%]
|
|
619 {\@tempswatrue\@citex}{\@tempswafalse\@citex[]}}
|
|
620 \def\@citex[#1]#2{\@citeY{\@p@citen{#2}}\if@tempswa\space[#1]\fi}
|
|
621 \def\@citey#1{\leavevmode\unskip\kern\z@$\let\@cite@tiestyle\ipsj@j@citescript
|
|
622 % % 2.06(2)
|
|
623 % 2.12(4)
|
|
624 \def\@cite@punct{,}\m@th^{\hbox{\scriptsize#1}}$\spacefactor\@m}
|
|
625 \def\@Citey#1{\let\@cite@tiestyle\ipsj@j@citetext % 2.12(4)
|
|
626 % 1.04(1)>>
|
|
627 \ifDS@english \def\@cite@punct{,\space\penalty\@highpenalty}
|
|
628 \else\def\@cite@punct{\ipsj@j@comma}\fi#1\spacefactor\@m}
|
|
629 % 1.04(1)<<
|
|
630 % 2.12(1b)
|
|
631 \def\@p@citen#1{%
|
|
632 \edef\@tempa{\@ignspaftercomma,#1, \@end, }%
|
|
633 \edef\@tempa{\expandafter\@ignendcommas\@tempa\@end}%
|
|
634 \if@filesw \immediate\write\@auxout{\string\citation{\@tempa}}\fi
|
|
635 \@tempcntb\m@ne \let\@h@ld\relax \let\@citea\@empty
|
|
636 \let\@celt\relax \def\@cite@list{}% % 2.06(3)
|
|
637 \@for\@citeb:=\@tempa\do{\@make@cite@list}%
|
|
638 \def\protect{\noexpand\protect\noexpand}%
|
|
639 \@tempcnta\m@ne \let\@celt\@compress@cite \@cite@list
|
|
640 \let\protect\relax \@h@ld}
|
|
641 \def\@ignspaftercomma#1, {\ifx\@end#1\@empty\else
|
|
642 #1,\expandafter\@ignspaftercomma\fi}
|
|
643 \def\@ignendcommas,#1,\@end{#1}
|
|
644
|
|
645 %(
|
|
646 \let\@cite@rp)
|
|
647 \chardef\@cite@escape`\\
|
|
648 \def\@make@cite@list{%
|
|
649 \expandafter\let\expandafter\@B@citeB\csname b@\@citeb\endcsname
|
|
650 \ifx\@B@citeB\relax
|
|
651 \@citea {\bf ?}\@cite@rp \let\@citea\@cite@punct
|
|
652 \@latex@warning{Citation `\@citeb' on page \thepage\space undefined}%
|
|
653 % 2.00(3)
|
|
654 \global\@namedef{b@\@citeb}{{\bf ?}}%
|
|
655 \else
|
|
656 \ifcat \@cite@escape\ifnum\z@<0\@B@citeB \@cite@escape\else A\fi
|
|
657 \@tempcnta\@B@citeB \relax
|
|
658 \ifnum \@tempcnta>\@tempcntb
|
|
659 \edef\@cite@list{\@cite@list \@celt{\@B@citeB}}%
|
|
660 \@tempcntb\@tempcnta
|
|
661 \else
|
|
662 \edef\@cite@list{\expandafter\@sort@celt\@cite@list\@gobble @}%
|
|
663 \fi
|
|
664 \else \@citea \@B@citeB \@cite@rp \let\@citea\@cite@punct
|
|
665 \fi\fi}
|
|
666
|
|
667 \def\@sort@celt#1#2{\ifx \@celt #1% parameters are \@celt {num}
|
|
668 \ifnum #2<\@tempcnta % number goes later in list
|
|
669 \@celt{#2}\expandafter\expandafter\expandafter\@sort@celt
|
|
670 \else \@celt{\number\@tempcnta}\@celt{#2}\fi\fi}
|
|
671
|
|
672 \def\@compress@cite#1{\advance\@tempcnta\@ne
|
|
673 \ifnum #1=\@tempcnta
|
|
674 \ifx\@h@ld\relax \edef\@h@ld{\@citea #1\@cite@rp}%
|
|
675 \else \edef\@h@ld{\@cite@tie{\protect\@cite@tiestyle}%
|
|
676 % 2.12(4)
|
|
677 \penalty\@highpenalty #1\@cite@rp}\fi
|
|
678 \else \@h@ld \@citea #1\@cite@rp
|
|
679 \let\@h@ld\relax
|
|
680 \fi \@tempcnta#1\relax \let\@citea\@cite@punct}
|
|
681
|
|
682 %% End of quote from overcite.sty. (H.N.)
|
|
683
|
|
684 \def\multicite{\protect\@p@multicite}
|
|
685 \def\@p@multicite#1#2{\@citey{\@p@citen{#1}%
|
|
686 \@cite@tie\ipsj@j@citescript \@p@citen{#2}}} % 2.12(4)
|
|
687 \def\multiCite{\protect\@p@multiCite}
|
|
688 \def\@p@multiCite#1#2{\@Citey{\@p@citen{#1}\@cite@tie\relax % 2.12(4)
|
|
689 \penalty\@highpenalty \@p@citen{#2}}}
|
|
690
|
|
691
|
|
692 %%%%%% Box Height Adjustment and Displayed Math %%%%%%
|
|
693
|
|
694 \newbox\adj@boxa \newbox\adj@boxb
|
|
695 \newdimen\adj@height
|
|
696 \@tempdima\baselineskip \advance\@tempdima-\topskip
|
|
697 \edef\adj@minaboveclearance{\the\@tempdima}
|
|
698 \@tempdima\baselineskip \advance\@tempdima-1ex
|
|
699 \edef\adj@maxaboveclearance{\the\@tempdima}
|
|
700
|
|
701 \def\adj@setbhd#1{\setbox0\hbox{#1} % 2.12(1c)>>
|
|
702 \@tempdima\baselineskip \advance\@tempdima-\ht0 \advance\@tempdima\dp0
|
|
703 \edef\adj@bhd{\the\@tempdima}} % 2.12(1c)<<
|
|
704
|
|
705 % 2.01(1) >>
|
|
706 \def\adjustvboxheight{\ifinner \let\@tempa\relax
|
|
707 \let\endadjustvboxheight\relax \let\@endadjustvboxheight\relax
|
|
708 \else \let\@tempa\@adjustvboxheight \fi \@tempa}
|
|
709 \def\@adjustvboxheight{\par\penalty\z@
|
|
710 \global\setbox\adj@boxa\vbox\bgroup\relax % 1.01(3)
|
|
711 \let\@footnotetext\@mpfootnotetext % 2.02(1)
|
|
712 % % 2.05(1)
|
|
713 \hsize\columnwidth}
|
|
714 % 2.01(1) <<
|
|
715 \def\endadjustvboxheight{\adj@closebox \adj@putbox
|
|
716 \ifvoid\@mpfootins\else\insert\footins{\unvbox\@mpfootins}\fi
|
|
717 % % 2.02(1)
|
|
718 \global\@ignoretrue\@endparenv}
|
|
719 \def\adj@closebox{\egroup \normalsize \boxmaxdepth\@maxdepth % 1.01(1,3)
|
|
720 \setbox\adj@boxa\vbox{\unvbox\adj@boxa} % 1.01(3)
|
|
721 \adj@height\ht\adj@boxa
|
|
722 \advance\adj@height\adj@minaboveclearance\relax
|
|
723 \@tempdima\adj@height \divide\adj@height\baselineskip
|
|
724 \@tempcnta\adj@height \adj@height\@tempcnta\baselineskip
|
|
725 \ifdim\adj@height<\@tempdima \advance\adj@height\baselineskip\fi}
|
|
726 \def\adj@putbox{\vskip-\prevdepth \prevdepth\z@ \vskip\baselineskip
|
|
727 \vspace*{-\baselineskip}\advance\@tempdima-\adj@height
|
|
728 \@tempdima-\@tempdima \advance\@tempdima\adj@minaboveclearance\relax
|
|
729 \@tempdimb\dp\adj@boxa
|
|
730 \ifdim\@tempdima>\adj@maxaboveclearance\relax
|
|
731 \advance\@tempdima-\@tempdimb \advance\@tempdima\adj@bhd\relax
|
|
732 \divide\@tempdima\tw@
|
|
733 \vbox to\adj@height{\vskip\@tempdima \box\adj@boxa \vss}
|
|
734 \else \vbox to\adj@height{\vfil\box\adj@boxa\vskip-\@tempdimb}\fi}
|
|
735
|
|
736 \newcount\adj@deadcycle
|
|
737 \@namedef{adjustvboxheight*}{\adjustvboxheight}
|
|
738 \@namedef{endadjustvboxheight*}{\@endadjustvboxheight}
|
|
739 \def\@endadjustvboxheight{\global\adj@deadcycle10\relax
|
|
740 \@iendadjustvboxheight
|
|
741 \ifvoid\@mpfootins\else\insert\footins{\unvbox\@mpfootins}\fi
|
|
742 % % 2.05(2)
|
|
743 \global\@ignoretrue\@endparenv}
|
|
744 \def\@iendadjustvboxheight{\adj@closebox
|
|
745 \ifnum\adj@deadcycle<\@ne
|
|
746 \ipsj@error{I cannot adjust too tall/deep box}{\@ehd}\fi % 2.00(3)
|
|
747 \global\advance\adj@deadcycle\m@ne
|
|
748 \ifdim\pagegoal=\maxdimen
|
|
749 \@tempdimb\@colht \advance\@tempdimb-\topskip
|
|
750 \advance\@tempdimb\baselineskip
|
|
751 \else \@tempdimb\pagegoal
|
|
752 \advance\@tempdimb-\pagetotal \advance\@tempdimb-\pagedepth
|
|
753 \advance\@tempdimb\prevdepth \fi % 1.01(4a)
|
|
754 \let\next\relax
|
|
755 \ifdim\adj@height<\@tempdimb \adj@putbox \else
|
|
756 \ifdim\adj@height=\@tempdimb \adj@putbox \else
|
|
757 \divide\@tempdimb\baselineskip \@tempcnta\@tempdimb % 1.01(4b)>>
|
|
758 \@tempdimb\@tempcnta\baselineskip
|
|
759 \advance\@tempdimb-\adj@minaboveclearance\relax % 1.01(4b)<<
|
|
760 \setbox\adj@boxa\vbox{\allowbreak\unvbox\adj@boxa}
|
|
761 \vbadness\@M \splittopskip\z@ \splitmaxdepth\@maxdepth %1.01(1)
|
|
762 \setbox\@tempboxa\vsplit\adj@boxa to\@tempdimb
|
|
763 \setbox\adj@boxb\copy\adj@boxa
|
|
764 \setbox\@tempboxa\vbox{\unvbox\@tempboxa}
|
|
765 \@tempdimb\ht\@tempboxa \advance\@tempdimb\dp\@tempboxa
|
|
766 \ifdim\@tempdimb>\z@
|
|
767 \setbox\adj@boxa\vbox\bgroup\unvbox\@tempboxa
|
|
768 \adj@closebox \adj@putbox \newpage
|
|
769 \else \newpage \fi
|
|
770 \setbox\adj@boxa\vbox\bgroup\unvbox\adj@boxb
|
|
771 \let\next\@iendadjustvboxheight \fi\fi \next}
|
|
772
|
|
773 \def\adj@eqindent{2\@mojihaba}
|
|
774 \def\[{\adjustvboxheight\advance\@totalleftmargin\adj@eqindent\relax
|
|
775 \hbox to\hsize\bgroup\hskip\@totalleftmargin$\displaystyle}
|
|
776 \def\]{$\hfill\egroup\endadjustvboxheight\@doendpe\ignorespaces} % 2.03(1)
|
|
777 \def\equation{\refstepcounter{equation}\[}
|
|
778 \def\endequation{\hfill\@eqnnum$\egroup\endadjustvboxheight}
|
|
779 \def\theequation{\arabic{equation}}
|
|
780 \def\@eqnnum{{\rm (\theequation)\hskip\@mojihaba}}
|
|
781
|
|
782 \def\adj@eqnlineskip{3pt}
|
|
783 \def\adj@eqnlineskiplimit{2pt}
|
|
784 \def\eqnarray{\futurelet\@tempa\adj@eqnarray}
|
|
785 \def\adj@eqnarray{\ifx\@tempa[%]
|
|
786 \let\next\adj@ieqnarray\else\let\next\adj@xeqnarray\fi\next}
|
|
787 \def\adj@ieqnarray[#1]{\@ifundefined{adj@xeqnarray#1}%
|
|
788 {\ipsj@warning{Unknown eqnarray option `#1'}\adj@xeqnarray}% 2.00(3)
|
|
789 {\@nameuse{adj@xeqnarray#1}}}
|
|
790 \def\adj@xeqnarray{\adjustvboxheight
|
|
791 \advance\@totalleftmargin\adj@eqindent\relax
|
|
792 \stepcounter{equation}\let\@currentlabel=\theequation
|
|
793 \global\@eqnswtrue
|
|
794 \global\@eqcnt\z@\tabskip\z@\let\\=\@eqncr
|
|
795 \lineskip\adj@eqnlineskip \lineskiplimit\adj@eqnlineskiplimit \jot\z@
|
|
796 \halign to \hsize\bgroup\@eqnsel\hskip\@totalleftmargin
|
|
797 \hfil$\displaystyle{##}$&\global\@eqcnt\@ne % 1.01(2)
|
|
798 \hfil$\displaystyle{}\mathrel{##}{}$\hfil
|
|
799 &\global\@eqcnt\tw@ $\displaystyle{##}$\hfil
|
|
800 \tabskip\@centering&\llap{##}\tabskip\z@\cr}
|
|
801 \def\adj@xeqnarrays{\let\endadjustvboxheight\@endadjustvboxheight
|
|
802 \adj@xeqnarray}
|
|
803 \@namedef{adj@xeqnarrays!}{\par\let\adjustvboxheight\relax
|
|
804 \let\endadjustvboxheight\relax \adj@xeqnarray}
|
|
805 \def\endeqnarray{\@@eqncr \egroup \global\advance\c@equation\m@ne
|
|
806 \endadjustvboxheight}
|
|
807
|
|
808
|
|
809 %%%%%% Miscellaneous %%%%%%
|
|
810
|
|
811 %% \doublerulesep is 1pt (H.N.)
|
|
812 \arraycolsep5pt \tabcolsep6pt \arrayrulewidth.4pt \doublerulesep1pt
|
|
813 \tabbingsep.5\@mojihaba
|
|
814
|
|
815 \skip\@mpfootins\skip\footins
|
|
816 \fboxsep3pt \fboxrule.4pt
|
|
817
|
|
818 %% We simply allow (not encourage) club and widow lines. (H.N.)
|
|
819 \clubpenalty\z@ \widowpenalty\z@ \displaywidowpenalty\z@
|
|
820
|
|
821 % The following redefinition influences \linebreak etc.
|
|
822 \def\sloppy{\tolerance9999\hbadness9999\hfuzz.5\p@ \vfuzz.5\p@}
|
|
823
|
|
824 %% For heading of TBIO papers
|
|
825 \ifDS@TBIO % 2.11(1)>>
|
|
826 \def\TBIOpapercategory#1{\def\ipsj@TBIO@pcat{#1}\ignorespaces}
|
|
827 \def\ipsj@TBIO@pcat{original}
|
|
828 \def\ipsj@TBIO@pcat@original{Original Paper}
|
|
829 \def\ipsj@TBIO@pcat@survey{Survey Paper}
|
|
830 \def\ipsj@TBIO@pcat@database{Database/Software Paper}
|
|
831 \def\ipsj@TBIO@pcatref{\@ifundefined{ipsj@TBIO@pcat@\ipsj@TBIO@pcat}%
|
|
832 {\ipsj@warning{TBIO paper category \ipsj@TBIO@pcat\space is undefined.}}%
|
|
833 \relax
|
|
834 \@nameuse{ipsj@TBIO@pcat@\ipsj@TBIO@pcat}}
|
|
835 \fi % 2.11(1)<<
|
|
836
|
|
837
|
|
838 % 2.12(1a)>>
|
|
839 \let\ipsj@j@citescript\scriptsize % 2.12(4)>>
|
|
840 \let\ipsj@j@citetext\normalsize
|
|
841 \def\@cite@tie#1{\hbox{#1--}} % 2.12(4)<<
|
|
842 \def\bib@refname{References}
|
|
843 \adj@setbhd{A}
|
|
844
|
|
845 \ifipsj@nonjp \let\next\endinput \else \let\next\relax \fi
|
|
846 \next
|
|
847
|
|
848 \def\ipsj@j@a{あ}
|
|
849 \def\ipsj@j@app{付録}
|
|
850 \def\ipsj@j@ack{謝辞}
|
|
851 \def\ipsj@j@bib{参考文献}
|
|
852 \def\ipsj@j@fig{図}
|
|
853 \def\ipsj@j@tab{表}
|
|
854 \def\ipsj@j@comma{,}
|
|
855 \def\ipsj@j@technote{テクニカルノート}
|
|
856 \def\ipsj@j@invited{招待論文}
|
|
857 \def\ipsj@j@sigrec{研究会推薦論文}
|
|
858 \def\ipsj@j@talkabst{発表概要}
|
|
859 \def\ipsj@j@presently{現在,}
|
|
860 \def\ipsj@j@jipsj{情報処理学会論文誌}
|
|
861 \def\ipsj@j@regpaper{論文}
|
|
862 \def\ipsj@j@contactto{連絡先}
|
|
863 \def\ipsj@j@abstract{概要}
|
|
864 \def\ipsj@j@colon{:}
|
|
865 \def\ipsj@j@year{年}
|
|
866 \def\ipsj@j@month{月}
|
|
867 \def\ipsj@j@day{日}
|
|
868 \def\ipsj@j@lp{(}
|
|
869 \def\ipsj@j@rp{)}
|
|
870 \def\ipsj@j@edinch{担当編集委員}
|
|
871 \def\ipsj@j@rerec{再受付}
|
|
872 \def\ipsj@j@received{受付}
|
|
873 \def\ipsj@j@accepted{採録}
|
|
874 \def\ipsj@j@presented{発表}
|
|
875 \def\ipsj@j@member{正会員}
|
|
876 \def\ipsj@j@stmember{学生会員}
|
|
877 \def\ipsj@j@nomember{非会員}
|
|
878
|
|
879 \ifDS@english\else \ifDS@draft\else
|
|
880 \sec@setskips{\ipsj@j@a}
|
|
881 \fi\fi
|
|
882
|
|
883 \expandafter\let\csname c@巻数\endcsname\c@volume
|
|
884 \expandafter\let\csname c@号数\endcsname\c@number
|
|
885 \expandafter\let\csname c@月数\endcsname\c@number
|
|
886 \expandafter\let\csname c@年数\endcsname\c@year
|
|
887
|
|
888 \def\ipsj@sig@PRO@j{プログラミング}
|
|
889 \def\ipsj@sig@TOM@j{数理モデル化と応用}
|
|
890 \def\ipsj@sig@TOD@j{データベース}
|
|
891 \def\ipsj@sig@HPS@j{ハイパフォーマンスコンピューティングシステム}
|
|
892 \def\ipsj@sig@CVIM@j{コンピュータビジョンとイメージメディア}
|
|
893 \def\ipsj@sig@ACS@j{コンピューティングシステム} % 2.09(2)
|
|
894
|
|
895 \def\ra@nengo{平成} %% Change here when ...
|
|
896 \let\受付\received
|
|
897 \let\採録\accepted
|
|
898 \let\発表\presented % 2.07(7)
|
|
899 \let\再受付\rereceived
|
|
900
|
|
901 \def\々{\hskip\jintercharskip\hbox to\jspaceskip{\hfil 々\hfil}%% 2.12(5)
|
|
902 \hskip\jintercharskip}
|
|
903
|
|
904 \ifDS@english\else \ifDS@draft\else
|
|
905 {\fs@sec \@tempdima7\jspaceskip
|
|
906 \xdef\bib@refname{\hbox to\the\@tempdima{\jintercharskip\fill\ipsj@j@bib}}}
|
|
907 \adj@setbhd\ipsj@j@a
|
|
908 \fi\fi
|
|
909
|
|
910 \def\ipsj@j@colon@command{{\nobreak % 2.12(2)>>
|
|
911 \hbox to.7\jspaceskip{:\hss}\allowbreak
|
|
912 \@tempdima.3\jspaceskip \hskip\@tempdima minus\@tempdima
|
|
913 \allowbreak
|
|
914 \hskip\z@ minus-\@tempdima}\ignorespaces}
|
|
915 \def\ipsj@defcolonforbib{\let\:\ipsj@j@colon@command}
|
|
916 \ifDS@printer \ipsj@defcolonforbib \fi % 2.12(2)<<
|
|
917
|
|
918
|
|
919 %%%%%% Kinsoku Parameters %%%%%%
|
|
920
|
|
921 % 1.04(3)>>
|
|
922 \ifASCII
|
|
923 \postbreakpenalty`\`=\@M
|
|
924 \prebreakpenalty`'=\@M
|
|
925 \prebreakpenalty`)=\@M
|
|
926 \postbreakpenalty`(=\@M
|
|
927 \prebreakpenalty`]=\@M
|
|
928 \postbreakpenalty`[=\@M
|
|
929 \prebreakpenalty`\}=\@M
|
|
930 \postbreakpenalty`\{=\@M
|
|
931
|
|
932 \prebreakpenalty`・=\@M
|
|
933 \prebreakpenalty`:=\@M
|
|
934 \prebreakpenalty`;=\@M
|
|
935 \prebreakpenalty`?=\@M
|
|
936 \prebreakpenalty`!=\@M
|
|
937
|
|
938 \prebreakpenalty\jis"212D=\@M % ´
|
|
939 \postbreakpenalty\jis"212E=\@M % `
|
|
940 \postbreakpenalty\jis"2146=\@M % ‘
|
|
941 \prebreakpenalty\jis"2147=\@M % ’
|
|
942 \postbreakpenalty\jis"2148=\@M % “
|
|
943 \prebreakpenalty\jis"2149=\@M % ”
|
|
944
|
|
945 \prebreakpenalty`)=\@M
|
|
946 \postbreakpenalty`(=\@M
|
|
947 \prebreakpenalty`}=\@M
|
|
948 \postbreakpenalty`{=\@M
|
|
949 \prebreakpenalty`]=\@M
|
|
950 \postbreakpenalty`[=\@M
|
|
951 \postbreakpenalty`‘=\@M
|
|
952 \prebreakpenalty`’=\@M
|
|
953
|
|
954 \postbreakpenalty\jis"214C=\@M %〔
|
|
955 \prebreakpenalty\jis"214D=\@M % 〕
|
|
956 \postbreakpenalty\jis"2152=\@M % 〈
|
|
957 \prebreakpenalty\jis"2153=\@M % 〉
|
|
958 \postbreakpenalty\jis"2154=\@M % 《
|
|
959 \prebreakpenalty\jis"2155=\@M % 》
|
|
960 \postbreakpenalty\jis"2156=\@M % 「
|
|
961 \prebreakpenalty\jis"2157=\@M % 」
|
|
962 \postbreakpenalty\jis"2158=\@M % 『
|
|
963 \prebreakpenalty\jis"2159=\@M % 』
|
|
964 \postbreakpenalty\jis"215A=\@M % 【
|
|
965 \prebreakpenalty\jis"215B=\@M % 】
|
|
966
|
|
967 \prebreakpenalty`ー=\@M % 2.12(6)
|
|
968 \prebreakpenalty`〜=\@M % 2.12(6)
|
|
969
|
|
970 \prebreakpenalty`ぁ=\@M
|
|
971 \prebreakpenalty`ぃ=\@M
|
|
972 \prebreakpenalty`ぅ=\@M
|
|
973 \prebreakpenalty`ぇ=\@M
|
|
974 \prebreakpenalty`ぉ=\@M
|
|
975 \prebreakpenalty`っ=\@M
|
|
976 \prebreakpenalty`ゃ=\@M
|
|
977 \prebreakpenalty`ゅ=\@M
|
|
978 \prebreakpenalty`ょ=\@M
|
|
979 \prebreakpenalty\jis"246E=\@M % ゎ
|
|
980 \prebreakpenalty`ァ=\@M
|
|
981 \prebreakpenalty`ィ=\@M
|
|
982 \prebreakpenalty`ゥ=\@M
|
|
983 \prebreakpenalty`ェ=\@M
|
|
984 \prebreakpenalty`ォ=\@M
|
|
985 \prebreakpenalty`ッ=\@M
|
|
986 \prebreakpenalty`ャ=\@M
|
|
987 \prebreakpenalty`ュ=\@M
|
|
988 \prebreakpenalty`ョ=\@M
|
|
989 \prebreakpenalty\jis"256E=\@M % ヮ
|
|
990 \prebreakpenalty\jis"2575=\@M % ヵ
|
|
991 \prebreakpenalty\jis"2576=\@M % ヶ
|
|
992
|
|
993 \fi
|
|
994 % 1.04(3)<<
|
|
995 % 2.12(1a)<<
|