Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Dec 1996 03:43:33 -0800
From:      "Jordan K. Hubbard" <jkh@time.cdrom.com>
To:        Michael Smith <msmith@atrad.adelaide.edu.au>
Cc:        fenner@parc.xerox.com, ports@freebsd.org
Subject:   Re: Ports INDEX browser update 
Message-ID:  <1455.849699813@time.cdrom.com>
In-Reply-To: Your message of "Wed, 04 Dec 1996 16:22:00 %2B1030." <199612040552.QAA15727@genesis.atrad.adelaide.edu.au> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Jordan K. Hubbard stands accused of saying:
> > It also occurs to me that if you're really masoch^H^H^H^H^Hinterested
> > in odd solutions, you can always build and use the two widgets from
> > "emu" in our ports collection.  It was built specifically for this
> > purpose, with "xterm" equivalent functionality derived from several
> > cooperating widgets.
> 
> That sounds pretty handy!  How do you think that it would compare against
> expect and its terminal emulation? (if it does any, for that matter...?)

Heh.  This is where you will probably fall over kicking spastically,
like a cockroach that's just been sprayed with a noxious substance
(not that I am otherwise comparing you to an annoying household insect
which feeds on grease :-).

The emulation is entirely programmable, using a little stack-based
language (called "IOP") which eats terminal escape sequences and
generates operation requests for the canvas widget.  It reads the
emulation "program" from the X resource database, and in this way a
full VT220 emulator is provided.  We didn't like the idea that xterm's
vt100 emulation was hardcoded, so I designed a little language for
it. :-)

If you're actually interested in figuring this out, and it's not
nearly as complex as it sounds, I'll be happy to provide any and all
technical assistance.  It's in /usr/ports/x11/emu in case you missed
the location earlier.

> I think that it's a core technology requirement for the short-medium
> term insofar as our FreeSAM aims are concerned; we need to be able to
> run things like the YP map makes &c. and put their output where they
> can be seen.

Yep, this will do that really well.  The main motivation I originally
had for writing this (with Michael Elbel as co-conspirator) was the
fact that xterm's "slave mode" is an unholy bitch to use, and I wanted
a set of widgets to link into my application (an early xgdb
implementation) which would simply provide callback handlers for
trivially splicing in I/O streams and displaying them.  Along the way,
it just kind of grew into a complete xterm replacement with a
programmable escape sequence parser.

I always threatened to provide an HP2640 terminal emulator resource
string for it, just to prove it could be done as easily as a VT220,
but I somehow never quite found the time. :-)

					Jordan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1455.849699813>