Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 26 Nov 1995 18:30:18 -0500
From:      bostic@bsdi.com (Keith Bostic)
To:        /tmp/vilist@python.bostic.com
Subject:   Nex/Nvi version 1.56 now available for anonymous ftp.
Message-ID:  <199511262330.SAA05797@python.bostic.com>

next in thread | raw e-mail | index | archive | help
Alpha version 1.56 of nex/nvi is now available for anonymous ftp from
ftp.cs.berkeley.edu:ucb/4bsd/nvi.ALPHA.1.56.tar.gz.

The code changes in version 1.56 are extensive, although the base nvi
functionality has changed only in minor ways.  This version includes the
long-threatened reorganization to support new screen types, including X11
screens.  The screen code is now completely isolated, and is about 2000
lines of C for the curses screen.

There are a few new features:

	+ File name completion is now available on the colon command
	  line.  Setting the editor option "filec", and then entering
	  <escape> will complete the current pathname and/or display
	  possible pathname completions.

	+ The secure edit option disallows access to other applications
	  from within vi.  While this greatly enhances security, it
	  also means that file name expansion (e.g., ":edit $variable"),
	  will no longer work.

	+ Timeouts for the <escape> key are now separately configurable,
	  using the "escapetime" edit option.

	+ There's a new directory, "tk".

	  The tk directory contains support to use Tk text widget as the
	  vi screen, instead of using the curses terminal interface.  This
	  still needs a lot of work, but the basic vi functionality is in
	  place.  This work is based on work by Wolfgang Fischer
	  (Wolfgang.Fischer@stm.mchp.sni.de), in particular the Tk screen
	  to change options is almost entirely his work.

	  If you'd like to try it, do "make tknvi" in the PORT directory.
	  I don't suggest it for real use, for two reasons.  First, it's
	  only lightly tested, and second, it appears that the Tk text
	  widget is too slow to be used in this fashion.  I'm trying to
	  find someone to help me turn this into a true Tk text widget
	  instead of driving the standard Tk text widget -- if you could
	  help me with this, please let me know!

	+ There's a new directory, "tclapi".

	  The tclapi directory contains preliminary support, written by
	  George Neville-Neal (gnn@abekas.com), to support a Tcl
	  interpreter inside nvi.  See below for more information on the
	  Tcl interpreter.

Some of the more recent new features of which you may not be aware:

	+ The :split command has been replaced with capital letter forms
	  of the :next, :edit, :ex, :visual, :tag and :previous commands,
	  e.g. ":Next *.c" splits the screen and edits the new file list
	  in a new screen.

	+ Single line screens are now supported.

	+ Ex now runs in tty canonical mode.

	+ All ex commands are now supported in the EXINIT variable or in
	  the .exrc files.

	+ There's a new edit option "wraplen", which offsets from the left
	  margin, instead of the right, as done by "wrapmargin".

	+ Two new edit options, "print" and "noprint", allow you to
	  specify if specific character values are printable.

	+ Nvi now has message catalogs for Dutch, German, Swedish and
	  Russian.  The German and Russian are a bit out of date at the
	  moment, hopefully they'll be fixed soon.

Some configuration changes:

	+ The PORT directory has been completely reworked so that the
	  modifications necessary for each individual port are as small
	  as possible.  In particular, the local "Makefile" is now named
	  "M.local", and all of the local Makefile changes should go
	  there.

	+ Nvi has been converted to use the System V interface to curses
	  instead of the 4BSD one.  Ports to systems with BSD curses
	  implementations must compile with BSD_CURSES_INTERFACE defined
	  (see the M.local file in your PORT directory for more
	  information.)

	  Nvi 1.56 always uses the native curses implementation, and this
	  distribution of nvi does not include an implementation of
	  curses.

A change log (in docs/changelog) is included in the distribution if you'd
like to review other changes which have been made.

I intend to begin making more frequent releases of nvi again.  Most of my
vi time over the past six months has gone into working on the POSIX 1003.2
ex/vi standard.  As that is mostly done, I'm going to try to finish up
the last major ex/vi conformance issues, open mode and the lisp edit
option.

I also want to replace 1.34 as the "stable" version as soon as possible.
Once a new version is known to be reasonably stable and portable, I will
replace 1.34 with it.

As always, thank you for running nvi, and please let me know if you have
any problems!

	Keith Bostic		bostic@cs.berkeley.edu
				uunet!bostic


=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
If you'd like to take the Tcl interpreter out for a spin:

+ Modify your PORT/<machine>/M.local file (the M.local file has
  the information as to what should be changed).

+ Rebuild nvi from scratch.

This adds the ex :tcl command, which has the usage:

	:[line [,line]] tcl [command]

For example, the command:

	:tcl source ../../tclapi/wc.tcl

loads the file wc.tcl, which defines the Tcl proc wc, which counts
the words in a set of lines.  Then:

	:tcl wc

will display the number of words in the entire file, and

	:3,5 tcl wc

will display the number of words in lines 3, 4 and 5.

See the file nvi/tclapi/tcl_tcl.c for a list of the vi interfaces
currently available for Tcl.

Once George Neville-Neal and I have finalized how this is all going to
fit together, we'll be writing up something more informative/official.
For now, if you want to do something and it's not obvious how, ping one
of us.



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