summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/tap
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-09-22 23:14:09 +0000
committerKarl Berry <karl@freefriends.org>2013-09-22 23:14:09 +0000
commit5010482fdc18cbbc983853b6161acba5dd0a010b (patch)
tree0736a0d5f6a4d003d0502e93a7a627a10b96609c /Master/texmf-dist/doc/generic/tap
parent1bee58c35e492959f2b99b422d9660a50b3c6df9 (diff)
tap (long delayed sync from ctan)
git-svn-id: svn://tug.org/texlive/trunk@31731 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic/tap')
-rw-r--r--Master/texmf-dist/doc/generic/tap/0tapdoc.inf (renamed from Master/texmf-dist/doc/generic/tap/0tabdoc.inf)6
-rw-r--r--Master/texmf-dist/doc/generic/tap/circ.eps110
-rw-r--r--Master/texmf-dist/doc/generic/tap/circmag.eps160
-rw-r--r--Master/texmf-dist/doc/generic/tap/epsfx.tex412
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapanch.10026
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/0sampdos.inf5
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/post1.tex3
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/post2.tex4
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea1.tex5
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea2.tex7
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea3.tex6
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv0.raw5
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv1.raw9
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv2.raw11
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv3.raw15
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv4.raw8
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv5.raw15
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv6.raw36
-rwxr-xr-xMaster/texmf-dist/doc/generic/tap/tapcv/sampdos/tcv.bat16
-rwxr-xr-xMaster/texmf-dist/doc/generic/tap/tapcv/sampdos/tcv_.bat4
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapcv/tapcv.awk239
-rw-r--r--Master/texmf-dist/doc/generic/tap/tapdoc.tex8
22 files changed, 955 insertions, 155 deletions
diff --git a/Master/texmf-dist/doc/generic/tap/0tabdoc.inf b/Master/texmf-dist/doc/generic/tap/0tapdoc.inf
index 0b6835a48db..9f3f132c42f 100644
--- a/Master/texmf-dist/doc/generic/tap/0tabdoc.inf
+++ b/Master/texmf-dist/doc/generic/tap/0tapdoc.inf
@@ -1,3 +1,3 @@
- All files in this directory belong to the TAP package
- (EPSFX.TEX is partly based on epsf from T. Rokicki's DVIPS distribution)
-
+ All files in this directory belong to the TAP package
+ (EPSFX.TEX is partly based on epsf from T. Rokicki's DVIPS distribution)
+
diff --git a/Master/texmf-dist/doc/generic/tap/circ.eps b/Master/texmf-dist/doc/generic/tap/circ.eps
index acf5cb148f2..951704ebc36 100644
--- a/Master/texmf-dist/doc/generic/tap/circ.eps
+++ b/Master/texmf-dist/doc/generic/tap/circ.eps
@@ -1,55 +1,55 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Creator: GhostScript rev. 351
-%%BoundingBox: 0 0 11.28 11.28
-%%EndComments
-%%BeginProlog
-/GSexport 100 dict def GSexport begin
-/h {closepath} def
-/m {moveto} def
-/c {curveto} def
-/l {lineto} def
-/k {setcmykcolor} def
-/K {setcmykcolor} def
-/*u {/oper_kind -1 def} def
-/*U {*U*f *U*d *U*c} def
-/f {/oper_kind 0 def} def
-/*U*f {0 oper_kind eq {eofill} if} def
-/s {closepath /oper_kind 1 def} def
-/S {/oper_kind 1 def} def
-/*U*d {1 oper_kind eq {stroke} if} def
-/W {} def
-/n {/oper_kind 2 def} def
-/*U*c {2 oper_kind eq {eoclip newpath} if} def
-/w {setlinewidth} def
-/j {setlinejoin} def
-/J {setlinecap} def
-/M {setmiterlimit} def
-/d {setdash} def
-/setcmykcolor where {pop}
- {/setcmykcolor {1 sub /mf exch def
- 3 {mf add neg dup 0 lt {pop 0} if 3 1 roll} repeat
- setrgbcolor} def} ifelse
-/q {gsave} def
-/Q {grestore} def
-%%EndProlog
-%%BeginSetup
-%%EndSetup
-q
-*u
-0.40 w 0 j 0 J 10.0 M
-0 0 0 1.0 K
-11.28 5.64 m
-11.28 7.14 10.69 8.57 9.63 9.63 c
-8.57 10.69 7.14 11.28 5.64 11.28 c
-4.14 11.28 2.71 10.69 1.65 9.63 c
-0.59 8.57 0 7.14 0 5.64 c
-0 4.14 0.59 2.71 1.65 1.65 c
-2.71 0.59 4.14 0 5.64 0 c
-7.14 0 8.57 0.59 9.63 1.65 c
-10.69 2.71 11.28 4.14 11.28 5.64 c
-s
-*U
-Q
-%%Trailer
-end
-showpage
+%!PS-Adobe-2.0 EPSF-2.0
+%%Creator: GhostScript rev. 351
+%%BoundingBox: 0 0 11.28 11.28
+%%EndComments
+%%BeginProlog
+/GSexport 100 dict def GSexport begin
+/h {closepath} def
+/m {moveto} def
+/c {curveto} def
+/l {lineto} def
+/k {setcmykcolor} def
+/K {setcmykcolor} def
+/*u {/oper_kind -1 def} def
+/*U {*U*f *U*d *U*c} def
+/f {/oper_kind 0 def} def
+/*U*f {0 oper_kind eq {eofill} if} def
+/s {closepath /oper_kind 1 def} def
+/S {/oper_kind 1 def} def
+/*U*d {1 oper_kind eq {stroke} if} def
+/W {} def
+/n {/oper_kind 2 def} def
+/*U*c {2 oper_kind eq {eoclip newpath} if} def
+/w {setlinewidth} def
+/j {setlinejoin} def
+/J {setlinecap} def
+/M {setmiterlimit} def
+/d {setdash} def
+/setcmykcolor where {pop}
+ {/setcmykcolor {1 sub /mf exch def
+ 3 {mf add neg dup 0 lt {pop 0} if 3 1 roll} repeat
+ setrgbcolor} def} ifelse
+/q {gsave} def
+/Q {grestore} def
+%%EndProlog
+%%BeginSetup
+%%EndSetup
+q
+*u
+0.40 w 0 j 0 J 10.0 M
+0 0 0 1.0 K
+11.28 5.64 m
+11.28 7.14 10.69 8.57 9.63 9.63 c
+8.57 10.69 7.14 11.28 5.64 11.28 c
+4.14 11.28 2.71 10.69 1.65 9.63 c
+0.59 8.57 0 7.14 0 5.64 c
+0 4.14 0.59 2.71 1.65 1.65 c
+2.71 0.59 4.14 0 5.64 0 c
+7.14 0 8.57 0.59 9.63 1.65 c
+10.69 2.71 11.28 4.14 11.28 5.64 c
+s
+*U
+Q
+%%Trailer
+end
+showpage
diff --git a/Master/texmf-dist/doc/generic/tap/circmag.eps b/Master/texmf-dist/doc/generic/tap/circmag.eps
index 93391e8373c..c21709e4247 100644
--- a/Master/texmf-dist/doc/generic/tap/circmag.eps
+++ b/Master/texmf-dist/doc/generic/tap/circmag.eps
@@ -1,80 +1,80 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Creator: GhostScript rev. 351
-%%BoundingBox: -0.43 -0.14 55.73 56.02
-%%EndComments
-%%BeginProlog
-/GSexport 100 dict def GSexport begin
-/h {closepath} def
-/m {moveto} def
-/c {curveto} def
-/l {lineto} def
-/k {setcmykcolor} def
-/K {setcmykcolor} def
-/*u {/oper_kind -1 def} def
-/*U {*U*f *U*d *U*c} def
-/f {/oper_kind 0 def} def
-/*U*f {0 oper_kind eq {eofill} if} def
-/s {closepath /oper_kind 1 def} def
-/S {/oper_kind 1 def} def
-/*U*d {1 oper_kind eq {stroke} if} def
-/W {} def
-/n {/oper_kind 2 def} def
-/*U*c {2 oper_kind eq {eoclip newpath} if} def
-/w {setlinewidth} def
-/j {setlinejoin} def
-/J {setlinecap} def
-/M {setmiterlimit} def
-/d {setdash} def
-/setcmykcolor where {pop}
- {/setcmykcolor {1 sub /mf exch def
- 3 {mf add neg dup 0 lt {pop 0} if 3 1 roll} repeat
- setrgbcolor} def} ifelse
-/q {gsave} def
-/Q {grestore} def
-%%EndProlog
-%%BeginSetup
-%%EndSetup
-*u
-0 0 0 1.0 k
-26.93 33.34 m
-29.09 33.34 l
-29.09 56.02 l
-26.93 56.02 l
-26.93 33.34 l
-f
-*U
-*u
-0 0 0 1.0 k
--0.43 27.22 m
-55.73 27.22 l
-55.73 29.38 l
--0.43 29.38 l
--0.43 27.22 l
-f
-*U
-*u
-0.36 w 0 j 0 J 4.13 M
-0 0 0 1.0 K
-55.73 27.94 m
-55.73 35.5 52.49 42.7 47.45 47.74 c
-42.05 53.14 34.85 56.02 27.65 56.02 c
-20.09 56.02 12.89 53.14 7.85 47.74 c
-2.45 42.7 -0.43 35.5 -0.43 27.94 c
--0.43 20.74 2.45 13.54 7.85 8.14 c
-12.89 3.10 20.09 -0.14 27.65 -0.14 c
-34.85 -0.14 42.05 3.10 47.45 8.14 c
-52.49 13.54 55.73 20.74 55.73 27.94 c
-s
-*U
-*u
-0 0 0 1.0 k
-26.93 -0.14 m
-29.09 -0.14 l
-29.09 27.22 l
-26.93 27.22 l
-26.93 -0.14 l
-f
-*U
-%%Trailer
-end
-showpage
+%!PS-Adobe-2.0 EPSF-2.0
+%%Creator: GhostScript rev. 351
+%%BoundingBox: -0.43 -0.14 55.73 56.02
+%%EndComments
+%%BeginProlog
+/GSexport 100 dict def GSexport begin
+/h {closepath} def
+/m {moveto} def
+/c {curveto} def
+/l {lineto} def
+/k {setcmykcolor} def
+/K {setcmykcolor} def
+/*u {/oper_kind -1 def} def
+/*U {*U*f *U*d *U*c} def
+/f {/oper_kind 0 def} def
+/*U*f {0 oper_kind eq {eofill} if} def
+/s {closepath /oper_kind 1 def} def
+/S {/oper_kind 1 def} def
+/*U*d {1 oper_kind eq {stroke} if} def
+/W {} def
+/n {/oper_kind 2 def} def
+/*U*c {2 oper_kind eq {eoclip newpath} if} def
+/w {setlinewidth} def
+/j {setlinejoin} def
+/J {setlinecap} def
+/M {setmiterlimit} def
+/d {setdash} def
+/setcmykcolor where {pop}
+ {/setcmykcolor {1 sub /mf exch def
+ 3 {mf add neg dup 0 lt {pop 0} if 3 1 roll} repeat
+ setrgbcolor} def} ifelse
+/q {gsave} def
+/Q {grestore} def
+%%EndProlog
+%%BeginSetup
+%%EndSetup
+*u
+0 0 0 1.0 k
+26.93 33.34 m
+29.09 33.34 l
+29.09 56.02 l
+26.93 56.02 l
+26.93 33.34 l
+f
+*U
+*u
+0 0 0 1.0 k
+-0.43 27.22 m
+55.73 27.22 l
+55.73 29.38 l
+-0.43 29.38 l
+-0.43 27.22 l
+f
+*U
+*u
+0.36 w 0 j 0 J 4.13 M
+0 0 0 1.0 K
+55.73 27.94 m
+55.73 35.5 52.49 42.7 47.45 47.74 c
+42.05 53.14 34.85 56.02 27.65 56.02 c
+20.09 56.02 12.89 53.14 7.85 47.74 c
+2.45 42.7 -0.43 35.5 -0.43 27.94 c
+-0.43 20.74 2.45 13.54 7.85 8.14 c
+12.89 3.10 20.09 -0.14 27.65 -0.14 c
+34.85 -0.14 42.05 3.10 47.45 8.14 c
+52.49 13.54 55.73 20.74 55.73 27.94 c
+s
+*U
+*u
+0 0 0 1.0 k
+26.93 -0.14 m
+29.09 -0.14 l
+29.09 27.22 l
+26.93 27.22 l
+26.93 -0.14 l
+f
+*U
+%%Trailer
+end
+showpage
diff --git a/Master/texmf-dist/doc/generic/tap/epsfx.tex b/Master/texmf-dist/doc/generic/tap/epsfx.tex
new file mode 100644
index 00000000000..88d8e4cd948
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/epsfx.tex
@@ -0,0 +1,412 @@
+%--------------------------------------------------------------------------
+% This is small extension of T. Rokicki's EPSF.TEX (from DVIPS 5.58):
+% -- allows safe including of EPS files generated by DVIPS
+% -- can also display bounding boxes.
+%--------------------------------------------------------------------------
+% AUTHORS: Bogus\l{}aw Jackowski and Piotr Pianowski
+% BOP s.c.
+% ul. Piastowska 70, 80-363 Gda\'nsk, Poland
+% email: B.Jackowski@GUST.org.pl
+% USAGE:
+% \eps{file.eps} % instead of \epsffile{file.eps}
+% The following settings of the parameter \tracingeps are recognized:
+% \tracingeps=0 % default, no extra information displayed
+% \tracingeps=1 % displays bounding boxes and file names
+% \tracingeps>1 % displays graphics, bounding boxes and file names
+% HISTORY:
+% ver. 0.5 19 VIII 1994
+% ver. 0.51 25 VIII 1994
+% * \epsnamecolor added
+% ver. 0.52 31 VIII 1994
+% * \eps renamed to \epsraw
+% * \tps renamed to \eps
+% ver. 0.53 9 I 1995
+% * `\isls false N' added to \eps
+% * virtually active slash neutralized
+% ver. 0.54 9 III 1995
+% * \eps clears bop-hook
+% ver. 0.55 27 III 1995
+% * a patch neutralizing unnecessary rounding added
+% ver. 0.56 3 X 1995
+% * \special commands surrounding EPS box are to be nested in the \vbox
+% ver. 0.57 31 VIII 1996
+% * odd characters in names enabled
+% ver. 0.58 21 III 1997
+% * setpageparams and setpage neutralized
+% ver. 0.585 25 III 1997
+% * comments touched
+% ver. 0.59 7 VI 1998
+% * EPSF.TEX included
+% ver. 0.60 10 I 1999
+% * safe multiplication of eps dimensions by 10 (expected to be
+% included in the newest version of Rokicki's package)
+% ver. 0.61 29 III 2000
+% * \eps expands to \hbox
+% ver. 0.62 13 (Friday) VII 2001
+% * setpagedevice neutralized (why only now?) along with a bundle of
+% commands specifying paper size (a0, a1, ... , b0, b1, ... , etc.)
+%--------------------------------------------------------------------------
+\edef\slashcatcode{\the\catcode`\/}
+\catcode`\/12
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%% \input epsf -- inserted below %%%%%%%%%%%%%%%%%
+% EPSF.TEX macro file:
+% Written by Tomas Rokicki of Radical Eye Software, 29 Mar 1989.
+% Revised by Don Knuth, 3 Jan 1990.
+% Revised by Tomas Rokicki to accept bounding boxes with no
+% space after the colon, 18 Jul 1990.
+%
+% TeX macros to include an Encapsulated PostScript graphic.
+% Works by finding the bounding box comment,
+% calculating the correct scale values, and inserting a vbox
+% of the appropriate size at the current position in the TeX document.
+%
+% To use with the center environment of LaTeX, preface the \epsffile
+% call with a \leavevmode. (LaTeX should probably supply this itself
+% for the center environment.)
+%
+% To use, simply say
+% \input epsf % somewhere early on in your TeX file
+% \epsfbox{filename.ps} % where you want to insert a vbox for a figure
+%
+% Alternatively, you can type
+%
+% \epsfbox[0 0 30 50]{filename.ps} % to supply your own BB
+%
+% which will not read in the file, and will instead use the bounding
+% box you specify.
+%
+% The effect will be to typeset the figure as a TeX box, at the
+% point of your \epsfbox command. By default, the graphic will have its
+% `natural' width (namely the width of its bounding box, as described
+% in filename.ps). The TeX box will have depth zero.
+%
+% You can enlarge or reduce the figure by saying
+% \epsfxsize=<dimen> \epsfbox{filename.ps}
+% (or
+% \epsfysize=<dimen> \epsfbox{filename.ps})
+% instead. Then the width of the TeX box will be \epsfxsize and its
+% height will be scaled proportionately (or the height will be
+% \epsfysize and its width will be scaled proportiontally). The
+% width (and height) is restored to zero after each use.
+%
+% A more general facility for sizing is available by defining the
+% \epsfsize macro. Normally you can redefine this macro
+% to do almost anything. The first parameter is the natural x size of
+% the PostScript graphic, the second parameter is the natural y size
+% of the PostScript graphic. It must return the xsize to use, or 0 if
+% natural scaling is to be used. Common uses include:
+%
+% \epsfxsize % just leave the old value alone
+% 0pt % use the natural sizes
+% #1 % use the natural sizes
+% \hsize % scale to full width
+% 0.5#1 % scale to 50% of natural size
+% \ifnum#1>\hsize\hsize\else#1\fi % smaller of natural, hsize
+%
+% If you want TeX to report the size of the figure (as a message
+% on your terminal when it processes each figure), say `\epsfverbosetrue'.
+%
+\newread\epsffilein % file to \read
+\newif\ifepsffileok % continue looking for the bounding box?
+\newif\ifepsfbbfound % success?
+\newif\ifepsfverbose % report what you're making?
+\newif\ifepsfdraft % use draft mode?
+\newdimen\epsfxsize % horizontal size after scaling
+\newdimen\epsfysize % vertical size after scaling
+\newdimen\epsftsize % horizontal size before scaling
+\newdimen\epsfrsize % vertical size before scaling
+\newdimen\epsftmp % register for arithmetic manipulation
+\newdimen\pspoints % conversion factor
+%
+\pspoints=1bp % Adobe points are `big'
+\epsfxsize=0pt % Default value, means `use natural size'
+\epsfysize=0pt % ditto
+%
+\def\epsfbox#1{\global\def\epsfllx{72}\global\def\epsflly{72}%
+ \global\def\epsfurx{540}\global\def\epsfury{720}%
+ \def\lbracket{[}\def\testit{#1}\ifx\testit\lbracket
+ \let\next=\epsfgetlitbb\else\let\next=\epsfnormal\fi\next{#1}}%
+%
+\def\epsfgetlitbb#1#2 #3 #4 #5]#6{\epsfgrab #2 #3 #4 #5 .\\%
+ \epsfsetgraph{#6}}%
+%
+\def\epsfnormal#1{\epsfgetbb{#1}\epsfsetgraph{#1}}%
+%
+\def\epsfgetbb#1{%
+%
+% The first thing we need to do is to open the
+% PostScript file, if possible.
+%
+\openin\epsffilein=#1
+\ifeof\epsffilein\errmessage{I couldn't open #1, will ignore it}\else
+%
+% Okay, we got it. Now we'll scan lines until we find one that doesn't
+% start with %. We're looking for the bounding box comment.
+%
+ {\epsffileoktrue \chardef\other=12
+ \def\do##1{\catcode`##1=\other}\dospecials \catcode`\ =10
+ \loop
+ \read\epsffilein to \epsffileline
+ \ifeof\epsffilein\epsffileokfalse\else
+%
+% We check to see if the first character is a % sign;
+% if not, we stop reading (unless the line was entirely blank);
+% if so, we look further and stop only if the line begins with
+% `%%BoundingBox:'.
+%
+ \expandafter\epsfaux\epsffileline:. \\%
+ \fi
+ \ifepsffileok\repeat
+ \ifepsfbbfound\else
+ \ifepsfverbose\message{No bounding box comment in #1; using defaults}\fi\fi
+ }\closein\epsffilein\fi}%
+%
+% Now we have to calculate the scale and offset values to use.
+% First we compute the natural sizes.
+%
+\def\epsfclipon{\def\epsfclipstring{ clip}}%
+\def\epsfclipoff{\def\epsfclipstring{\ifepsfdraft\space clip\fi}}%
+\epsfclipoff
+%
+\def\epsfsetgraph#1{%
+ \epsfrsize=\epsfury\pspoints
+ \advance\epsfrsize by-\epsflly\pspoints
+ \epsftsize=\epsfurx\pspoints
+ \advance\epsftsize by-\epsfllx\pspoints
+%
+% If `epsfxsize' is 0, we default to the natural size of the picture.
+% Otherwise we scale the graph to be \epsfxsize wide.
+%
+ \epsfxsize\epsfsize\epsftsize\epsfrsize
+ \ifnum\epsfxsize=0 \ifnum\epsfysize=0
+ \epsfxsize=\epsftsize \epsfysize=\epsfrsize
+ \epsfrsize=0pt
+%
+% We have a sticky problem here: TeX doesn't do floating point arithmetic!
+% Our goal is to compute y = rx/t. The following loop does this reasonably
+% fast, with an error of at most about 16 sp (about 1/4000 pt).
+%
+ \else\epsftmp=\epsftsize \divide\epsftmp\epsfrsize
+ \epsfxsize=\epsfysize \multiply\epsfxsize\epsftmp
+ \multiply\epsftmp\epsfrsize \advance\epsftsize-\epsftmp
+ \epsftmp=\epsfysize
+ \loop \advance\epsftsize\epsftsize \divide\epsftmp 2
+ \ifnum\epsftmp>0
+ \ifnum\epsftsize<\epsfrsize\else
+ \advance\epsftsize-\epsfrsize \advance\epsfxsize\epsftmp \fi
+ \repeat
+ \epsfrsize=0pt
+ \fi
+ \else \ifnum\epsfysize=0
+ \epsftmp=\epsfrsize \divide\epsftmp\epsftsize
+ \epsfysize=\epsfxsize \multiply\epsfysize\epsftmp
+ \multiply\epsftmp\epsftsize \advance\epsfrsize-\epsftmp
+ \epsftmp=\epsfxsize
+ \loop \advance\epsfrsize\epsfrsize \divide\epsftmp 2
+ \ifnum\epsftmp>0
+ \ifnum\epsfrsize<\epsftsize\else
+ \advance\epsfrsize-\epsftsize \advance\epsfysize\epsftmp \fi
+ \repeat
+ \epsfrsize=0pt
+ \else
+ \epsfrsize=\epsfysize
+ \fi
+ \fi
+%
+% Finally, we make the vbox and stick in a \special that dvips can parse.
+%
+ \ifepsfverbose\message{#1: width=\the\epsfxsize, height=\the\epsfysize}\fi
+ \epsftmp=10\epsfxsize \divide\epsftmp\pspoints
+ \vbox to\epsfysize{\vfil\hbox to\epsfxsize{%
+ \ifnum\epsfrsize=0\relax
+ \special{PSfile=\ifepsfdraft psdraft.ps\else#1\fi\space
+ llx=\epsfllx\space lly=\epsflly\space
+ urx=\epsfurx\space ury=\epsfury\space rwi=\number\epsftmp
+ \epsfclipstring}%
+ \else
+ \epsfrsize=10\epsfysize \divide\epsfrsize\pspoints
+ \special{PSfile=\ifepsfdraft psdraft.ps\else#1\fi\space
+ llx=\epsfllx\space lly=\epsflly\space
+ urx=\epsfurx\space ury=\epsfury\space rwi=\number\epsftmp\space
+ rhi=\number\epsfrsize \epsfclipstring}%
+ \fi
+ \hfil}}%
+\global\epsfxsize=0pt\global\epsfysize=0pt}%
+%
+% We still need to define the tricky \epsfaux macro. This requires
+% a couple of magic constants for comparison purposes.
+%
+{\catcode`\%=12 \global\let\epsfpercent=%\global\def\epsfbblit{%BoundingBox}}%
+%
+% So we're ready to check for `%BoundingBox:' and to grab the
+% values if they are found.
+%
+\long\def\epsfaux#1#2:#3\\{\ifx#1\epsfpercent
+ \def\testit{#2}\ifx\testit\epsfbblit
+ \epsfgrab #3 . . . \\%
+ \epsffileokfalse
+ \global\epsfbbfoundtrue
+ \fi\else\ifx#1\par\else\epsffileokfalse\fi\fi}%
+%
+% Here we grab the values and stuff them in the appropriate definitions.
+%
+\def\epsfempty{}%
+\def\epsfgrab #1 #2 #3 #4 #5\\{%
+\global\def\epsfllx{#1}\ifx\epsfllx\epsfempty
+ \epsfgrab #2 #3 #4 #5 .\\\else
+ \global\def\epsflly{#2}%
+ \global\def\epsfurx{#3}\global\def\epsfury{#4}\fi}%
+%
+% We default the epsfsize macro.
+%
+\def\epsfsize#1#2{\epsfxsize}
+%
+% Finally, another definition for compatibility with older macros.
+%
+\let\epsffile=\epsfbox
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% End of EPSF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ---
+\newcount\tracingeps \tracingeps0
+% ---
+\newbox\tmpepsbox
+% ---
+\ifx\epsdirundefined\epsdir\def\epsdir{}\fi
+\def\epsnamecolor{1 0 0}
+% ---
+% BOTH \eps and \epsraw ``normalize'' the eps name, as one may wish
+% to use \epsraw separately
+% ---
+\def\epsraw{\begingroup\escapechar-1\catcode`\%12\def~{\string~}\epsrawcont}
+\def\epsrawcont#1{%
+ \xdef\theepsname{\expandafter\string\csname#1\endcsname}\endgroup
+ \ifnum\tracingeps=0 \hbox{\epsffile{\epsdir\theepsname}}\fi
+ \ifnum\tracingeps>0
+ \hbox{\setbox\tmpepsbox\hbox{\epsffile{\epsdir\theepsname}}%
+ \ifnum\tracingeps>1 \rlap{\copy\tmpepsbox}\fi
+ \vbox{\offinterlineskip
+ \hrule\vskip-.4pt
+ \hbox to\wd\tmpepsbox{\vrule\hss\vbox to\ht\tmpepsbox{
+ \vss\hbox{\tt \special{ps:gsave \epsnamecolor\space setrgbcolor}%
+ \theepsname\special{ps:grestore}}\vss}\hss\vrule}
+ \vskip-.4pt\hrule
+ }}\fi}
+% ---
+\def\eps{\hbox\bgroup
+ \begingroup \escapechar-1 \catcode`\%12 \def~{\string~}\epscont}
+\def\epscont#1{%
+ \xdef\theepsname{\expandafter\string\csname#1\endcsname}\endgroup
+ \vbox{\special{ps: /SItps save N /isls false N
+ statusdict begin
+ /setpageparams {pop pop pop pop} def /setpage {pop pop pop} def
+ end
+ userdict begin
+ /bop-hook {} def /setpagedevice {pop} def
+ /a0 {} def /a1 {} def /a2 {} def /a3 {} def /a4 {} def /a5 {} def
+ /a6 {} def /a7 {} def /a8 {} def /a9 {} def /a10 {} def
+ /b0 {} def /b1 {} def /b2 {} def /b3 {} def /b4 {} def /b5 {} def
+ /letter {} def /note {} def /legal {} def
+ /halfletter {} def /11x17 {} def /ledger {} def
+ /flsa {} def /flse {} def
+ end }%
+ \epsraw\theepsname\special{ps: SItps restore }}\egroup}
+% ---
+% Redefinition of epsf macros:
+%
+% The values of `rwi' and `rhi' parameters are to be given in tenths
+% of big point; the older version of the epsf package used to multiply
+% a dimen register by 10, which put severe limitations on the
+% available EPS size.
+%
+% The macro `\decimalshift' multiplies a given value by 10 ``syntactically,''
+% i.e., accomplishes ``decimal shifting''; the following conditions
+% are assumed to hold:
+% * leading zeros are meaningless;
+% * <digit>+<period><dimen unit> is a proper form of a dimen value;
+% * the command `\the' applied to a dimen register yields a canonical form:
+% [<minus>]<digit>+[<period><digit>+]<pt unit>
+% where <pt unit> are `p' and `t' characters having category code 12.
+%
+\def\decimalshift#1{% #1 -- a dimen register
+ \expandafter\expandafter\expandafter
+ \decimalsplit\expandafter\gobblePT\the#1.\relax
+}%
+\def\decimalsplit#1.#2\relax{%
+ \ifnum#1=0 \ifdim#11sp=-1sp -\fi \else #1\fi
+ \ifdim0#2sp=0sp 0\else \fractionshift#2\fi
+}%
+\def\fractionshift#1#2.{\ifnum0#2=0 #1\else #1.#2\fi}%
+{\catcode`\p12 \catcode`\t12 \gdef\gobblePT#1pt{#1}}%
+\def\pttobp{0.99626401}% = 72/72.27
+% ---
+\def\epsfsetgraph#1{%
+ \epsfrsize=\epsfury\pspoints
+ \advance\epsfrsize by-\epsflly\pspoints
+ \epsftsize=\epsfurx\pspoints
+ \advance\epsftsize by-\epsfllx\pspoints
+%
+% If `epsfxsize' is 0, we default to the natural size of the picture.
+% Otherwise we scale the graph to be \epsfxsize wide.
+%
+ \epsfxsize\epsfsize\epsftsize\epsfrsize
+ \ifnum\epsfxsize=0 \ifnum\epsfysize=0
+ \epsfxsize=\epsftsize \epsfysize=\epsfrsize
+ \epsfrsize=0pt
+%
+% We have a sticky problem here: TeX doesn't do floating point arithmetic!
+% Our goal is to compute y = rx/t. The following loop does this reasonably
+% fast, with an error of at most about 16 sp (about 1/4000 pt).
+%
+ \else\epsftmp=\epsftsize \divide\epsftmp\epsfrsize
+ \epsfxsize=\epsfysize \multiply\epsfxsize\epsftmp
+ \multiply\epsftmp\epsfrsize \advance\epsftsize-\epsftmp
+ \epsftmp=\epsfysize
+ \loop \advance\epsftsize\epsftsize \divide\epsftmp 2
+ \ifnum\epsftmp>0
+ \ifnum\epsftsize<\epsfrsize\else
+ \advance\epsftsize-\epsfrsize \advance\epsfxsize\epsftmp \fi
+ \repeat
+ \epsfrsize=0pt
+ \fi
+ \else \ifnum\epsfysize=0
+ \epsftmp=\epsfrsize \divide\epsftmp\epsftsize
+ \epsfysize=\epsfxsize \multiply\epsfysize\epsftmp
+ \multiply\epsftmp\epsftsize \advance\epsfrsize-\epsftmp
+ \epsftmp=\epsfxsize
+ \loop \advance\epsfrsize\epsfrsize \divide\epsftmp 2
+ \ifnum\epsftmp>0
+ \ifnum\epsfrsize<\epsftsize\else
+ \advance\epsfrsize-\epsftsize \advance\epsfysize\epsftmp \fi
+ \repeat
+ \epsfrsize=0pt
+ \else
+ \epsfrsize=\epsfysize
+ \fi
+ \fi
+%
+% Finally, we make the vbox and stick in a \special that dvips can parse.
+%
+ \ifepsfverbose\message{#1: width=\the\epsfxsize, height=\the\epsfysize}\fi
+ \epsftmp=\pttobp\epsfxsize
+ \vbox to\epsfysize{\vfil\hbox to\epsfxsize{%
+ \ifnum\epsfrsize=0\relax
+ \special{PSfile=\ifepsfdraft psdraft.ps\else#1\fi\space
+ llx=\epsfllx\space lly=\epsflly\space
+ urx=\epsfurx\space ury=\epsfury\space
+ rwi=\decimalshift\epsftmp
+ \epsfclipstring}%
+ \else
+ \epsfrsize=\pttobp\epsfysize
+ \special{PSfile=\ifepsfdraft psdraft.ps\else#1\fi\space
+ llx=\epsfllx\space lly=\epsflly\space
+ urx=\epsfurx\space ury=\epsfury\space
+ rwi=\decimalshift\epsftmp\space
+ rhi=\decimalshift\epsfrsize
+ \epsfclipstring}%
+ \fi
+ \hfil}}%
+\global\epsfxsize=0pt\global\epsfysize=0pt}%
+% ---
+\catcode`\/\slashcatcode
+% ---
+\endinput
diff --git a/Master/texmf-dist/doc/generic/tap/tapanch.100 b/Master/texmf-dist/doc/generic/tap/tapanch.100
index 875e3b11f84..88df5a3ef48 100644
--- a/Master/texmf-dist/doc/generic/tap/tapanch.100
+++ b/Master/texmf-dist/doc/generic/tap/tapanch.100
@@ -1,11 +1,11 @@
%!PS
%%BoundingBox: -10 -1 279 103
%%Creator: MetaPost
-%%CreationDate: 2000.03.17:1022
+%%CreationDate: 2001.07.30:1406
%%Pages: 1
%*Font: cmr8 7.97011 7.97011 63:a04
-%*Font: cmmi7 6.97385 6.97385 41:fc
-%*Font: cmsy5 4.98132 4.98132 30:8
+%*Font: plmi7 6.97385 6.97385 41:fc
+%*Font: plsy5 4.98132 4.98132 30:8
%%EndProlog
%%Page: 1 1
0.8 setgray
@@ -402,7 +402,7 @@ newpath 258.53497 97.7951 moveto
257.06543 95.7951 257.5741 96.00586 257.94916 96.38092 curveto
258.32422 96.75598 258.53497 97.26465 258.53497 97.7951 curveto closepath fill
244.19162 86.67764 moveto
-(A) cmmi7 6.97385 fshow
+(A) plmi7 6.97385 fshow
0 1.5 dtransform truncate idtransform setlinewidth pop
newpath 252.283 70.86601 moveto
256.53497 75.11798 lineto stroke
@@ -436,9 +436,9 @@ newpath 258.53497 75.11798 moveto
257.06543 73.11798 257.5741 73.32874 257.94916 73.7038 curveto
258.32422 74.07886 258.53497 74.58752 258.53497 75.11798 curveto closepath fill
241.49681 72.966 moveto
-(A) cmmi7 6.97385 fshow
+(A) plmi7 6.97385 fshow
247.4882 75.9725 moveto
-(0) cmsy5 4.98132 fshow
+(0) plsy5 4.98132 fshow
0 1.5 dtransform truncate idtransform setlinewidth pop
newpath 138.89738 93.54314 moveto
134.64542 89.29117 lineto stroke
@@ -473,9 +473,9 @@ newpath 136.64542 89.29117 moveto
135.17587 87.29117 135.68454 87.50192 136.0596 87.87698 curveto
136.43466 88.25204 136.64542 88.76071 136.64542 89.29117 curveto closepath fill
140.99738 85.66925 moveto
-(B) cmmi7 6.97385 fshow
+(B) plmi7 6.97385 fshow
147.35648 88.67575 moveto
-(0) cmsy5 4.98132 fshow
+(0) plsy5 4.98132 fshow
0 1.5 dtransform truncate idtransform setlinewidth pop
newpath 138.89738 70.86601 moveto
134.64542 66.61404 lineto stroke
@@ -510,7 +510,7 @@ newpath 136.64542 66.61404 moveto
135.17587 64.61404 135.68454 64.8248 136.0596 65.19986 curveto
136.43466 65.57492 136.64542 66.08359 136.64542 66.61404 curveto closepath fill
140.99738 72.966 moveto
-(B) cmmi7 6.97385 fshow
+(B) plmi7 6.97385 fshow
0 1.5 dtransform truncate idtransform setlinewidth pop
newpath 269.29085 62.36209 moveto
265.03888 66.61406 lineto stroke
@@ -545,7 +545,7 @@ newpath 267.03888 66.61406 moveto
265.56934 64.61406 266.078 64.82481 266.45306 65.19987 curveto
266.82813 65.57494 267.03888 66.0836 267.03888 66.61406 curveto closepath fill
272.29085 59.97934 moveto
-(C) cmmi7 6.97385 fshow
+(C) plmi7 6.97385 fshow
0 1.5 dtransform truncate idtransform setlinewidth pop
newpath 0 39.68497 moveto
4.25197 35.433 lineto stroke
@@ -579,7 +579,7 @@ newpath 6.25197 35.433 moveto
4.78242 33.433 5.29109 33.64375 5.66615 34.01881 curveto
6.04121 34.39388 6.25197 34.90254 6.25197 35.433 curveto closepath fill
-9.7285 37.30222 moveto
-(D) cmmi7 6.97385 fshow
+(D) plmi7 6.97385 fshow
newpath 19.00784 31.18105 moveto
19.00784 31.7115 18.79709 32.22017 18.42203 32.59523 curveto
18.04697 32.97029 17.5383 33.18105 17.00784 33.18105 curveto
@@ -590,7 +590,7 @@ newpath 19.00784 31.18105 moveto
17.5383 29.18105 18.04697 29.3918 18.42203 29.76686 curveto
18.79709 30.14192 19.00784 30.65059 19.00784 31.18105 curveto closepath fill
19.10783 24.31555 moveto
-(E) cmmi7 6.97385 fshow
+(E) plmi7 6.97385 fshow
newpath 132.39346 8.50392 moveto
132.39346 9.03438 132.18271 9.54305 131.80765 9.9181 curveto
131.43259 10.29317 130.92392 10.50392 130.39346 10.50392 curveto
@@ -601,6 +601,6 @@ newpath 132.39346 8.50392 moveto
130.92392 6.50392 131.43259 6.71468 131.80765 7.08974 curveto
132.18271 7.4648 132.39346 7.97346 132.39346 8.50392 curveto closepath fill
122.16847 10.60391 moveto
-(F) cmmi7 6.97385 fshow
+(F) plmi7 6.97385 fshow
showpage
%%EOF
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/0sampdos.inf b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/0sampdos.inf
new file mode 100644
index 00000000000..6e23951d78a
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/0sampdos.inf
@@ -0,0 +1,5 @@
+ All files in this directory belong to the TAP package
+
+ Use TCV.BAT to translate *.RAW files into plain TeX.
+ (TCV.BAT makes use of Gnu AWK; the version 3.0.x is recommended)
+
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/post1.tex b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/post1.tex
new file mode 100644
index 00000000000..0e2330f2bfa
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/post1.tex
@@ -0,0 +1,3 @@
+\endtable
+
+\end
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/post2.tex b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/post2.tex
new file mode 100644
index 00000000000..2a7a74853ad
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/post2.tex
@@ -0,0 +1,4 @@
+\B"\Z"\Z" "\Z"\Z" "\Z"\Z" "\Z"\Z" "\Z"\Z" "\Z"\Z" "\Z"\Z\E"
+\endtable
+
+\end
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea1.tex b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea1.tex
new file mode 100644
index 00000000000..9af340975b8
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea1.tex
@@ -0,0 +1,5 @@
+\input tap
+\nopagenumbers
+
+\begintable
+\begintableformat &\center \endtableformat
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea2.tex b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea2.tex
new file mode 100644
index 00000000000..a6af34ddb91
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea2.tex
@@ -0,0 +1,7 @@
+\input tap
+\nopagenumbers
+
+\def\Z{\hbox to5mm{}}
+
+\begintable
+\begintableformat &\center \endtableformat
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea3.tex b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea3.tex
new file mode 100644
index 00000000000..a6c581c8e82
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/prea3.tex
@@ -0,0 +1,6 @@
+\input tap
+\nopagenumbers
+
+\thistable{\desiredwidth36em}
+\begintable
+\begintableformat &\left \endtableformat
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv0.raw b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv0.raw
new file mode 100644
index 00000000000..74403186b1d
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv0.raw
@@ -0,0 +1,5 @@
+ÉÍÍÍÍÑÍÍÍÍËÍÍÍÍÑÍÍÍÍ»
+º 1 ³ 2 º 3 ³ 4 º
+ÇÄÄÄÄÅÄÄÄÄ×ÄÄÄÄÅÄÄÄĶ
+º 11 ³ 22 º 33 ³ 44 º
+ÈÍÍÍÍÏÍÍÍÍÊÍÍÍÍÏÍÍÍͼ
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv1.raw b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv1.raw
new file mode 100644
index 00000000000..be6f5924445
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv1.raw
@@ -0,0 +1,9 @@
+ÉÍÍÍÍÑÍÍÍÍËÍÍÍÍÑÍÍÍÍ»
+º 1 ³ 1 º 1 ³ 1 º
+º 2 ³ 2 º 2 ³ 2 º
+º 3 ³ 3 º 3 ³ 3 º
+ÇÄÄÄÄÅÄÄÄÄ×ÄÄÄÄÅÄÄÄĶ
+º 44 ³ 44 º 44 ³ 44 º
+º 55 ³ 55 º 55 ³ 55 º
+º 66 ³ 66 º 66 ³ 66 º
+ÈÍÍÍÍÏÍÍÍÍÊÍÍÍÍÏÍÍÍͼ
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv2.raw b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv2.raw
new file mode 100644
index 00000000000..5ca9a2c85c3
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv2.raw
@@ -0,0 +1,11 @@
+
+
+ ÉÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
+ º rubryka 1 ³ rubryka 2 ³ rubryka 3 ³ rubryka 4 º
+ ÌÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
+ º rubryka 1 i 2 ³ rubryka 3 i 4 º
+ ÇÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
+ º ³ rubryka 2 i 3 ³ º
+ ÇÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ wiersz 3 i 4 º
+ º rubryka 1, 2, 3 ³ º
+ ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv3.raw b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv3.raw
new file mode 100644
index 00000000000..57ce13288d8
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv3.raw
@@ -0,0 +1,15 @@
+ J. H. B\"ohning, 1838
+ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ M. J. H. B\"ohning, 1882 ³
+ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
+ ³ ³ M. D. Blase, 1840
+ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+L. M. Bohning, 1912 ³
+ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
+ ³ E. F. Ehlert, 1845
+ ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ ³ P. A. M. Ehlert, 1884 ³
+ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
+ ³ C. L. Wischmeyer, 1850
+ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv4.raw b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv4.raw
new file mode 100644
index 00000000000..9af65fe2dd1
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv4.raw
@@ -0,0 +1,8 @@
+ COLUMN
+ OF NUMBERS
+ÍÍÍÍÍÍÍÍÍÍÍÍ
+ 12,3
+ 0,12
+ 12345,678
+ 0,1234
+123456,0
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv5.raw b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv5.raw
new file mode 100644
index 00000000000..d2ec5442dd5
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv5.raw
@@ -0,0 +1,15 @@
+ ÉÍÍÍÍÍÍÍ»
+ ºB O S Sº
+ ÈÍÍÍÑÍÍͼ
+ ³
+ ³
+ ³
+ ³
+ ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿
+ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³
+ ÚÄÄÄÁÄÄÄ¿ ÚÄÄÄÁÄÄÄ¿ ÚÄÄÄÁÄÄÄ¿ ÚÄÄÄÁÄÄÄ¿ ÚÄÄÄÁÄÄÄ¿ ÚÄÄÄÁÄÄÄ¿
+ ³ v-ce ³ ³ v-ce ³ ³ v-ce ³ ³ v-ce ³ ³ v-ce ³ ³ v-ce ³
+ ³ boss 1³ ³ boss 2³ ³ boss 3³ ³ boss 4³ ³ boss 5³ ³ boss 6³
+ ÀÄÄÄÄÄÄÄÙ ÀÄÄÄÄÄÄÄÙ ÀÄÄÄÄÄÄÄÙ ÀÄÄÄÄÄÄÄÙ ÀÄÄÄÄÄÄÄÙ ÀÄÄÄÄÄÄÄÙ
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv6.raw b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv6.raw
new file mode 100644
index 00000000000..b3a3c4cca95
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tapcv6.raw
@@ -0,0 +1,36 @@
+
+
+
+ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
+ ³ ³
+ ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³
+ ³ ³ ³ ³
+ ³ ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³
+ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ÉÍÍÍÍÍÍÍÍÍ» ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ º º ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ º T A P º ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ º º ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ÈÍÍÍÍÍÍÍÍͼ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ³ ³ ³
+ ³ ³ ³ ³ ³ ³ ³ ³
+ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ³ ³
+ ³ ³ ³ ³ ³ ³
+ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ³
+ ³ ³ ³ ³
+ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³
+ ³ ³
+ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tcv.bat b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tcv.bat
new file mode 100755
index 00000000000..660ff087ee2
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tcv.bat
@@ -0,0 +1,16 @@
+@echo off
+:: %1 input file name
+:: %2 output file name
+:: %3 extra spaces added at sides of every cell
+:: %4 span columns if %4=0, no spanning if %4=1
+:: %5 TeX text inserted in rows containing only vertical rules
+:: %6 preamble file name
+:: %7 postamble file name
+call tcv_ tapcv0.raw tapcv0.tex prea1.tex post1.tex 2 0
+call tcv_ tapcv1.raw tapcv1.tex prea1.tex post1.tex 2 0
+call tcv_ tapcv2.raw tapcv2.tex prea1.tex post1.tex 2 0
+call tcv_ tapcv3.raw tapcv3.tex prea3.tex post1.tex 0 1
+call tcv_ tapcv4.raw tapcv4.tex prea1.tex post1.tex 2 0
+call tcv_ tapcv5.raw tapcv5.tex prea2.tex post2.tex 2 0 \\V{x}
+call tcv_ tapcv6.raw tapcv6a.tex prea1.tex post1.tex 2 0 \\D+
+call tcv_ tapcv6.raw tapcv6b.tex prea1.tex post1.tex 2 0
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tcv_.bat b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tcv_.bat
new file mode 100755
index 00000000000..f8ffb442b9b
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/sampdos/tcv_.bat
@@ -0,0 +1,4 @@
+echo converting %1 to %2
+gawk -f../tapcv.awk -vEXPROW=%5 -vNOSPAN=%6 -vINSROW=%7 %1 > tmp.tmp
+copy /b %3 + tmp.tmp + %4 %2 > nul
+del tmp.tmp
diff --git a/Master/texmf-dist/doc/generic/tap/tapcv/tapcv.awk b/Master/texmf-dist/doc/generic/tap/tapcv/tapcv.awk
new file mode 100644
index 00000000000..1be6213b475
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/tap/tapcv/tapcv.awk
@@ -0,0 +1,239 @@
+# ---------------------------------------------------------------------------
+ This file belongs to the TAP package
+# ---------------------------------------------------------------------------
+# This is an AWK translator of tables written in extended ASCII format
+# to TeX/TAP format.
+
+# VERSION: 0.71, Tuesday, January 27th, 1998 -- essentially the
+# same as ver. 0.5 of Friday, May 3rd, 1996 (BachoTeX 96 release)
+
+# AUTHORS' COORDINATES
+#
+# Names: Bogu\l{}aw Jackowski, Piotr Pianowski, Piotr Strzelczyk
+# Mail: BOP s.c., ul. Piastowska 70, 80-363 Gda\'nsk, Poland
+# Email: B.Jackowski@GUST.ORG.PL
+
+# ===========================================================================
+BEGIN {
+ EXPROW=EXPROW+0 # pad each cell with at least EXPROW spaces
+ NOSPAN=NOSPAN+0 # use " mark instead of @ operator
+# INSROW is inserted in rows ~ "^[ " U S "]+$" (if not empty)
+ H="Í"; V="¶·¹º»¼½ÇÈÉÊËÌÎÐÒÓÖ×"; h="Ä"; v="µ¸´³¿Ù¾ÆÀÚÁÂÃÅÏÑÔÕØ"
+ U=" º³" # U is the subset of V + v + " "
+ S="°" # the explicit mark of a strut column (converted later to ")
+}
+# ===========================================================================
+function int_subst(u) {# task-specific substitutions for table interior
+ gsub("<","$<$",u); gsub(">","$>$",u); gsub("%","\\%",u); return u
+}
+function spaces(n) {return (n>0 ? sprintf("%" n "s", "") : "")}
+function chars(n,c, t) {t=spaces(n); gsub(" ", c, t); return t}
+function tildes(n) {return chars(n,"~")}
+function center(l,s, k1,k2) {
+# pads string s symmetrically with spaces such that result has length=l
+ k2=0; k1=int((l-length(s))/2); if (k1>=0) k2=l-length(s)-k1
+ return spaces(k1) s spaces(k2)
+}
+# ===========================================================================
+# STORE ALL THE STUFF
+# ===========================================================================
+/[^ ]/ {
+ if ( !(($0 ~ "^[ " U S "]+$") && (INSROW=="")) ) {
+ gsub(/ +$/,"") # trailing spaces are meaningless
+ line[++line_]=$0
+ if (longest<length($0)) longest=length($0) # fix max line length
+ PFX[line_]=(line[line_] ~ "(^[" V v S " ]+$)|([" H h "])" ? "-" : "+")
+ if ($0 ~ "^[ " U S "]+$") PFX[line_]="0"
+ }
+}
+# ===========================================================================
+END {
+# PASS 0:
+# 0a: truncate leading spaces
+ u=longest
+ for (l=1; l<=line_; ++l)
+ if (match(line[l],/^ +[^ ]/)) {if (RLENGTH<u) u=RLENGTH} else u=1
+ if (u>1) for (l=1; l<=line_; ++l) line[l]=substr(line[l],u)
+ longest=longest-u+1
+# 0b: check whether the first and the last columns contain vrules
+ i=1; j=1;
+ for (l=1; l<=line_; ++l) {
+ if (substr(line[l],1,1) ~ ("[" V v S "]")) i=0
+ if (length(line[l])==longest)
+ if (substr(line[l],longest) ~ ("[" V v S "]")) j=0
+ }
+# 0c: pad with trailing spaces (make the length of all rows equal)
+ for (l=1; l<=line_; ++l) line[l]=line[l] spaces(longest-length(line[l]))
+# 0d: add artificial begin and end strut, if needed
+ if (j) for (l=1; l<=line_; ++l) line[l]=line[l] S
+ if (i) for (l=1; l<=line_; ++l) line[l]=S line[l]
+ longest=longest+i+j
+# 0e: fix prefixes
+ for (l=1; l<=line_-1; ++l)
+ if ((PFX[l]=="-") && (PFX[l+1]=="+")) PFX[l+1]="^"
+ for (l=1; l<=line_-1; ++l) {
+ if ((PFX[l]=="^") && (PFX[l+1]=="-")) PFX[l]=":"
+ if ((PFX[l]=="+") && (PFX[l+1]=="-")) PFX[l]="_"
+ }
+# PASS 1: check input data
+# 1a: find position of vrules for all rows
+ for (l=1; l<=line_; ++l) {
+ for (i=1; i<=length(line[l]); ++i) {
+ ch=substr(line[l],i,1)
+ if ((ch!=".") && (ch!="?") && (ch!="(") && (ch!=")")\
+ && (ch!="+") && (ch!="*") && (ch!="[") && (ch!="]"))
+ if (match(V v S,ch)) C[i]=i
+ }
+ }
+ for (i in C) if ((i+0)>C_) C_=i+0 # index is a string, hence forced coercion
+ for (i=1; i<=C_; ++i) if (i in C) {D[++D_]=i; C[i]=D_}
+# if (c in C) holds, a vrule has occured in c-th column; C_ is the maximal
+# such c; for d such that 1<=d<=D_ (D[d] in C) holds; moreover, C[D[d]]=d
+# 1b: check consistency of data (in the positions of vrules only spaces
+# or vrules or struts may appear, unless NOSPAN==0)
+ for (l=1; l<=line_; ++l) for (i=1; i<=D_; ++i)
+ if ((NOSPAN) || (i==1) || (i==D_))
+ if (!match(V v S " ",substr(line[l],D[i],1))) {
+ print "! INCONSISTENT DATA."
+ print "ROW:", l ", COLUMN:", i ", CHARACTER:",
+ substr(line[l],D[i],1) "."
+ exit
+ }
+# 1c: put opening and closing struts, and all remaining struts if (NOSPAN==1)
+ for (l=1; l<=line_; ++l) for (i=1; i<=D_; ++i)
+ if ((NOSPAN) || (i==1) || (i==D_))
+ if (substr(line[l],D[i],1)==" ")
+ line[l]=substr(line[l],1,D[i]-1) S substr(line[l],D[i]+1)
+# PASS 2: check areas between vertical rules (find the longest one)
+ for (l=1; l<=line_; ++l) {
+ s=line[l]; t=""; u2=1
+ while (s!="") {
+ if (match(s,"[" V v S "][^" V v S "]+[" V v S "]")) {
+ t=t substr(s,RSTART,1)
+ u=substr(s,RSTART+1,RLENGTH-2)
+ s=substr(s,RSTART+RLENGTH-1)
+ u_=length(u); gsub("^ +","",u); gsub(" +$","",u)
+ u1=u2+RSTART-1; u2=u1+RLENGTH-1; c1=C[u1]; c2=C[u2]
+ if (u ~ /^[0-9]+[\.,]?[0-9]*$/) {
+ if (match(u,/^[0-9]+$/)) {
+ if (DD[c1,c2]<RLENGTH) DD[c1,c2]=RLENGTH
+ } else {
+ if (match(u,/^[0-9]+/))
+ if (LD[c1,c2]<RLENGTH) LD[c1,c2]=RLENGTH
+ if (match(u,/[\.,][0-9]*$/))
+ if (RD[c1,c2]<RLENGTH) RD[c1,c2]=RLENGTH
+ }
+ }
+ if ((u=="") && (NOSPAN)) {
+ u=spaces(u_)
+ for (i=C[u1]+1; i<=C[u2]-1; ++i) {
+ u=substr(u,1,D[i]-D[C[u1]]-1) S substr(u,D[i]-D[C[u1]]+1)
+ }
+ }
+ t=t center(u_,u)
+ } else {t=t s; s=""}
+ }
+ line[l]=t
+ }
+# PASS 3: transform appropriately (adding @ operator, if needed)
+# areas between vertical rules
+ for (l=1; l<=line_; ++l) {
+ s=line[l]; t=""; u2=1
+ while (s!="") {
+ if (match(s,"[" V v S "][^" V v S "]+[" V v S "]")) {
+ t=t substr(s,RSTART,1)
+ u=substr(s,RSTART+1,RLENGTH-2)
+ s=substr(s,RSTART+RLENGTH-1)
+ u_=length(u); gsub("^ +","",u); gsub(" +$","",u)
+ u1=u2+RSTART-1; u2=u1+RLENGTH-1; c1=C[u1]+0; c2=C[u2]+0
+ if (u ~ /^[0-9]+[\.,]?[0-9]*$/) {
+ if (match(u,/^[0-9]+$/)) {u=tildes(DD[c1,c2]-RLENGTH) u}
+ else {
+ if (match(u,/^[0-9]+/)) u=tildes(LD[c1,c2]-RLENGTH) u
+ if (match(u,/[\.,][0-9]*$/)) u=u tildes(RD[c1,c2]-RLENGTH)
+ }
+ }
+ gsub("[" h "]+","\\-",u); gsub("[" H "]+","\\=",u)
+ if ((c1==1) && (line[l] ~ "^[" U S " ]+$"))
+ {u=INSROW} else u=int_subst(u)
+ if ((c2-c1)>1) u="@" c2-c1 " " u
+ u=center(u_,u)
+ PAD[l,u2]=length(u)-u_ # PAD[l,u2] = shift of vrule u2 in line l
+ t=t u
+ } else {t=t s; s=""}
+ }
+ line[l]=t
+ }
+# PASS 4: align distorted columns (surprisingly hard task...)
+# 4a: find maximal shifts of vrules for all table rows
+ for (i=1; i<=D_; ++i) PADmax[D[i]]=EXPROW
+ for (l=1; l<=line_; ++l)
+ for (j=2; j<=D_; ++j) {i=D[j]
+ if ((l,i) in PAD)
+ PADmax[i]=(PAD[l,i]>PADmax[i] ? PAD[l,i] : PADmax[i])
+ }
+ for (l=1; l<=line_; ++l) {
+# 4b: find shifts of vrules for a given row
+ PAD_=0
+ for (j=2; j<=D_; ++j) {i=D[j]
+ if ((l,i) in PAD) {PADloc[i]=PADmax[i]+PAD_; PAD_=0}
+ else {PADloc[i]=0; PAD_+=PADmax[i]} # slip over non-existant rules
+ }
+# 4c: add spaces before appropriate vrules
+ cc=0;
+ for (j=2; j<=D_; ++j) {i=D[j]
+ if (PADloc[i]>0) {
+ line[l]=substr(line[l],1,i+cc-1+PAD[l,i]) spaces(PADloc[i]-PAD[l,i]) substr(line[l],i+cc+PAD[l,i])
+ cc+=PADloc[i]
+ }
+ }
+ }
+# 4d: center cells again
+ for (l=1; l<=line_; ++l) {
+ s=line[l]; t=""
+ while (s!="") {
+ if (match(s,"[" V v S "][^" V v S "]+[" V v S "]")) {
+ t=t substr(s,RSTART,1)
+ u=substr(s,RSTART+1,RLENGTH-2); s=substr(s,RSTART+RLENGTH-1)
+ u_=length(u); gsub("^ +","",u); gsub(" +$","",u); t=t center(u_,u)
+ } else {t=t s; s=""}
+ }
+ line[l]=t
+ }
+# PASS 5: output results
+# 5a: insert !, | and "
+ for (l=1; l<=line_; ++l) {
+ gsub("[" V "]","!",line[l])
+ gsub("[" v "]","|",line[l])
+ gsub("[" S "]","\"",line[l])
+ p=line[l]; gsub(/(\\\|)|(\\!)|(\\")/," ",p); gsub(/[^\|!"]/," ",p);
+ PAT[p]=1 # fix row pattern
+ print "\\B" substr(line[l],1,1)\
+ PFX[l] substr(line[l],2,length(line[l])-2)\
+ "\\E" substr(line[l],length(line[l]),1)
+ }
+# 5b: clear old values of C and D and fix new ones
+ for (i in C) delete C[i]; for (i in D) delete D[i]; C_=0; D_=0;
+ for (p in PAT) for (i=1; i<=length(p); ++i) if (substr(p,i,1)!=" ")
+ {C[i]=1; if (i>C_) C_=i}
+ for (i=1; i<=C_; ++i) if (i in C) {D[++D_]=i; C[i]=D_}
+# 5c: write extra information
+ if (NOSPAN) {# add a row with complete column marks (a comment in fact)
+ p=spaces(D[D_]-D[1])
+ for (i=1; i<=D_; ++i) p=substr(p,1,D[i]-1) "\"" substr(p,D[i]+1)
+ print "\\B" substr(p,1,1) " " substr(p,2,length(p)-2)\
+ "\\E" substr(p,length(p),1)
+ }
+# 5d: add the ``rear''
+# print "% ROW PATTERNS:"
+# for (p in PAT) {
+# for (i in C) if (substr(p,i,1)==" ") p=substr(p,1,i-1) "\"" substr(p,i+1)
+# print "%\\B" substr(p,1,1)\
+# "0" substr(p,2,length(p)-2) "\\E" substr(p,length(p),1)
+# }
+# print "% VRULES FOUND IN THE FOLLOWING COLUMNS:"
+# print "%"
+# print "% No. Col.:"
+# for (j=1; j<=D_; ++j) printf("%s %3d %4d\n", "%", j, D[j])
+}
+# ===========================================================================
diff --git a/Master/texmf-dist/doc/generic/tap/tapdoc.tex b/Master/texmf-dist/doc/generic/tap/tapdoc.tex
index e8d5c0a8faa..d3fc5dc42fe 100644
--- a/Master/texmf-dist/doc/generic/tap/tapdoc.tex
+++ b/Master/texmf-dist/doc/generic/tap/tapdoc.tex
@@ -80,13 +80,13 @@
\def\section#1. #2. {\bigskip\noindent {\bf #1.\enspace#2.}\ }
% ========================================================================
\immediate
- \write16{=============================================================}%
+ \write16{========================================================================}%
\immediate
- \write16{ This text is to be processed further by T. Rokicki's DVIPS,}%
+ \write16{****** This text is to be processed further by T. Rokicki's DVIPS ******}%
\immediate
- \write16{ D. Wujastyk's English hyphenation patterns are recommended.}%
+ \write16{English hyphenation patterns by D. Wujastyk and G. Toal are recommended.}%
\immediate
- \write16{=============================================================}
+ \write16{========================================================================}
% ========================================================================
\def\makeheadline{%
\vbox to0pt{\vskip-28pt