Mercurial > hg > Papers > 2009 > pin-gn
comparison ipsjdrafts.sty @ 0:39af8ab46cbb
(no commit message)
author | one |
---|---|
date | Wed, 18 Feb 2009 22:22:25 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:39af8ab46cbb |
---|---|
1 % Copyright (C) 1995,1996,1997,1998,1999,2000,2001 | |
2 % by Hiroshi Nakashima, Yasuki Saito and | |
3 % The Editorial Board of the IPSJ Journal | |
4 % | |
5 % ipsjdrafts.sty 03-Apr-06 by Hiroshi Nakashima (ver 2.10) | |
6 % (revision history deleted) | |
7 | |
8 % ipsjdrafts.sty 24-Apr-95 by Hiroshi Nakashima (ver 1.0) | |
9 | |
10 %%%%%% Fonts %%%%%% | |
11 % All font loading are removed. | |
12 | |
13 \ifASCII | |
14 | |
15 \let\latex@setsize\@setsize | |
16 \def\@setsize#1#2#3#4{\latex@setsize{#1}{#2}{#3}{#4}\jspaceskip1zw} | |
17 | |
18 \newcount\jfsize | |
19 \let\setjglues\relax | |
20 \let\jintercharskip\kanjiskip | |
21 \let\jasciikanjiskip\xkanjiskip | |
22 \let\jmathkanjiskip\xkanjiskip | |
23 \newdimen\jspaceskip | |
24 | |
25 \def\defjintercharskip#1#2#3#4{\@asciiwarning{\defjintercharskip}} | |
26 \def\defjasciikanjiskip#1#2#3#4{\@asciiwarning{\defjasciicharskip}} | |
27 \def\defmathkanjiskip#1#2#3#4{\@asciiwarning{\defmathcharskip}} | |
28 \def\defjspaceskip#1#2#3#4{\@asciiwarning{\defjspaceskip}} | |
29 | |
30 \def\@asciiwarning#1{\ipsj@warning{\string#1\space % 2.00(1) | |
31 is not supported in ASCII version}} | |
32 | |
33 \if@LaTeX@eN % 2.00(2)>> | |
34 \DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc} | |
35 \DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt} | |
36 \fi % 2.00(2)<< | |
37 | |
38 \def\dg{\gt} % 1.06(1) | |
39 \def\dm{\mc} % 1.06(1) | |
40 | |
41 \else % This is necessary even in 2e. | |
42 \ifx\sixdm\undefined \jfont\sixdm=dm6 \fi % 1.01(1) | |
43 % 1.06(2) | |
44 \fi | |
45 | |
46 \if@LaTeX@eN % 2.00(2)>> | |
47 \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} | |
48 \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} | |
49 \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} | |
50 \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} | |
51 \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} | |
52 \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} | |
53 \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} | |
54 \DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}} | |
55 \DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}} | |
56 \fi % 2.00(2)<< | |
57 | |
58 %%%%%% Basic Font Size Macros %%%%%% | |
59 % Nothing at all. | |
60 | |
61 | |
62 %%%%%% Font Size Macros %%%%%% | |
63 | |
64 \def\fs@setsize#1#2#3#4{\normalsize\dimen@\normalbaselineskip | |
65 \@ifstar{\@setsize{#1}{\dimen@}{#3}{#4}}% | |
66 {\@setsize{#1}{#2}{#3}{#4}}} | |
67 | |
68 % \baselineskip's are almost 1.25 times those defined in NTT jart12. | |
69 | |
70 \def\@normalsize{\@setsize\normalsize{20pt}\xiipt\@xiipt} | |
71 \def\small{\fs@setsize\small{17pt}\xipt\@xipt} | |
72 \def\footnotesize{\fs@setsize\footnotesize{14pt}\xpt\@xpt} | |
73 \def\scriptsize{\@setsize\scriptsize{11.875pt}\viiipt\@viiipt} | |
74 \def\tiny{\@setsize\tiny{8.75pt}\vipt\@vipt} | |
75 \def\large{\@setsize\large{20pt}\xivpt\@xivpt} % 1.06(3) | |
76 \def\Large{\@setsize\Large{25pt}\xviipt\@xviipt} | |
77 \def\LARGE{\@setsize\LARGE{25pt}\xxpt\@xxpt} | |
78 \let\huge\LARGE | |
79 \let\Huge\LARGE | |
80 | |
81 \if@LaTeX@e % 2.00(3)>> | |
82 \let\normalsize\@normalsize | |
83 \fi % 2.00(3)<< | |
84 | |
85 \let\fs@sec\large | |
86 \let\fs@subsec\normalsize | |
87 \let\fs@bibliography\normalsize | |
88 \let\fs@caption\normalsize | |
89 \let\fs@table\normalsize | |
90 \let\fs@footnote\footnotesize | |
91 {\tiny \xdef\fn@fontv{\ifASCII \the\jfont \else \sixdm \fi}} | |
92 \let\fn@fontvi\fn@fontv | |
93 | |
94 \@normalsize | |
95 | |
96 \ifASCII\else % 1.06(2) >> | |
97 \ifx\setjglue\undefined\else % 2.04(1) | |
98 \def\@tempc{\edef\@tempa{\the\ja} | |
99 \edef\@tempa{\expandafter\string\@tempa} | |
100 \expandafter\@tempb\@tempa\@nil | |
101 \expandafter\defjintercharskip\csname\@tempa\endcsname} | |
102 \let\@tempd\@namedef | |
103 {\catcode`j=12\catcode`a=12\gdef\@tempb#1#2ja\@nil{\@tempd{@tempa}{#2}}} | |
104 \dg\@tempc{0pt}{1.4pt}{0.14pt} | |
105 \dm\@tempc{0pt}{1.4pt}{0.14pt} | |
106 \setjglues | |
107 \fi\fi % 1.06(2) << | |
108 | |
109 \@tempdima.55\baselineskip | |
110 \edef\sec@aboveskip{\the\@tempdima} | |
111 \@tempdima.45\baselineskip | |
112 \edef\sec@belowskip{\the\@tempdima} | |
113 | |
114 \if@LaTeX@e\else % 2.04(2) | |
115 \let\latex@bf\bf % 1.06(1) | |
116 \def\bf{\dg\latex@bf} % 1.06(1) | |
117 \fi % 2.04(2) | |
118 | |
119 | |
120 %%%%%% Page Layout Parameters %%%%%% | |
121 | |
122 \newdimen\@mojihaba | |
123 \@mojihaba\jspaceskip | |
124 | |
125 % No heads | |
126 \headheight\z@ | |
127 \headsep\z@ | |
128 | |
129 \setbox0\hbox{$\displaystyle X^X$} | |
130 \topskip\ht0 | |
131 | |
132 % 1 page = 32 lines | |
133 \textheight31\baselineskip \advance\textheight\topskip \advance\textheight100sp | |
134 | |
135 % \topmargin is (A4height-\textheight)/2 - 1in | |
136 \topmargin296mm \advance\topmargin-\textheight \divide\topmargin\tw@ | |
137 \advance\topmargin-1in | |
138 \ifASCII\if@LaTeX@e\@@topmargin\topmargin\fi\fi % 2.00(4) | |
139 | |
140 \footskip 1.5\baselineskip | |
141 | |
142 % 1 page = 35 Kanji chars | |
143 \ifDS@english % 1.06(4) >> | |
144 \textwidth404.13048pt | |
145 \else | |
146 \textwidth35\@mojihaba | |
147 \fi % 1.06(4) << | |
148 | |
149 % \oddsidemargin is (A4width-\textwidth)/2 - 1in | |
150 \oddsidemargin210mm \advance\oddsidemargin-\textwidth \divide\oddsidemargin\tw@ | |
151 \advance\oddsidemargin-1in | |
152 | |
153 % As jart12 | |
154 \footnotesep10pt | |
155 \skip\footins 10.8pt plus 4pt minus 2pt | |
156 \def\footnoterule{\kern-3\p@ \hrule width.4\columnwidth \kern2.6\p@} | |
157 | |
158 \floatsep \baselineskip \textfloatsep \baselineskip | |
159 \intextsep \baselineskip \@maxsep \baselineskip | |
160 \dblfloatsep \baselineskip \dbltextfloatsep \baselineskip | |
161 \@dblmaxsep \baselineskip | |
162 \@fptop 0pt plus 1fil \@fpsep 0pt plus 2fil \@fpbot 0pt plus 1fil | |
163 \@dblfptop 0pt plus 1fil \@dblfpsep 0pt plus 2fil \@dblfpbot 0pt plus 1fil | |
164 | |
165 \parskip\z@ \parindent \@mojihaba | |
166 \@lowpenalty 51 \@medpenalty 151 \@highpenalty 301 | |
167 \@beginparpenalty -\@lowpenalty \@endparpenalty -\@lowpenalty | |
168 \@itempenalty -\@lowpenalty | |
169 | |
170 | |
171 %%%%%% Title and Authors %%%%%% | |
172 % | |
173 % Format of title, author names and abstract. | |
174 % | |
175 % \leftline{\LARGE 論文} | |
176 % \vfill | |
177 % \beign{center}\LARGE\bf <Japanese title>\end{center} | |
178 % \vfill | |
179 % \begin{center}\LARGE\bf <Engilish title>\end{center} | |
180 % \vfill\vfill | |
181 % \newpage | |
182 % \large <Japanese author names> | |
183 % \vfill | |
184 % 連絡先 | |
185 % \begin{itemize}\item[]\large <Contact address>\end{itemize} | |
186 % \vfill\vfill | |
187 % \newpage | |
188 % \normalsize <Japanese abstract> | |
189 % \normalsize <English abstract> | |
190 | |
191 \def\maketitle{\@maketitle} | |
192 | |
193 % default title header | |
194 | |
195 \def\title{\@dblarg{\@xtitle}} | |
196 \def\@xtitle[#1]#2{\gdef\@title{#2}} | |
197 \def\@title{\leavevmode\mkt@warning\title} | |
198 \long\def\author#1{\long\gdef\@author{#1}} | |
199 \def\@author{\mkt@warning\author} | |
200 | |
201 \newbox\@abstractbox | |
202 | |
203 \def\abstract{\global\let\@abstract\relax | |
204 \global\setbox\@abstractbox\vtop\bgroup} | |
205 \def\endabstract{\par\hbox{}\egroup} | |
206 \def\@abstract{\mkt@warning{abstract env}} | |
207 | |
208 %% We need English title, author name(s) and abstract. (H.N.) | |
209 %% English author names are simply ignored. | |
210 \def\etitle#1{\gdef\@etitle{#1}} | |
211 \def\@etitle{\leavevmode\mkt@warning\etitle} | |
212 \long\def\eauthor#1{} | |
213 | |
214 \newbox\@eabstractbox | |
215 \def\eabstract{\global\let\@eabstract\relax | |
216 \global\setbox\@eabstractbox\vtop\bgroup} | |
217 \let\endeabstract\endabstract | |
218 \def\@eabstract{\mkt@warning{eabstract env}} | |
219 | |
220 \ifDS@english \let\abstract\eabstract \let\@eabstract\@abstract \fi | |
221 | |
222 % Contact address is required in draft. | |
223 \def\contact{\long\def\mkt@contact} | |
224 \def\mkt@contact{\leavevmode\mkt@warning\contact} | |
225 | |
226 \def\mkt@warning#1{\ipsj@warning{Missing \string#1}} % 2.00(1) | |
227 | |
228 \def\@maketitle{\newpage\thispagestyle{empty} | |
229 \leftline{\LARGE | |
230 \ifDS@english \ifDS@technote Technical Note\else | |
231 Regular Paper\fi | |
232 \else \ifDS@technote テクニカルノート\else 論文\fi\fi} | |
233 \vfill | |
234 \begin{center}\LARGE\bf\@title\end{center} | |
235 \ifDS@english\else | |
236 \vfill | |
237 \begin{center}\LARGE\bf\@etitle\end{center}\fi | |
238 \@thanks | |
239 \vfill\vfill | |
240 \ifDS@anonymous\else % 2.10(1)>> | |
241 \newpage\thispagestyle{empty} | |
242 \begingroup\large\vspace*{\fill}\rightskip0pt plus1fil | |
243 \parindent\z@\parskip.5\baselineskip\hangindent2em\hangafter\@ne | |
244 \def\par{{\@@par}} | |
245 \mkt@makeauthor | |
246 \par\vfill | |
247 \noindent | |
248 \ifDS@english Contact To:\else 連絡先\fi | |
249 \endgroup | |
250 \begin{itemize}\large\item[]\mkt@contact\end{itemize} | |
251 \vfill\vfill | |
252 \fi % 2.10(1)<< | |
253 \newpage \setcounter{page}{1}\def\thepage{\roman{page}} | |
254 \ifDS@english\else \@abstract \centerline{\bf 概要} | |
255 \vskip-\prevdepth\vskip\baselineskip\vskip-\ht\@abstractbox | |
256 \unvbox\@abstractbox\prevdepth\z@ \fi | |
257 \centerline{\bf Abstract} | |
258 \vskip-\prevdepth \vskip\baselineskip\vskip-\ht\@eabstractbox | |
259 \@eabstract \unvbox\@eabstractbox | |
260 \newpage \def\thepage{\arabic{page}}\setcounter{page}{1}} | |
261 | |
262 \def\mkt@makeauthor{\let\member\mkt@member \let\nomember\mkt@nomember | |
263 \let\stmember\mkt@stmember | |
264 \expandafter\mkt@imakeauthor\@author\and\@nil\and} | |
265 \def\mkt@imakeauthor#1\and{\def\@tempa{#1}\ifx\@tempa\@nnil\let\next\relax | |
266 \else #1\par\let\next\mkt@imakeauthor\fi\next} | |
267 | |
268 % Macros to specify author's affiliation easily. | |
269 \ifDS@english | |
270 \def\paffilabel#1#2{\affilabel{#1}{Presently with #2}} | |
271 \else | |
272 \def\paffilabel#1#2{\affilabel{#1}{現在 #2}} | |
273 \fi | |
274 % Ignore English affiliation even if given. | |
275 \def\affilabel#1#2{\@ifundefined{affi@r@#1}% | |
276 {\expandafter\xdef\csname affi@r@#1\endcsname | |
277 {\affi@cuteng#2\\\@nil}} | |
278 {\ipsj@warning{Affiliation label `#1' multiply defined}}} | |
279 % 2.00(1) | |
280 \def\affiref#1{\@ifundefined{affi@r@#1}% | |
281 {\ipsj@warning{% % 2.00(1) | |
282 Affiliation reference `#1' undefined}\hbox{(???)}} | |
283 {\setbox\@tempboxa\hbox{(\csname affi@r@#1\endcsname)}% | |
284 \@tempdima\wd\@tempboxa \advance\@tempdima2em\relax | |
285 \ifdim\@tempdima>\hsize | |
286 \newline\unhbox\@tempboxa | |
287 \else\ \box\@tempboxa\fi}} | |
288 \def\affi@cuteng#1\\#2\@nil{#1} | |
289 | |
290 % Membership of aurthor is required in draft. | |
291 \ifDS@english | |
292 \def\mkt@member#1{\ \hbox{[Regular Member\##1]}} | |
293 \def\mkt@nomember{\ \hbox{[Non Member]}} | |
294 \def\mkt@stmember#1{\ \hbox{[Student Member\##1]}} | |
295 \else | |
296 \def\mkt@member#1{\ \hbox{[正会員\##1]}} | |
297 \def\mkt@nomember{\ \hbox{[非会員]}} | |
298 \def\mkt@stmember#1{\ \hbox{[学生会員\##1]}} | |
299 \fi | |
300 | |
301 %%%%%% Page Header and Footer %%%%%% | |
302 | |
303 \mark{{}{}} | |
304 | |
305 % The following counters are not used, but may appear. | |
306 \let\c@volpage\c@page % 2.00(5) | |
307 \def\thevolpage{\thepage} % 2.00(5) | |
308 \newcounter{volpageoffset} % You must set this to appropriate value | |
309 \newcounter{volume}\expandafter\let\csname c@巻数\endcsname\c@volume | |
310 \newcounter{number}\expandafter\let\csname c@号数\endcsname\c@number | |
311 \newcounter{year}\expandafter\let\csname c@年数\endcsname\c@year | |
312 | |
313 \def\ps@plain{\let\@mkboth\@gobbletwo | |
314 \def\@oddhead{\@checklines}\let\@evenhead\@oddhead | |
315 \def\@oddfoot{\rm \hfil\thepage\hfil}\let\@evenfoot\@oddfoot} | |
316 | |
317 % \checklines enables to draw a horizontal rule onto each baselines. | |
318 | |
319 \newif\if@checklines \@checklinesfalse | |
320 \def\checklines{\@checklinestrue} | |
321 \def\@checklines{\if@checklines \rlap{\smash{\vtop{ | |
322 \hbox{} \vskip\headsep \hrule width\textwidth\vskip-.4pt \vskip\topskip | |
323 \hrule\vskip-.4pt | |
324 \@tempcnta31\relax\@@checklines}}}\hfil\fi} | |
325 \def\@@checklines{\ifnum\@tempcnta>\z@ | |
326 \vskip\normalbaselineskip \hrule\vskip-.4pt \advance\@tempcnta\m@ne | |
327 \let\next\@@checklines\else\let\next\relax\fi\next} | |
328 | |
329 \pagestyle{plain} | |
330 \pagenumbering{arabic} | |
331 | |
332 \ifDS@english\else | |
333 \def\today{\the\year 年 \the\month 月 \the\day 日} | |
334 \fi | |
335 | |
336 | |
337 %%%%%% Output Routine %%%%%% | |
338 % Nothing at all. | |
339 | |
340 | |
341 %%%%%% Biography %%%%%% | |
342 % Almost nothing. | |
343 | |
344 \def\受付#1#2#3{}\let\received\受付 | |
345 \def\採録#1#2#3{}\let\accepted\採録 | |
346 | |
347 \def\biography{\let\member\@gobble \let\nomember\@gobble \let\stmember\@gobble | |
348 \let\adjust\@gobble \setbox0\vbox\bgroup | |
349 \tolerance\@M \hbadness\@M \hfuzz\maxdimen} | |
350 \def\endbiography{\egroup\setbox0\hbox{}} | |
351 | |
352 | |
353 %%%%%% Miscellaneous %%%%%% | |
354 | |
355 \raggedbottom | |
356 | |
357 \input{ipsjcommon.sty} | |
358 | |
359 % Redefine \acknowledgment to put it separately. | |
360 \newbox\ack@box | |
361 \let\@acknowledgment\acknowledgment | |
362 | |
363 \def\acknowledgment{\global\setbox\ack@box\vtop\bgroup\@acknowledgment} | |
364 \def\endacknowledgment{\par\egroup} | |
365 | |
366 \let\id@enddocument\enddocument | |
367 \def\enddocument{\clearpage | |
368 \ifDS@anonymous\else \unvbox\ack@box \fi % 2.10(1) | |
369 \id@enddocument} | |
370 | |
371 \endinput |