jmd@franklin.ee.umr.edu (Jim Dumser) (10/18/90)
[ Sorry if this gets to your site twice. I tried cross posting to
gnu.groff.bug -- it showed up there, but apparently didn't make it c.l.p. ]
I've been trying to solve some problems were having with ralpage (v 1.5 with
jgm/bsz mods v3, running under X11) viewing output from groff (v 0.5). I
traced the problem down, I think. Here's an example:
/SF { % name size font SF -
findfont exch
[ exch dup 0 exch 0 exch neg 0 0 ] makefont
dup setfont
[ exch /setfont load ] cvx def
} bind def
16 /Times-Roman@0 SF
This produces 'undefined in operator load' when run thru ralpage. As I
understand load, it will replace setfont on the stack with the procedure
*setfont* (actual executable). At the end it does a bind. I don't know why
you'd want to do a bind -- there probably are good reasons :-) -- all bind
does is replace names with their values (makefont -> *makefont*, load ->
*load*, setfont -> *setfont*, etc), right? Why do a '/setfont load' if
you're going to do a bind anyway? Wouldn't just '/setfont' (with bind) do
exactly the same thing?
I've found two things that "fix" the problem: remove the load, or remove the
bind. Both way works with ralpage and with our Laserwriter. Could it be
that ralpage's bind is replacing name setfont with *setfont*?
BTW: There is also a MF procedure in the grops prolog that has the same
problem as SF, altho it wasn't used in my test document.
Jim Dumser
+-------------------------------------------------------+
| The fear of the Lord is the beginning of knowledge, |
| but fools despise wisdom and discipline. Proverbs 1:7 |
|-------------------------------------------------------|
| Internet: jmd@ee.umr.edu | M S - D O S . . . |
| UUCP: ...uunet!umree!jmd | Just say "NO!" |
+-------------------------------------------------------+