Trailing-Edge - PDP-10 Archives - integ_tools_tops20_v7_30-apr-86_dumper - tools/sed2/chrisold.let
There are 2 other files named chrisold.let in the archive. Click here to see a list.
				Paul Malquist
				Brigham Young University
				403 CB
				Provo, Utah 84602

	 Chris Hall
	 Digital Equipment Corporation
	 MRO 1-2L10
	 200 Forest Street
	 Marlborough, MA 01752

         Dear Chris:

         This tape includes the source and documentation to the VAX
         version of SED.  It also includes my COMPIL program, which
         does the same as the COMPIL programs on the DEC-10 and 20s.
         I included them because I have coded the <ENTER><EXIT>
         command to run COMPIL, just like it does on the 10.  There
         are four save sets on the tape: The first is SED.SAV, which
         includes all the files for SED.  The second save set is
         COMPIL.SAV, which contains all the sources and help files
         for COMPIL.  The third is SED2.SAV, which is a copy of the
         first save set, and the fourth is COMPIL2.SAV, which is
         another copy of COMPIL.  COMPIL is still under development:
         there may be bugs, and it doesn't have all the capabilities
         I hope to have in it eventually; still, I have found it to
         be quite useful.

	 I am aware of the following problems with SED, but I have
         not yet addressed them:

	 1.  The routine that converts a file from internal format to
             RMS variable format has a problem with a form feed
             followed by a CRLF.  Each time the file is edited, an
             additional CRLF is appended after the form feed.  This
             hasn't affected me too much, since I always put
             form-feeds at the beginning of a line of text.

	 2.  When windowing is in effect, entering insert-mode does
             not cause the insert-mode message to be displayed on the
	     bottom line (but it does cause the bottom line to be

	 3.  SED can not yet get its input file or write its output
             file to a record-oriented device (such as a mailbox).  I
             plan eventually to support this type of operation.
	 Here are a few random notes about SED that I think you
         should know about.

	 1.  There are three ways to tell SED what the terminal type
             is.  The most common way is to let VMS tell SED what
             type of terminal is being used.  This is the default if
             no other way is used.  This works fine if you are on a
             DEC terminal or on one defined as one of the foreign
             terminal types, but it isn't general enough for all
             terminals.  We have defined foreign terminal 1 (FT1) to
             be the Televideo 910 terminal, but I haven't used up any
             other terminal types.  For those users on other
             terminals, they can define a logical name "SED_TERMINAL"
             to be the terminal type, and SED will set up its tables
             accordingly.  For example, to set the terminal type to
             Infoton 200 (INF200), you would issue the command
             "DEFINE SED_TERMINAL INF200".  This method takes
             precedence over the normal VMS terminal type.  The third
             way to specify the terminal type is with the /TERM
             switch (I thought that conveyed the meaning of the
             switch more than /Z did).  This method takes precedence
             over all the others.  In my version of SED, the system
             terminal type of VT52 actually defaults to Visual-200;
             the only way to select a real VT52 is to use either
             option 2 or option 3 above.  I have done this because we
             have Visual 200 terminals connected to our system, but
             we don't have any VT52 terminals connected to the
             system.  Terminals in our public areas are all
             VT100-type terminals.

	 2.  In contrast to the way it is done on the DEC-10 and -20,
             the temporary files created when the pick and close
             buffers overflow to disk are truly invisible to the user
             on the VAX.  They are created as temporary files which
             are automatically deleted when they are closed.  They
             are never entered into any directory.

	 3.  The journal file is written in "STREAM" format, which is
             similar to the normal DEC-10 and -20 file format.
             Anytime SED edits a stream format file, it writes it out
             as a variable format file.  The journal recovery code
             expects the journal file to be in stream format, so
             journal recovery won't work if the file has been
             edited.  There is, however, a way around this problem.
             I do the incremental saves in stream format, so I don't
             have to be constantly converting to and from RMS format.
             If the journal file is edited, it must then be output
             using an incremental save, and then the edit should be
             aborted instead of exited normally, so the journal file
             will remain in stream format.  We can't just leave all
             files in stream format, because the compilers don't seem
             to be able to handle them that way.  They seem to require
             variable format files.

	 4.  There are several types of file formats on the VAX, and
             SED will read all of them as long as the file
             organization is sequential.  Be aware, though, that any
             formats other than variable (that includes fixed,
             variable with fixed control, and various stream formats)
             will be output by SED only in variable format.

	 5.  I have made some changes to the <SUBSTITUTE> command to
             properly display the results of the substitute when
             either the search string or the substitute string or both
             has imbedded CRLFs in it.  This involves counting the
             number of lines in each string and doing the right thing
             to the display to account for variations in the number
             of lines before and after the substitute.  You may want
             to make corresponding changes to your version of SED.

	 That's about all I can think of to tell you right now.  If
         you have questions, don't hesitate to call me.


				Paul Malquist, Systems Programmer