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