Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!husc6!encore!multimax.UUCP
From: devoz@multimax.UUCP (Joe DeVincentis,EFD TR 75S TR 4S TL 1S TL,2622,7568004)
Newsgroups: alt.sources
Subject: Re: .plan
Message-ID: <10002@multimax.Encore.COM>
Date: 25 Sep 89 12:20:08 GMT
References: <4705@cps3xx.UUCP>
Sender: news@Encore.COM
Lines: 36

From article <4705@cps3xx.UUCP>, by dulimart@cpsvax.cps.msu.edu (Hansye S. Dulimarta):
> In article <27435@abbott.mips.COM> blanier@mips.COM (Brian Lanier) writes:
>>In article <52@towernet.UUCP> larrym@rigel.uucp (24121-E R Inghrim(3786)556) writes:
>>>I have seen different .plan files with stick figures jumping
>>>around, "beeps," and other keen-neato-groovy stuff.
>>>Can anyone tell me how to create an active .plan file
>>>like those?  Please e-mail.  THANKS!!!

> You can create this kind of .plan file by
> (1) Writing a program with 'curses' facility and redirect the output of your
>     curses to a file (which then renamed as .plan)    OR
> (2) Edit your terminal control codes into the .plan file directly
>     (if you are patient enough to do so).
>  * Hans Dulimarta    (517) 355-3840                                          *


Unfortunately, this is not always true.  I don't know what version of
"finger" that you are using, but the one I have, (the program that
prints the .plan file on the screen), modifies the escape char, so
that your terminal control codes don't work directly.

So, you cannot simply capture the output from your favorite graphics
command.  You do that first, THEN you must use a character for the
escape char that exclusive ORed with 100 equals an escape character!
Actually, for all of the non-printing chars you must figure this out!

The code from "finger.c" that I have, (4.3 BSD), looks like this;

	if (isprint(c) || isspace(c))
		putchar(c);
	else
		putchar(c ^ 100);

Get it?

devoz