! Missing symbolic token inserted.
<inserted text>
INACCESSIBLE
l.21 ...t next=\; delimiters ^~7
! fi
Sorry: You can't redefine a number, string, or expr.
I've inserted an inaccessible symbol so that your
definition will be completed without mixing me up too badly.
! Extra tokens will be flushed.
<to be read again>
!
l.21 ... next=\; delimiters ^~7!
fi
I've just read as much of that statement as I could fathom,
so a semicolon should have been next. It's very puzzling...
but I'll try to get myself back together, by ignoring
everything up to the next `;'. Please insert a semicolon
now in front of anything that you don't want me to delete.
(See Chapter 27 of The METAFONTbook for an example.)
! Forbidden token found while scanning to the end of the statement.
<inserted text>
;
<to be read again>
\
l.22 next\
; % the second pass will now compute silently; the ...
A previous error seems to have propagated,
causing me to read past where you wanted me to stop.
I'll try to recover; but if the error is serious,
you'd better type `E' or `X' now and fix your file.
{\}
{batchmode}
! An expression can't begin with `endgroup'.
<inserted text>
0
<to be read again>
endgroup
l.23 batchmode; ^~7,endgroup
pausing:=1; exitif p exitif bool...
I'm afraid I need some sort of value in order to continue,
so I've tentatively inserted `0'. You may want to
delete this zero and insert something else;
see Chapter 27 of The METAFONTbook for an example.
! Missing ` INACCESSIBLE' has been inserted.
<to be read again>
endgroup
l.23 batchmode; ^~7,endgroup
pausing:=1; exitif p exitif bool...
I found no right delimiter to match a left one. So I've
put one in, behind the scenes; this may fix the problem.
! Extra `endgroup'.
<recently read> endgroup
l.23 batchmode; ^~7,endgroup
pausing:=1; exitif p exitif bool...
I'm not currently working on a `begingroup',
so I had better not try to end anything.
I'm not currently working on a for loop,
so I had better not try to end anything.
{scantokens}
{begingroup}
{message}
{char(0)}
{("^^@")&("watch this")}
^^@watch this
{-(1)}
{char(-1)}
{("pair p[],';")&("^^ff")}
{endgroup}
{pen(future pen)}
{boolean(true)}
{true}
! No loop is in progress.
<to be read again>
pair
<scantokens> pair
p[],';^^ff
<to be read again>
path
l.25 path
p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
Why say `exitif' when there's nothing to exit from?
>> p
! Undefined condition will be treated as `false'.
<to be read again>
pair
<scantokens> pair
p[],';^^ff
<to be read again>
path
l.25 path
p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
The expression shown above should have had a definite
true-or-false value. I'm changing it to `false'.
{false}
! Missing `;' has been inserted.
<to be read again>
pair
<scantokens> pair
p[],';^^ff
<to be read again>
path
l.25 path
p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
After `exitif <boolean expr>' I expect to see a semicolon.
I shall pretend that one was there.
{pair}
! Text line contains an invalid character.
<scantokens> pair p[],';^^ff
<to be read again>
path
l.25 path
p[][]p,w,qw; qw=(1,-2)..(2,-1)..(2.5,0.5)..(1,2)..(...
A funny symbol that I can't read has just been input.
Continue, and I'll forget that it ever happened.
{path}
{-(2)}
{-(1)}
{turningnumber((xpart ',ypart '))}
Path at line 25, before choices:
(1,-2){curl 1}
..(2,-1)
..(2.5,0.5)
..(1,2)
..{curl 1}(0,2.5)
Path at line 25, after choices:
(1,-2)..controls (1.37755,-1.71404) and (1.71404,-1.37755)
..(2,-1)..controls (2.33353,-0.55965) and (2.59729,-0.04124)
..(2.5,0.5)..controls (2.36812,1.23369) and (1.6712,1.65662)
..(1,2)..controls (0.66821,2.16974) and (0.33485,2.33641)
..(0,2.5)
{(unknown path qw)=(path)}
{numeric}
! Enormous number has been reduced.
l.26 ...[$] ]]=10000000000000000
; "this string constant is in...
I can't handle numbers bigger than about 4095.99998;
so I've changed your constant to that maximum amount.
{(p[[ [-1] ]])=(4095.99998)}
## p[[ [-1] ]]=4095.99998
! Incomplete string token has been flushed.
l.26 ...g constant is incomplete
Strings should finish on the same line as they began.
I've deleted the partial string; you might want to
insert another by typing, e.g., `I"new string"'.
{string}
! Declared variable conflicts with previous vardef.
<to be read again>
,
l.27 string foo[]p,
p~if true:[]; p~000=char34&char200&char34;
You can't use, e.g., `numeric foo[]' after `vardef foo'.
Proceed, and I'll ignore the illegal redeclaration.
{pen}
! Illegal suffix of declared variable will be flushed.
<to be read again>
[
<to be read again>
"a"
l.30 pen p~[]~,q["a"
,qq; p~1~=q=pencircle scaled mexp(-3016.5...
Variables in declarations must consist entirely of
names and collective subscripts, e.g., `x[]a'.
Are you trying to use a reserved word in a variable name?
I'm going to discard the junk I found here,
up to the next comma or the end of the declaration.
{(unknown pen q)=(pen)}
{(unknown pen p~1~)=(pen)}
{transform}
! Illegal suffix of declared variable will be flushed.
<to be read again>
0
l.31 transform p,pp0
; if p=p:qq=makepen((1,0)..cycle) xscaled...
Variables in declarations must consist entirely of
names and collective subscripts, e.g., `x[]a'.
Explicit subscripts like `x15a' aren't permitted.
I'm going to discard the junk I found here,
up to the next comma or the end of the declaration.
{if}
{((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p))=((xpart p,ypart
p,xxpart p,xypart p,yxpart p,yypart p))}
{true}
Path at line 31, before choices:
(1,0)
..cycle
Path at line 31, after choices:
(1,0)..controls (1,0) and (1,0)
..cycle
{makepen(path)}
{hex("1000")}
! Number too large (4096).
<to be read again>
;
l.31 ...cle) xscaled hex "1000";
fi
I have trouble with numbers greater than 4095; watch out.
{(future pen)xscaled(4096)}
! Pen too large.
<to be read again>
;
l.31 ...cle) xscaled hex "1000";
fi
The cycle you specified has a coordinate of 4095.5 or more.
So I've replaced it by the trivial path `(0,0)..cycle'.
Pen polygon at line 31 (newly created):
(0,0)
.. cycle
{(unknown pen qq)=(pen)}
{fi}
Path at line 32, before choices:
(0,0)
..(1,0)
..(0,1)
..(0,0)
..(1,0)
..(0,1)
..cycle
Path at line 32, after choices:
(0,0)..controls (0.29056,-0.29056) and (0.75859,-0.30772)
..(1,0)..controls (1.51964,0.66237) and (0.66237,1.51964)
..(0,1)..controls (-0.30772,0.75859) and (-0.29056,0.29056)
..(0,0)..controls (0.29056,-0.29056) and (0.75859,-0.30772)
..(1,0)..controls (1.51964,0.66237) and (0.66237,1.51964)
..(0,1)..controls (-0.30772,0.75859) and (-0.29056,0.29056)
..cycle
{makepen(path)}
! Pen cycle must be convex.
<to be read again>
;
l.32 ...)..(1,0)..(0,1)..cycle);
The cycle you specified either has consecutive equal points
or turns right or turns through more than 360 degrees.
So I've replaced it by the trivial path `(0,0)..cycle'.
Pen polygon at line 32 (newly created):
(0,0)
.. cycle
{qq:=pen}
{vardef}
! Missing parameter type; `expr' will be assumed.
<to be read again>
)
l.33 ...ext suffix a,b endtext()
)suffix@=show #@; p.a.b() end...
You should've had `expr' or `suffix' or `text' here.
{qq:=pen}
{((6,12))-((xpart p7,ypart p7))}
{((0,1))transformed((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p
))}
{(x)-(x)}
{(2)/(0)}
>> 2
! Division by zero.
<to be read again>
,
l.35 ...)transformed p=(2/(x-x),
3/0)transformed p;
You're trying to divide the quantity shown above the error
message by zero. I'm going to divide it by one instead.
! Division by zero.
l.35 ...ansformed p=(2/(x-x),3/0
)transformed p;
I'll pretend that you meant to divide by 1.
{((2,3))transformed((xpart p,ypart p,xxpart p,xypart p,yxpart p,yypart p
))}
{((linearform,linearform))=((linearform,linearform))}
## yxpart p=-yypart p
## xxpart p=-xypart p
{((-xpart p7+6,-ypart p7+12))=((linearform,linearform))}
## ypart p7=-ypart p-yypart p+12
## xpart p7=-xpart p-xypart p+6
{\}
{if}
{string(unknown string p~[-1])}
{true}
{(p0.1 0.2)-(p0.1 0.2)}
! The token `endtext' is no longer a right delimiter.
l.36 ...1.2-p.1.199999,1 endtext
transformed p;
Strange: This token has lost its former meaning!
I'll read it as a right delimiter this time;
but watch out, I'll probably miss it later.