[tex-k] Bug#83146: MF fatal error
Julian Gilbey
Julian Gilbey <J.D.Gilbey@qmw.ac.uk>, 83146@bugs.debian.org
Mon, 22 Jan 2001 14:47:50 +0000
Package: tetex-bin
Version: 1.0.6-7
Wow! I got a MetaFont "This can't happen (m)" error. Here's how I
did it.
mf '\mode:=ljfzzz; mag:=1+0/1200; nonstopmode; input xslhz20'
Now ljfzzz is in the standard modes.mf:
mode_def ljfzzz = %\[ LaserJet 4000N, ProRes mode (1200dpi)
mode_param (pixels_per_inch, 1200);
mode_param (blacker, 1);
mode_param (fillin, .1);
mode_param (o_correction, 1);
mode_common_setup_;
enddef;
and xslhz20 is in the MusiXTeX distribution (I'm using version 0.98);
here it is:
% ---------- start file ----------
font_identifier:="xslhz20";
mode_setup;
font_size 20pt#;
input xslhz;
% ---------- end file ----------
And here is xslhz.mf:
% ---------- start file ----------
%=== xslhz.mf======================================================
% WpH May 19, 1997 modified to be dashed
% ick 98-05-22 modified constants for gap, dash, endlen.
%
thick#:=1pt#;
stepwidth#:=4pt#;
define_pixels(stepwidth);
define_blacker_pixels(thick);
picture pic;
gap=thick; %was 1.5; WpH new parameter: gap length. ick
dash=1.6thick; % 2.5; WpH new parameter: dash length. ick
endlen=-0.0thick; % -1.0; WpH new: length of dash at ends measured to center of gap. ick
if unknown makedotted: makedotted:=0; fi % WpH
slope=1/100;
for i=1 upto 100:
beginchar((i-1),0,0,0);
x3=-x1=.5i*stepwidth; x2=y1=y3=0; y2=slope*i*stepwidth;
penpos1(thick,90); penpos2(thick,90); penpos3(thick,90);
penstroke z1e..z2e..z3e;
%
% wph start of added block to make gaps.
if makedotted<>1:
% variable makedotted has not been given a value.
% Dotted lines will not be made.
else:
cullit;
pickup pencircle scaled gap;
cl:=abs(z3-z1);
xcount:=(cl-2endlen)/(gap+dash); % number of gaps.
xcount:=floor(xcount + .5); %round to nearest int number.
xinc:=(cl-2endlen)/xcount;
for j=0 upto xcount-1:
xcur:=x1+endlen+j*xinc;
undraw (xcur,y1)..(xcur,y2+.6thick);
endfor;
cullit;
fi
% wph end of added block to make gaps.
%
pic:= currentpicture;
endchar;
beginchar((128+i-1),0,0,0);
currentpicture:= pic reflectedabout(origin,right);
endchar;
endfor
end
% ---------- end file ----------
Now I'm doing this on a Linux machine, uname -a gives:
Linux polya 2.2.17 #1 SMP Wed Jul 12 16:55:02 BST 2000 i586 unknown
using teTeX version 1.0.6, so mf --version gives:
Metafont (Web2C 7.3.1) 2.7182
kpathsea version 3.3.1
I'm running a Debian 2.2 system, libc6 version 2.1.3.
The output of the run is:
This is METAFONT, Version 2.7182 (Web2C 7.3.1)
(/usr/share/texmf/fonts/source/public/musix/xslhz20.mf
(/usr/share/texmf/fonts/source/public/musix/xslhz.mf [0] [128] [1] [129]
[2] [130] [3] [131] [4] [132] [5] [133] [6] [134] [7] [135] [8] [136] [9]
[137] [10] [138] [11] [139] [12] [140] [13] [141] [14] [142] [15] [143]
[16] [144] [17] [145] [18] [146] [19] [147] [20] [148] [21] [149] [22] [150]
[23] [151] [24] [152] [25] [153] [26] [154] [27] [155] [28] [156] [29] [157]
[30] [158] [31] [159] [32] [160] [33] [161] [34] [162] [35] [163] [36] [164]
[37] [165] [38] [166] [39] [167] [40] [168] [41] [169] [42] [170] [43] [171]
[44] [172] [45] [173] [46] [174] [47] [175] [48] [176] [49] [177] [50] [178]
[51] [179] [52] [180] [53] [181] [54] [182] [55] [183] [56] [184] [57] [185]
[58] [186] [59] [187] [60] [188] [61] [189] [62] [190] [63] [191] [64] [192]
[65] [193] [66] [194] [67] [195] [68] [196] [69] [197] [70] [198]
! This can't happen (m).
<recently read> ;
<for(72)> ...s3(thick,90);penstroke.z1e..z2e..z3e;
if.makedotted<>1:else:cull...
l.49 endfor
Font metrics written on xslhz20.tfm.
Output written on xslhz20.1200gf (142 characters, 53320 bytes).
Transcript written on xslhz20.log.
Any clues?!
Julian
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Julian Gilbey, Dept of Maths, Queen Mary, Univ. of London
Debian GNU/Linux Developer, see http://people.debian.org/~jdg
Donate free food to the world's hungry: see http://www.thehungersite.com/