Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!purdue!haven!uvaarpa!mcnc!thorin!oscar!tell From: tell@oscar.cs.unc.edu (Stephen Tell) Newsgroups: comp.sys.amiga.tech Subject: Re: Script Summary: Try using Matt's dpipe: as a basis for script command Message-ID: <10314@thorin.cs.unc.edu> Date: 1 Nov 89 05:43:24 GMT References: <1048@sumax.UUCP> Sender: news@thorin.cs.unc.edu Reply-To: tell@oscar.cs.unc.edu (Stephen Tell) Distribution: usa Organization: University Of North Carolina, Chapel Hill Lines: 34 You may not have to invent the wheel on this: As part of dnet, Matt Dillon wrote a "new and improved" pipe: handler, sometimes called dpipe:. It is a bidirectional pipe, in many ways like a unix pty. It is possible to attach a cli to one side of the pipe, and have an arbitrary program send stuff to the cli's input and read from its output. It works; the scli dnet server uses this to let me open up an Amiga Shell window on this here sun. I think it might work very well for a "script" command. Problems with it are: It is not a console device, so typing ^C doesn't automaticly send SIGBREAKF_CTRL_C to the Shell. Killing off the shell is a problem; Matt's solution is to look for a control-C, and then send the special sequence "ENDCLI\n" down the pipe before closing. Perhaps there should be an option for shells/clis to die upon reaching end-of-file, like Unix shells do? I don't think programs running under the shell can put the pipe in "RAW" mode. Actually, you don't want the pipe in "RAW" mode, it is already. What we wants to happen is for the pipe to send some sort of packet/message to the program on the other side, so it can interpret the data stream differently if it wants to. PTY: handler anyone? Lest you think this is comp.sys.amiga.tech.matt.dillon, let me disclaim that I don't even know the guy, but he writes great stuff! Steve ---------------------------------------------------------------------- "If it walks like a duck, talks like a duck, and is in black and white, chances are, it's a MACINTOSH!"