







  Rvi is a portable distributed screen editor (DSE).  It generates ``ed''
  commands for execution on a remote machine.  It was originally developed
  for remote screen editing on CRAY-2 supercomputers.

  Rvi is most useful

	o To do screen editing machines where a normal screen editor
	  is inappropriate (e.g. supercomputers, IBM mainframes)

	o In a distributed computing environment

	o Across slow networks (e.g. satellites, ARPANET)


  Portability was emphasized over efficiency.  (For example, it 
  uses curses rather than doing the CRT manipulations directly)


  Rvi has been tested on a number of machines, including

	Sun Microsystems SUN 2 and 3
	DEC VAX-750/780 (both SV and 4.2)
	AT&T UNIX PC
	IBM PC AT (Xenix 5 and iAPX268 V)
	Silicon Graphics IRIS (V)
	Gould CONCEPT 32 (UTX/32)
	Apollo (Domain IX)
	CRAY-2 (UNICOS) [loopback]

	

How to make rvi:

	Unpack the shar files.

	If you have termcap, type  cp Makefile.bsd Makefile

	If you have terminfo, type cp Makefile.usg Makefile. Also
	you should install BUGFIX and BUGFIX2 into your terminfo
	library.  (In particular, BUGFIX is required so that vt100
	terminals perform insert/delete line properly.)

	Type ``make''

	Test rvi by running rvtest.



Rvi talks through pipe file descriptors to ed.  The pipe descriptors should
be created by your terminal program, e.g. TELNET.  You are responsible for
making the necessary modifications to your TELNET program to do this.

Your TELNET program should catch an escape sequence (such as ^]rvi).  It
should then emit a /bin/ed command to the remote machine, create two pipes
on the local machine, and exec rvi.


Remember:

Rvi only emits whole lines terminated by a linefeed.  You do not need to
change the terminal modes; rvi takes care of that.   Remember to disable
local and remote echoing, and do not attempt nl-cr mapping.



Bugs:

The screen is redrawn twice on a full screen update across a window
boundary.  This is due to the nature of the window fetching algorithm.

Some heuristics are used to determine the version of the ed program.
Rvi may get confused by a non-standard version of ed (e.g. a version
of ed that print prompts.)

Termcap's Curses does not handle the "xn" braindamage flag.  I had to
hack in support for it.

Useful commands such as %, <, and > are not supported because I can't
think of a way to do them efficiently via ed.

Macros and tags are not supported.

Scrolling is slow under terminfo.


--
Alan Klietz
Minnesota Supercomputer Center (*)
2520 Broadway Drive
Lauderdale, MN  55113     UUCP:  ..ihnp4!dicome!mn-at1!alan.UUCP
Ph: +1 612 638 0577              ..caip!meccts!dicome!mn-at1!alan.UUCP
                          ARPA:  aek@umn-rei-uc.ARPA

(*) Formerly titled Research Equipment Incorporated.
    An affiliate of the University of Minnesota
