summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/platex/base/ascmac.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-05-09 23:46:07 +0000
committerKarl Berry <karl@freefriends.org>2016-05-09 23:46:07 +0000
commita0fe732c51650716b95c145d4c68cbe7138f83d4 (patch)
treeec1711f4aa1db3e9f60ee468741d773f7ec5eb96 /Master/texmf-dist/source/platex/base/ascmac.dtx
parentc143a4632d967b1831be9a77ea54f6ceac5da3ec (diff)
platex (9may16)
git-svn-id: svn://tug.org/texlive/trunk@40992 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/platex/base/ascmac.dtx')
-rw-r--r--Master/texmf-dist/source/platex/base/ascmac.dtx630
1 files changed, 630 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/platex/base/ascmac.dtx b/Master/texmf-dist/source/platex/base/ascmac.dtx
new file mode 100644
index 00000000000..6a9c2458cf2
--- /dev/null
+++ b/Master/texmf-dist/source/platex/base/ascmac.dtx
@@ -0,0 +1,630 @@
+% \iffalse meta-comment
+%
+% Copyright (c) 2010 ASCII MEDIA WORKS
+% Copyright (c) 2016 Japanese TeX Development Community
+%
+% This file is part of the pLaTeX2e system (community edition).
+% -------------------------------------------------------------
+%
+% \fi
+%
+% \CheckSum{830}
+% \CharacterTable
+% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+% \iffalse
+%
+% 2016/04/15 v2.0b
+% - Simplify \@keytop.
+% 2016/03/13 v2.0a
+% - Avoid arithmetic overflow in \mask/\maskbox.
+% 2016/03/12 v2.0
+% - Converted to DTX file.
+% - Remove extra spaces before/after \keytop[c]{...}.
+% - Adjust parameters for \keytop.
+% 2016/03/06
+% - Set \tbaselineshift in itembox str and shadebox env.
+% - Delete \tbaselineshift\z@ in \mask and \Maskbox.
+% - Save \ybaselineshift.
+% 2016/03/04
+% - boxnote, shadebox begin with \par\vspace{.3\baselineskip}.
+% - Adjust the width of shadebox environment.
+% 2016/02/21 (many thanks to ZR for suggestions in bxascmac)
+% - Made compatible with pict2e (tate-gumi not supported yet).
+% - Adjust parameters for drawing rounded rectangles.
+% - Fix bugs in \maskbox and \Maskbox.
+% 2006/07/14 (ST): itembox, screen environment bug fix.
+% 2002/04/01 (KN): ASCII logo macros
+% 1998/11/27 (KN and FTEXers): itembox
+% 1998/02/27 (KN): set \tbaselineshift in minipage environment.
+%
+% \fi
+%
+% \iffalse
+%<*ascmac>
+%% wrapper for tascmac.sty
+%%
+%</ascmac>
+%<*tascmac>
+%% "tascmac" document style option for tate gumi.
+%%
+%% Original version:
+%% Copyright (C) by 1993, ASCII Corporation & Impress Corporation.
+%% (Last update: 2006/07/14)
+%% Modified by Japanese TeX Development Community, since 2016.
+%%
+%% (ChangeLog has moved to the source file ``ascmac.dtx'')
+%%
+%</tascmac>
+%<ascmac|tascmac>\NeedsTeXFormat{LaTeX2e}
+%<*driver>
+\NeedsTeXFormat{pLaTeX2e}
+\ProvidesFile{ascmac.dtx}
+%</driver>
+%<tascmac>\ProvidesPackage{tascmac}
+%<ascmac>\ProvidesPackage{ascmac}
+ [2016/04/15 v2.0b
+%<driver|tascmac> ascmac package (community edition)
+%<ascmac> ascmac wrapper (community edition)
+ ]
+%<*driver>
+\documentclass{jltxdoc}
+\usepackage{ascmac}
+\GetFileInfo{ascmac.dtx}
+\title{The \textsf{ascmac} package \fileversion}
+\author{Japanese \TeX\ Development Community}
+\date{$B:n@.F|!'(B\filedate}
+\begin{document}
+ \maketitle
+ \DocInput{\filename}
+\end{document}
+%</driver>
+% \fi
+%
+% \tableofcontents
+%
+% \section{$B$O$8$a$K(B}
+%
+% \textsf{ascmac}$B%Q%C%1!<%8$O!"(Bp\LaTeXe{}$B$NI8=`5!G=$NHO0O$G!"?^$d7S@~$G(B
+% $B0O$s$@%\%C%/%9$r=PNO$9$kL?Na$J$I$rDs6!$7$^$9!#(B\textsf{ascmac}$B%Q%C%1!<%8(B
+% $B$N<BBN$O(B\textsf{tascmac}$B%Q%C%1!<%8$G$9$,!"$3$l$O$b$H$b$H8E$$(Bp\LaTeX{}$B$G(B
+% $BG[I[$5$l$F$$$?2#AH@lMQ(B\textsf{ascmac}$B%Q%C%1!<%8$H!"$=$l$r=DAH$KBP1~$5$;(B
+% $B$?(B\textsf{tascmac}$B%Q%C%1!<%8$rE}9g$7$?L>;D$G$9!#(B
+%
+% $B$3$N%I%-%e%a%s%H$O!"%"%9%-!<$K$h$C$FG[I[$5$l$F$$$k(B 2006/07/14 $B%P!<%8%g%s(B
+% $B$+$iGI@8$7$F!"F|K\8l(B\TeX{}$B3+H/%3%_%e%K%F%#$K$h$C$F3+H/$5$l$F$$$k%P!<%8%g%s(B
+% $B$N$?$a$K?7$?$K=q$+$l$^$7$?!#%3%_%e%K%F%#HG$G$O!"%*%j%8%J%k$N%"%9%-!<HG$N(B
+% $B%3!<%I$r85$K!"$$$/$D$+$N%P%0=$@5$HB>$N%Q%C%1!<%8$H$N8_49@-$r2~A1$7$^$7$?!#(B
+%
+% \section{$B;H$$$+$?(B}
+%
+% \subsection{$B4D6-7?$NL?Na(B}
+%
+% \textsf{ascmac}$B%Q%C%1!<%8$,Ds6!$9$k4D6-7?$NL?Na$O(B4$B<oN`$"$j$^$9!#$=$l$>$l(B
+% $B%F%-%9%H$J$I$r7S@~OH$G0O$s$G=PNO$7$^$9!#(B
+%
+% $B$3$l$i$N4D6-$O!"$9$Y$F2#I}$,$=$N;~E@$G$N(B |\linewidth| $B$NCM$K$J$j$^$9$N(B
+% $B$G!"%\%C%/%9$NI}$rJQ99$7$?$$>l9g$O(B |minipage| $B4D6-$J$I$G0O$s$G$/$@$5$$!#(B
+% $B=D$ND9$5$O!"<+F0E*$KFbMF$K9g$o$;$FD4@0$5$l$^$9!#(B \medskip
+%
+% \DescribeEnv{boxnote}
+% |boxnote| $B4D6-$O!"GK$C$?%a%bMQ;f$N$h$&$JJ70O5$$N%\%C%/%9$r:n$j$^$9!#(B
+% $BGK$C$?$h$&$J7A$N7S@~$O!"(Bascgrp$B%U%)%s%H$r;H$C$F<B8=$5$l$F$$$^$9!#(B
+%
+% \begin{boxnote}
+% $B%\%C%/%9%N!<%H4D6-$G$9!#(B
+% \end{boxnote}
+% $B$O!"0J2<$NF~NO$+$iF@$i$l$^$9!#(B
+% \begin{verbatim}
+% \begin{boxnote}
+% $B%\%C%/%9%N!<%H4D6-$G$9!#(B
+% \end{boxnote}
+% \end{verbatim}
+%
+% \DescribeEnv{screen}
+% |screen| $B4D6-$O!";M6y$,4]$$0O$_OH$NCf$K%F%-%9%H$rF~$l$^$9!#(B
+% $B%*%W%7%g%s0z?t$H$7$F(B |0| $B$+$i(B |8| $B$N@0?tCM$r;XDj$9$l$P!";M6y$N4]$_$N(B
+% $B6q9g$rJQ99$9$k$3$H$,$G$-$^$9!#@0?tCM$rBg$-$/$9$k$K$D$l$F4]$_$O>.$5$/(B
+% $B$J$C$F$$$-$^$9!#>JN,$7$?>l9g$O(B |0| $B$H$_$J$5$l$^$9!#(B
+%
+% \begin{screen}
+% $B;M6y$,4]$$0O$_OH$G$9!#(B
+% \end{screen}
+% \begin{screen}[4]
+% $B;M6y$,4]$$0O$_OH$G$9!#(B
+% \end{screen}
+% $B$O!"0J2<$NF~NO$+$iF@$i$l$^$9!#(B
+% \begin{verbatim}
+% \begin{screen}
+% $B;M6y$,4]$$0O$_OH$G$9!#(B
+% \end{screen}
+% \begin{screen}[4]
+% $B;M6y$,4]$$0O$_OH$G$9!#(B
+% \end{screen}
+% \end{verbatim}
+%
+% \DescribeEnv{itembox}
+% |itembox| $B4D6-$O(B |screen| $B4D6-$K;w$F$$$^$9$,!">eC<$N7S@~$N$H$3$m$K%?%$%H%k(B
+% $B$r=PNO$9$k$3$H$,$G$-$^$9!#$^$?!"%*%W%7%g%s0z?t(B |l|, |c|, |r| $B$G%?%$%H%k(B
+% $B$N=PNO0LCV$r:8!"Cf1{!"1&$H;XDj$G$-$^$9!#>JN,$7$?>l9g$OCf1{$K$J$j$^$9!#(B
+%
+% \begin{itembox}[l]{$B%?%$%H%k(B}
+% $B9`L\%\%C%/%9$G$9!#(B
+% \end{itembox}
+% $B$O!"0J2<$NF~NO$+$iF@$i$l$^$9!#(B
+% \begin{verbatim}
+% \begin{itembox}[l]{$B%?%$%H%k(B}
+% $B9`L\%\%C%/%9$G$9!#(B
+% \end{itembox}
+% \end{verbatim}
+%
+% \DescribeEnv{shadebox}
+% |shadebox| $B4D6-$O!"1FIU$-%\%C%/%9$NCf$K%F%-%9%H$rF~$l$^$9!#(B
+% $B1F$NI}$O(B |\shaderule| $B%Q%i%a!<%?$G5,Dj$5$l!"%G%U%)%k%H$O(B5pt$B$G$9!#(B
+%
+% \begin{shadebox}
+% $B1FIU$-$N%\%C%/%9$G$9!#(B
+% \end{shadebox}
+% $B$O!"0J2<$NF~NO$+$iF@$i$l$^$9!#(B
+% \begin{verbatim}
+% \begin{shadebox}
+% $B1FIU$-$N%\%C%/%9$G$9!#(B
+% \end{shadebox}
+% \end{verbatim}
+%
+% \subsection{$BLV3]$1L?Na(B}
+%
+% $BLV3]$1$r$9$kL?Na$,(B3$B<oN`MQ0U$5$l$F$$$^$9!#(B|\mask| $BL?Na$O!"0z?t$NFbMF$NItJ,(B
+% $B$KLV$r3]$1$^$9!#(B|\maskbox| $BL?Na$H(B |\Maskbox| $BL?Na$O!"I}$H9b$5$r;XDj$7$F(B
+% $BLV3]$1$9$k$3$H$,$G$-$^$9!#$=$7$F!"(B|\maskbox| $BL?Na$H(B |\Maskbox| $BL?Na$N0c$$(B
+% $B$O!"8e<T$N$_%\%C%/%9$N<~$j$K7S@~$r0z$/$H$$$&E@$G$9!#(B
+%
+% $B$3$l$i$NL?Na$O!"$$$:$l$b(Bascgrp$B%U%)%s%H$K<}O?$5$l$F$$$kLV3]$1%Q%?!<%s$N(B
+% $BJ8;z$rJB$Y$k$3$H$GLV3]$1$r<B8=$7$F$$$^$9!#(B
+%
+% \makeatletter
+% \begin{table}[htbp]
+% \centering
+% \begin{tabular}{llll}
+% A = {\@ascgrp A} & B = {\@ascgrp B} & C = {\@ascgrp C} & D = {\@ascgrp D} \\
+% E = {\@ascgrp E} & F = {\@ascgrp F} & G = {\@ascgrp G} & H = {\@ascgrp H} \\
+% I = {\@ascgrp I} & J = {\@ascgrp J} & K = {\@ascgrp K} &
+% \end{tabular}
+% \end{table}
+% \makeatother
+%
+% \DescribeMacro{\mask}
+% |\mask| $BL?Na$O!"Bh(B1$B0z?t$,LV3]$1$r$9$kFbMF$G!"Bh(B2$B0z?t$,LV3]$1%Q%?!<%s$r(B
+% $B<($95-9f!J(BA$B$+$i(BK$B!K$G$9!#(B
+%
+% \begin{center}
+% \mask{$BLV3]$1Nc(B1}{A} \hfil \mask{$BLV3]$1Nc(B2}{C}
+% \end{center}
+% $B$O!"0J2<$NF~NO$+$iF@$i$l$^$9!#(B
+% \begin{verbatim}
+% \mask{$BLV3]$1Nc(B1}{A} \hfil \mask{$BLV3]$1Nc(B2}{C}
+% \end{verbatim}
+%
+% \DescribeMacro{\maskbox}
+% |\maskbox| $BL?Na$O(B5$B$D$N0z?t$r;}$A!"$=$l$>$l%\%C%/%9$NI}!"9b$5!"(B
+% $BLV3]$1%Q%?!<%s!"=PNO0LCV!"LV3]$1$r$9$kFbMF$G$9!#=PNO0LCV$O(B |l|, |c|, |r| $B$N(B
+% $B$$$:$l$+$G!"$=$l$>$l:8!"Cf1{!"1&$K=PNO$7$^$9!#(B
+%
+% \begin{center}
+% \maskbox{25em}{4em}{E}{c}{$BI}$r;XDj$7$?LV3]$1%\%C%/%9(B}
+% \end{center}
+% $B$O!"0J2<$NF~NO$+$iF@$i$l$^$9!#(B
+% \begin{verbatim}
+% \maskbox{25em}{4em}{E}{c}{$BI}$r;XDj$7$?LV3]$1%\%C%/%9(B}
+% \end{verbatim}
+%
+% \DescribeMacro{\Maskbox}
+% |\Maskbox| $BL?Na$O(B |\maskbox| $BL?Na$HF1MM$N0z?t$r;}$A$^$9$,!"LV3]$1$r$9$kFbMF$N(B
+% $B;XDj$NA0!"$9$J$o$A(B5$BHVL\$N0z?t$H$7$F!"%\%C%/%9$r0O$`7S@~$NB@$5$b;XDj$7$^$9!#(B
+% $B$7$?$,$C$F!"A4It$G(B6$B$D$N0z?t$r;}$A$^$9!#(B
+%
+% \begin{center}
+% \Maskbox{30em}{4em}{A}{c}{1pt}{$BI}$r;XDj$7$?7S@~IU$-LV3]$1%\%C%/%9(B}
+% \end{center}
+% $B$O!"0J2<$NF~NO$+$iF@$i$l$^$9!#(B
+% \begin{verbatim}
+% \Maskbox{30em}{4em}{A}{c}{1pt}{$BI}$r;XDj$7$?7S@~IU$-LV3]$1%\%C%/%9(B}
+% \end{verbatim}
+%
+% \subsection{$B$=$NB>$NL?Na(B}
+%
+% \DescribeMacro{\keytop}
+% |\keytop| $B%3%^%s%I$O!"%-!<%\!<%I>e$NJ8;z$r<($9$H$-$J$I$KJXMx$G$9!#(B
+%
+% \begin{table}[htbp]
+% \centering
+% \begin{tabular}{cc}
+% $BF~NO(B & $B=PNO(B \\
+% |\keytop{A}| & \keytop{A} \\
+% |\keytop{$B$"(B}| & \keytop{$B$"(B}
+% \end{tabular}
+% \end{table}
+%
+% \DescribeMacro{\yen}
+% \DescribeMacro{\return}
+% \DescribeMacro{\Return}
+% $B1_5-9f$r=PNO$9$k(B |\yen| $BL?Na$O!"(BY$B$H(B=$B$r=E$M9g$o$;$F=PNO$7$F$$$^$9!#(B
+% $B2~9T5-9f$O(B |\return| $B$H(B |\Return| $B$G$9!#2~9T5-9f$O(Bascgrp$B%U%)%s%H(B
+% $B$rMQ$$$F$$$^$9!#(B
+%
+% \begin{table}[htbp]
+% \centering
+% \begin{tabular}{cc}
+% $BF~NO(B & $B=PNO(B \\
+% |\yen| & \yen \\
+% |\return| & \return \\
+% |\Return| & \Return
+% \end{tabular}
+% \end{table}
+%
+% \DescribeMacro{\ascii}
+% \DescribeMacro{\Ascii}
+% \DescribeMacro{\ASCII}
+% $B%"%9%-!<%3!<%]%l!<%7%g%s$N%m%4$r=PNO$9$kL?Na$G$9!#(B
+% $B%5%$%:$O(B3$B<oN`MQ0U$5$l$F$$$^$9!#(B
+%
+% \ascii \hfil \Ascii \hfil \ASCII
+%
+%
+% \StopEventually{}
+%
+% \section{$B%3!<%I(B}
+%
+% \textsf{ascmac}$B%Q%C%1!<%8$O(B\textsf{tascmac}$B%Q%C%1!<%8$N%i%C%Q!<$G$9!#(B
+% \begin{macrocode}
+%<*ascmac>
+\RequirePackage{tascmac}
+%</ascmac>
+% \end{macrocode}
+%
+% \textsf{tascmac}$B%Q%C%1!<%8$NF0:n>r7o$O!"(Bp\LaTeXe{}$B$G$9!#(B
+% \begin{macrocode}
+%<*tascmac>
+%%
+%% Actually `tascmac' requires pLaTeX2e, but LuaTeX-ja can handle the
+%% code properly; so \NeedsTeXFormat{LaTeX2e} on purpose.
+%% Check is included below:
+%%
+\ifx\kanjiskip\@undefined
+ \@ifpackageloaded{luatexja}{%
+ \PackageInfo{tascmac}{%
+ Patch from LuaTeX-ja will be applied}%
+ }{%
+ \PackageError{tascmac}{%
+ `ascmac' and `tascmac' can be used only in pLaTeX,\MessageBreak
+ upLaTeX or LuaLaTeX with LuaTeX-ja support.\MessageBreak
+ Consider using `bxascmac' instead.\MessageBreak
+ See https://github.com/zr-tex8r/BXptool for detail}{}%
+ }%
+\fi
+% \end{macrocode}
+%
+% \begin{macro}{\@savetbaselineshift}
+% \begin{macro}{\@saveybaselineshift}
+% |\tbaselineshift| $B$H(B |\ybaselineshift| $B$r0l;~B`Hr$9$k$?$a$N=`Hw$G$9!#(B
+% \begin{macrocode}
+%%
+%% ascmac.sty 10/28 '88
+%% ASCII special macros
+\newdimen\@savetbaselineshift
+\newdimen\@saveybaselineshift
+%%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\@@ASCII}
+% \begin{macro}{\ascii}
+% \begin{macro}{\Ascii}
+% \begin{macro}{\ASCII}
+% $B%"%9%-!<%3!<%]%l!<%7%g%s$N%m%4$G$9!#(B
+% \begin{macrocode}
+%% ASCII logo
+\def\@@ASCII#1#2#3{\shortstack{#1 ASCII \\[#3]
+ \fontsize{#2}{\z@}\usefont{OT1}{cmss}{m}{n}ASCII CORPORATION}}
+\def\ascii{\@ifundefined{@ascii}{\font\@ascii=ascii10 scaled \magstep4}{}%
+ \@@ASCII\@ascii{5pt}{-6pt}}
+\def\Ascii{\@ifundefined{@Ascii}{\font\@Ascii=ascii10 scaled \magstep5}{}%
+ \@@ASCII\@Ascii{6pt}{-7pt}}
+\def\ASCII{\@ifundefined{@ASCII}{\font\@ASCII=ascii36}{}%
+ \@@ASCII\@ASCII{9pt}{-9pt}}
+%%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% |boxnote| $B4D6-$J$I$G;H$&L?Na$N=`Hw$G$9!#(B
+% \begin{macrocode}
+%% boxnote environment
+\font\@ascgrp=ascgrp
+\newbox\scb@x \newbox\scscb@x
+\newdimen\@bw\newbox\@nbox\newbox\@nbody
+% \end{macrocode}
+%
+% \begin{environment}{boxnote}
+% |boxnote| $B4D6-$rDj5A$7$^$9!#(B
+% \begin{macrocode}
+\def\boxnote{\par\vspace{.3\baselineskip}%
+ \@saveybaselineshift\ybaselineshift\ybaselineshift\z@
+ \@savetbaselineshift\tbaselineshift\tbaselineshift\z@
+ \setbox\@nbox=\hbox{\@ascgrp\vrule width1.08pt depth35pt b\hss a\hss b}
+ \@whiledim \wd\@nbox<\hsize \do{
+ \setbox\@nbox=\hbox{\@ascgrp\unhbox\@nbox \hss a\hss b}}
+ \setbox\@nbox=\hbox to\hsize{\@ascgrp\unhbox\@nbox \hss a\hss b%
+ \vrule width1.08pt depth35pt}
+ \@bw=\wd\@nbox\advance\@bw -40pt
+ \begin{lrbox}{\@nbody}\begin{minipage}{\@bw}% (KN:1998/02/27)
+ \ybaselineshift\@saveybaselineshift \tbaselineshift\@savetbaselineshift}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\endboxnote{\end{minipage}\end{lrbox}%
+ \vbox{\parindent=0pt\offinterlineskip\copy\@nbox
+ \hbox to\wd\@nbox{\vrule width1.08pt\hfil\box\@nbody\hfil\vrule width1.08pt}
+ \hbox to\wd\@nbox{\vrule width1.08pt height15pt\hfil
+ \vrule width1.08pt height15pt}\hrule height1.08pt}}
+%%
+% \end{macrocode}
+% \end{environment}
+%
+% |screen| $B4D6-$J$I$G;H$&L?Na$N=`Hw$G$9!#(B
+% \begin{macrocode}
+%% screen environment
+\newdimen\@scw
+\def\@hobox#1#2#3{\hbox to\@scw{\oval(#3,#3)[#1]\hfil\oval(#3,#3)[#2]%
+ \dimen\z@=#3\unitlength\advance\dimen\z@\@wholewidth
+ \vrule\@width\z@\@height\z@\@depth.5\dimen\z@}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\@vrf@#1#2{\vskip#1\leaders\vrule width#2\vfil\vskip#1}
+% \end{macrocode}
+%
+% \begin{environment}{screen}
+% |screen| $B4D6-$rDj5A$7$^$9!#(B
+% \begin{macrocode}
+\def\screen{%
+ \@saveybaselineshift\ybaselineshift \ybaselineshift\z@
+ \@savetbaselineshift\tbaselineshift \tbaselineshift\z@
+ \@ifnextchar[{\@screen}{\@screen[0]}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\@screen[#1]{\ifcase#1\def\@r{20}\def\@s{9.8pt}\def\@sx{10pt}\or
+ \def\@r{18}\def\@s{8.8pt}\def\@sx{9pt}\or
+ \def\@r{16}\def\@s{7.8pt}\def\@sx{8pt}\or
+ \def\@r{14}\def\@s{6.8pt}\def\@sx{7pt}\or
+ \def\@r{12}\def\@s{5.8pt}\def\@sx{6pt}\or
+ \def\@r{10}\def\@s{4.8pt}\def\@sx{5pt}\or
+ \def\@r{8}\def\@s{3.8pt}\def\@sx{4pt}\or
+ \def\@r{6}\def\@s{2.8pt}\def\@sx{3pt}\else
+ \def\@r{4}\def\@s{1.8pt}\def\@sx{2pt}\fi
+ \par\vspace{.3\baselineskip}\@scw\linewidth \advance\@scw -\@r pt
+ \setbox\scb@x=\hbox to\@scw\bgroup\begin{minipage}{\@scw}% (KN:1998/02/27)
+ \ybaselineshift\@saveybaselineshift \tbaselineshift\@savetbaselineshift}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\endscreen{\end{minipage}\egroup%
+ \setbox\scscb@x=\hbox to\linewidth{\hfil\vbox{\offinterlineskip%
+ \thinlines\setlength{\unitlength}{1pt}\hrule\kern\@s%
+ \@hobox{tl}{tr}{\@r}\kern-\@sx\box\scb@x\@hobox{bl}{br}{\@r}%
+ \kern-.4pt\hrule}\hfil}\dimen0=\ht\scscb@x%
+ \dimen2=\@sx\advance\dimen2 .2pt
+ \noindent\hbox to\linewidth{\hbox to.2pt{\vbox to\dimen0{\@vrf@{\dimen2}{.4pt}}%
+ \hss}\box\scscb@x\hbox to.2pt{\hss\vbox to\dimen0{\@vrf@{\dimen2}{.4pt}}}\hss}}%
+%%
+% \end{macrocode}
+% \end{environment}
+%
+% |itembox| $B4D6-$J$I$G;H$&L?Na$N=`Hw$G$9!#(B
+% \begin{macrocode}
+%% itembox environment
+%% replace \box0 with \@iboxstr; thanks FTEXers (1998/11/27)
+\newdimen\@itemh\newtoks\@iboxpos\newbox\@iboxstr
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\@hleader{\leaders\hrule height .8pt\hfil}
+% \end{macrocode}
+%
+% \begin{environment}{itembox}
+% |itembox| $B4D6-$rDj5A$7$^$9!#(B
+% \begin{macrocode}
+\def\itembox{\@ifnextchar[{\@itembox}{\@itembox[c]}}
+\def\@itembox[#1]#2{%
+ \@saveybaselineshift\ybaselineshift\ybaselineshift\z@
+ \@savetbaselineshift\tbaselineshift\tbaselineshift\z@
+ \par\vspace{.3\baselineskip}%
+ \setbox\@iboxstr=\hbox{%
+ \ybaselineshift\@saveybaselineshift \tbaselineshift\@savetbaselineshift #2}%
+ \@itemh\ht\@iboxstr\advance\@itemh\dp\@iboxstr
+ \vspace{.5\@itemh}\bgroup\@scw\linewidth
+ \advance\@scw-20pt\@iboxpos={#1}%
+ \setbox\scb@x=\hbox to\@scw\bgroup\begin{minipage}{\@scw}%
+ \ybaselineshift\@saveybaselineshift
+ \tbaselineshift\@savetbaselineshift% (KN:1998/02/27)
+ \vspace*{.5\@itemh}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\enditembox{\end{minipage}\egroup%
+ \setbox\scscb@x=\hbox to\linewidth{\hfil\vbox{\offinterlineskip%
+ \thicklines\setlength{\unitlength}{1pt}%
+ \hbox to\@scw{\if l\the\@iboxpos\else\@hleader\fi
+ \space\vbox to.8pt{\vss\hbox{\box\@iboxstr}\vss}%
+ \space\if r\the\@iboxpos\else \@hleader\fi}\kern9.6pt
+ \@hobox{tl}{tr}{20}\kern-10pt\box\scb@x\@hobox{bl}{br}{20}%
+ \kern-.8pt\hrule height.8pt}\hfil}\dimen0=\ht\scscb@x%
+ \noindent\hbox to\linewidth{\hbox to.4pt{\vbox to\dimen0{\@vrf@{10.4pt}{.8pt}}%
+ \hss}\box\scscb@x\hbox to.4pt{\hss\vbox to\dimen0{\@vrf@{10.4pt}{.8pt}}}%
+ \hss}\egroup}
+%%
+% \end{macrocode}
+% \end{environment}
+%
+% \begin{macro}{\keytop}
+% \begin{macro}{\@keytop}
+% |\keytop| $BL?Na$G$9!#(B
+% \begin{macrocode}
+%% \keytop
+\def\keytop{\@ifnextchar[{\@keytop}{\@keytop[d]}}
+\def\@keytop[#1]#2{%
+ {\setbox0=\hbox{\shortstack{#2}}\ybaselineshift\z@\tbaselineshift\z@%
+ \dimen0=\wd0\advance\dimen0 5pt\dimen1=\dp0\advance\dimen1 2.5pt%
+ \setbox\scscb@x=\hbox to\dimen0{%
+ \iftdir\tate\else\yoko\fi
+ \@scw\wd0\hfil\vtop{\offinterlineskip
+ \thinlines\setlength{\unitlength}{1pt}\hrule\kern2.3pt\@hobox{tl}{tr}5%
+ \kern-2.4pt\box0\@hobox{bl}{br}5\kern-.4pt\hrule}\hfil}%
+ \dimen0=\dp\scscb@x\advance\dimen0 -.4pt
+ \setbox0=\vbox{\hbox{\hbox to.2pt{\vtop to\dimen0{\@vrf@{2.3pt}{.4pt}}\hss}%
+ \box\scscb@x\hbox to.2pt{\hss\vtop to\dimen0{\@vrf@{2.3pt}{.4pt}}}}}%
+ \if #1c\mbox{}$\vcenter{\box0}$\mbox{}\else
+ \if #1t\else\if #1b\boxmaxdepth=0pt\else
+ \boxmaxdepth=\dimen1\fi\fi \mbox{}\vbox{\box0}\fi}}
+%%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+%
+% \begin{macro}{\yen}
+% \changes{1996/03/13}{v1.1}{Append \cs{leavevmode} in
+% \cs{yen}, \cs{return}, \cs{Return} command.}
+% $B1_5-9f$G$9!#(B
+% \begin{macrocode}
+%% \yen
+\def\yen{\leavevmode\hbox{\iftdir\yoko\fi
+ \setbox0=\hbox{Y}Y\kern-.97\wd0\vbox{\hrule height.1ex width.98\wd0
+ \kern.33ex\hrule height.1ex width.98\wd0\kern.45ex}}}
+% \end{macrocode}
+%%
+% \end{macro}
+%
+% \begin{macro}{\return}
+% \begin{macro}{\Return}
+% $B2~9T5-9f$G$9!#(B
+% \begin{macrocode}
+%% return-key
+\def\return{\leavevmode\hbox{\iftdir\yoko\fi\@ascgrp\char"20}}
+\def\Return{\leavevmode\hbox{\iftdir\yoko\fi\@ascgrp @}}
+%%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% |\mask| $BL?Na$N=`Hw$G$9!#(B
+% \begin{macrocode}
+%% \mask
+\newbox\@bwsp \newbox\@@bwsp\newcount\@bcal
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\setdim@#1#2{\@bcal=#2\divide#1\@bcal\multiply#1\@bcal\advance#1 1.001#2}
+% \end{macrocode}
+%
+% \begin{macro}{\mask}
+% |\mask| $BL?Na$rDj5A$7$^$9!#(B
+% \begin{macrocode}
+\def\mask#1#2{{\setbox\@bwsp=\hbox{#1}%
+ \setbox0=\hbox{\ybaselineshift\z@\tbaselineshift\z@ \@ascgrp#2}%
+ \dimen0=\wd\@bwsp\dimen1=\ht\@bwsp\advance\dimen1\dp\@bwsp\dimen2=-\dimen1
+ \setdim@{\dimen0}{\wd0}\setdim@{\dimen1}{\ht0}%
+ \setbox\@@bwsp=\hbox to\dimen0{\leaders
+ \vtop to\dimen1{\leaders\box0\vfil}\hfil}%
+ \advance\dimen2\dp\@@bwsp\divide\dimen2 2
+ \advance\dimen2\dp\@bwsp\boxmaxdepth=\dimen2
+ \setbox\@@bwsp=\vbox{\box\@@bwsp}%
+ \mbox{}\hbox to\wd\@@bwsp{\hbox to0pt{\box\@@bwsp\hss}\hss\unhbox\@bwsp\hss}}}
+%%
+% \end{macrocode}
+% \end{macro}
+%
+% |\maskbox| $BL?Na$N=`Hw$G$9!#(B
+% \begin{macrocode}
+%% \Maskbox{width}{height}{mask_char}{pos}{rule_wid}{body}
+%% \maskbox{width}{height}{mask_char}{pos}{body}
+\def\@setdim#1#2{\@bcal=#2\divide#1\@bcal\multiply#1\@bcal\advance#1 .001#2}
+% \end{macrocode}
+%
+% \begin{macro}{\Maskbox}
+% \begin{macro}{\maskbox}
+% |\maskbox| $BL?Na$H(B |\Maskbox| $BL?Na$rDj5A$7$^$9!#(B
+% \begin{macrocode}
+\def\Maskbox#1#2#3#4#5#6{{%
+ \setbox0=\hbox{\ybaselineshift\z@\tbaselineshift\z@ \@ascgrp#3}%
+ \dimen0=#1\@setdim{\dimen0}{\wd0}\dimen1=#2\@setdim{\dimen1}{\ht0}%
+ \ifx#4c\skip0=0pt plus1fil\skip1=\skip0\fi
+ \ifx#4r\skip0=0pt plus1fil\skip1=0pt\fi
+ \ifx#4l\skip1=0pt plus1fil\skip0=0pt\fi
+ \leavevmode
+ \hbox{\hbox to0pt{\hbox to\dimen0{\leaders\vbox to\dimen1{\leaders
+ \box0\vfil}\hfil}\hss}%
+ \vrule width#5\vbox to\dimen1{\hrule height#5\vfil
+ \dimen3=#5\advance\dimen0-2\dimen3\advance\dimen0 .15pt
+ \hbox to\dimen0{\hskip\skip0\relax#6\hskip\skip1}%
+ \vfil\hrule height#5}\vrule width#5}}}
+\def\maskbox#1#2#3#4#5{\Maskbox{#1}{#2}{#3}{#4}{0pt}{#5}}
+%%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% |shadebox| $B4D6-$G;H$&L?Na$N=`Hw$G$9!#(B
+% \begin{macrocode}
+%% shadebox environment
+\newdimen\shaderule\shaderule 5pt
+% \end{macrocode}
+%
+% \begin{environment}{shadebox}
+% |shadebox| $B4D6-$rDj5A$7$^$9!#(B
+% \begin{macrocode}
+\def\shadebox{\par\vspace{.3\baselineskip}%
+ \@saveybaselineshift\ybaselineshift\ybaselineshift\z@
+ \@savetbaselineshift\tbaselineshift\tbaselineshift\z@
+ \dimen0\linewidth \advance\dimen0-20pt
+ \advance\dimen0-2\fboxrule \advance\dimen0-\shaderule
+ \setbox\@tempboxa=\hbox\bgroup\minipage{\dimen0}%
+ \ybaselineshift\@saveybaselineshift \tbaselineshift\@savetbaselineshift}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\endshadebox{\endminipage\egroup\dimen0=10pt
+ \setbox\@tempboxa=\hbox{\kern\dimen0\unhbox\@tempboxa\kern\dimen0}%
+ \setbox0=\vbox{\hrule \@height \fboxrule
+ \hbox{\vrule \@width \fboxrule
+ \vbox{\vskip\fboxsep \box\@tempboxa\vskip\fboxsep}%
+ \vrule \@width \fboxrule}\hrule \@height \fboxrule}%
+ \dimen0=\ht0 \advance\dimen0-\shaderule
+ \hbox{\hbox to \shaderule{\copy0\hss}\kern 0pt
+ \vrule width\wd0 height0pt depth\shaderule\hskip-\shaderule
+ \vrule width\shaderule height\dimen0}}
+%%
+%</tascmac>
+% \end{macrocode}
+% \end{environment}
+%
+% \Finale
+%
+\endinput