=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/vi/README,v retrieving revision 1.1 retrieving revision 1.2 diff -c -r1.1 -r1.2 *** src/usr.bin/vi/README 1995/10/18 08:46:33 1.1 --- src/usr.bin/vi/README 1996/05/22 11:33:14 1.2 *************** *** 1,72 **** ! # @(#)README 8.86 (Berkeley) 8/17/94 ! This is the README for version 1.34 of nex/nvi, a freely redistributable ! replacement for the Berkeley ex and vi text editors. The compressed or ! gzip'd archives for this and future versions, can be retrieved by using ! anonymous ftp to ftp.cs.berkeley.edu, from the file ucb/4bsd/nvi.tar.Z, ! or ucb/4bsd/nvi.tar.gz. ! If you have any questions about nvi, or problems making it work, please ! contact me by electronic mail at one of the following addresses: uunet!bostic bostic@cs.berkeley.edu Keith Bostic =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ! o Redistribution: ! This software is copyrighted by the The Regents of the University of ! California, but may be freely redistributed (or sold, or used to line ! your birdcage) under the following conditions: ! /*- ! * Copyright (c) 1991, 1992, 1993, 1994 ! * The Regents of the University of California. All rights reserved. ! * ! * Redistribution and use in source and binary forms, with or without ! * modification, are permitted provided that the following conditions ! * are met: ! * 1. Redistributions of source code must retain the above copyright ! * notice, this list of conditions and the following disclaimer. ! * 2. Redistributions in binary form must reproduce the above copyright ! * notice, this list of conditions and the following disclaimer in the ! * documentation and/or other materials provided with the distribution. ! * 3. All advertising materials mentioning features or use of this software ! * must display the following acknowledgement: ! * This product includes software developed by the University of ! * California, Berkeley and its contributors. ! * 4. Neither the name of the University nor the names of its contributors ! * may be used to endorse or promote products derived from this software ! * without specific prior written permission. ! * ! * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ! * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ! * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ! * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE ! * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ! * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ! * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ! * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ! * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ! * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ! * SUCH DAMAGE. ! */ ! =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ! o Credit where it's due: ! This software was originally derived from software contributed ! to the University of California, Berkeley by Steve Kirkendall, ! the author of the vi clone elvis. Without his work, this work ! would have been far more difficult. ! POSIX 1003.2 style regular expression support is courtesy of ! Henry Spencer, for which I am *very* grateful. ! The curses library was originally done by Ken Arnold. Scrolling ! and general reworking for 4.4BSD was done by Elan Amir. o From the original vi acknowledgements, by William Joy and Mark Horton: --- 1,52 ---- ! # @(#)README 8.135 (Berkeley) 5/18/96 ! This is the README for nex/nvi, a freely redistributable replacement for ! the ex/vi text editors originally distributed as part of the Fourth ! Berkeley Software Distribution (4BSD), by the University of California, ! Berkeley. ! The source code for nex/nvi can be retrieved by using anonymous ftp to ! ftp.cs.berkeley.edu. The files ucb/4bsd/nvi.tar.Z and ucb/4bsd/nvi.tar.gz ! are the compressed and gzip'd archives, respectively, of version 1.34 of ! nex/nvi. This version is believed to be stable and reasonably problem ! free. The file ucb/4bsd/nvi.ALPHA.1.66.tar.gz is a gzip'd archive of the ! current alpha-test release of nex/nvi, version 1.66. This version reflects ! the current development tree, and is more likely to have unanticipated ! problems. + See the file build/README for information on building nvi. + + See the file LAYOUT for a description of where everything is. + + If you have any questions about nex/nvi, or problems making it work, + please contact me by electronic mail at one of the following addresses: + uunet!bostic bostic@cs.berkeley.edu Keith Bostic =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ! o This software is several years old and is the product of many folks' work. ! This software was originally derived from software contributed to ! the University of California, Berkeley by Steve Kirkendall, the ! author of the vi clone elvis. Without his work, this work would ! have been far more difficult. ! IEEE POSIX 1003.2 style regular expression support is courtesy of ! Henry Spencer, for which I am *very* grateful. ! Elan Amir did the original 4BSD curses work that made it possible ! to support a full-screen editor using curses. ! George Neville-Neil added the Tcl interpreter, and the initial ! interpreter design was his. ! Sven Verdoolaege added the Perl5 interpreter. ! o Many, many people provided enhancements, bug reports and testing, far too ! many to individually thank. o From the original vi acknowledgements, by William Joy and Mark Horton: *************** *** 84,118 **** =-=-=-=-=-=-=-=-=-=-= o Status: ! This software is in beta test, and it's pretty stable. Almost all of ! the historic functionality in ex/vi is there, the only major missing ! pieces are open mode and the lisp option. (Also, the options hardtabs, ! optimize, redraw, and slowopen are recognized, but ignored.) ! Nvi is mostly 8-bit clean. This isn't difficult to fix, and was left ! in during initial development to keep things simple. Wide character ! support will be integrated at the same time that it is made fully 8-bit ! clean. There aren't a lot of new features in nex/nvi, but there are a few things you might like. The "Additional Features" section of the reference page (USD.doc/vi.ref/vi.ref.txt, USD.doc/vi.ref/vi.ref.ps) has more information. =-=-=-=-=-=-=-=-=-=-= - o Porting information: - - The directory "PORT" has directories for specific OS/machine combinations, - including V7-style Makefiles, for building nex/nvi on different machines. - See the file PORT/README for detailed information. - - =-=-=-=-=-=-=-=-=-=-= o Debugging: ! Code fixes are appreciated, of course, but if you can't provide them, ! please email me as much information as you can as to how to reproduce ! the bug, and I'll try to fix it locally. Stack traces of core dumps ! are only rarely helpful -- an example file with a set of keystrokes that ! causes the problem is almost invariably necessary. Please include the following in the bug report; --- 64,92 ---- =-=-=-=-=-=-=-=-=-=-= o Status: ! This software is in beta test, and it's pretty stable. Almost all of the ! historic functionality in ex/vi is there, the only major missing pieces ! are open mode and the lisp option. (Also, the options hardtabs, optimize, ! redraw, and slowopen are recognized, but ignored.) ! Nvi is largely 8-bit clean. This isn't difficult to fix, and was left in ! during initial development to keep things simple. Wide character support ! will be integrated at the same time that it is made fully 8-bit clean. There aren't a lot of new features in nex/nvi, but there are a few things you might like. The "Additional Features" section of the reference page (USD.doc/vi.ref/vi.ref.txt, USD.doc/vi.ref/vi.ref.ps) has more information. =-=-=-=-=-=-=-=-=-=-= o Debugging: ! Code fixes are greatly appreciated, of course, but if you can't provide ! them, please email me as much information as you can as to how I might ! reproduce the bug, and I'll try to fix it locally. Stack traces of core ! dumps are only rarely helpful -- an example file with a set of keystrokes ! that causes the problem is almost invariably necessary. I know it's ! annoying, but simply playing with the bug until you can reproduce it at ! will with minimal keystrokes is immensely helpful to me. Please include the following in the bug report; *************** *** 120,200 **** o The row/column dimensions of the screen (80 x 32). o Unless you're confident that they're not part of the problem, your startup files (.exrc, .nexrc) and the environment variable ! (EXININT, NEXINIT) values. (Cutting and pasting the output of ":set all" is usually sufficient.) ! If you're running a memory checker (e.g. Purify) on nvi, you will want ! to recompile everything with "-DPURIFY" in the CFLAGS, first. By ! default, allocated pages are not initialized by the DB code, and they ! will show up as reads of uninitialized memory in the buffer write routines. ! =-=-=-=-=-=-=-=-=-=-= ! o Directory layout: ! ! nvi/USD.doc: ! Ex/vi documentation, both historic and current. ! ! edit/ Roff source for "Edit: A tutorial", USD:14 in the ! 4.3BSD manuals. ! ex/ Roff source for "Ex Reference Manual -- Version ! 3.7", USD:16 in the 4.3BSD manuals. ! vi/ Roff source for "An Introduction to Display ! Editing with Vi", USD:15 in the 4.3BSD manuals. ! Includes the "Vi Quick Reference" card. ! vi.man/ Manual page for nex/nvi; an updated version of ! the document distributed with 4.4BSD-Lite. ! vi.ref/ Reference document for nex/nvi; an updated version ! of the document distributed with 4.4BSD-Lite. ! ! nvi/common: ! Source files for pieces of code that are shared by all the editors, ! like searching and logging code or code translating line numbers ! into requests to the dbopen(3) database code. It also has the ! interface code for modifying "records" in the underlying database. ! ! nvi/docs: ! Random nvi documentation: ! ! README -- Nvi main README file. ! bugs.current -- Major known bugs in the current nvi. ! changelog -- Log of changes from version to version. ! features -- Todo list, suggested features list. ! internals/ ! autowrite -- Vi autowrite option discussion. ! gdb.script -- GDB debugging scripts. ! input -- Vi maps, executable buffers, and input discussion. ! quoting -- Vi quoting discussion. ! structures -- Out-of-date nvi internal structure description. ! tutorial/ -- Historic vi tutorial(s), of unknown quality. ! ! nvi/ex: ! The ex source code. Because vi has the colon command, lots of ! this code is used by vi. Generally, if functionality is shared ! by both ex and vi, it's in nvi/ex. If it's vi only, it's in ! nvi/vi. Files are generally named by the command(s) they support, ! but occasionally with a name that describes their functionality. ! ! nvi/install: ! Things to install on the local system. ! ! recover.script -- Vi recovery script. ! ! nvi/PORT: ! Porting directories, one per OS/architecture combination. See ! nvi/PORT/README for porting information. ! ! curses/ -- 4.4BSD curses implementation ! db/ -- 4.4BSD DB routines. ! regex/ -- Henry Spencer's POSIX.2 RE support. ! ! nvi/sex: ! The screen support for the ex editor. ! ! nvi/svi: ! The screen support for a curses based vi editor. ! ! nvi/vi: ! The vi source code. ! ! nvi/xaw: ! Place reserved for an X11 (Athena Widget) screen. --- 94,110 ---- o The row/column dimensions of the screen (80 x 32). o Unless you're confident that they're not part of the problem, your startup files (.exrc, .nexrc) and the environment variable ! (EXINIT, NEXINIT) values. (Cutting and pasting the output of ":set all" is usually sufficient.) ! If you want to do your own debugging, recompile the program with DEBUG ! defined. (Configuring with --enable-debug will do this for you.) This ! turns on the additional command-line option -D, that takes either s or w ! as an argument. The option -Ds causes nvi to ignore the EXINIT and ! .exrc files on startup, and -Dw causes nvi to print out the process id ! and wait for you to enter a to continue. ! If you're running a memory checker (e.g. Purify) on nvi, you will first ! want to recompile everything with "-DPURIFY" set in the CFLAGS. This ! initializes allocated pages in the DB code, and free's allocated memory ! at the end of the nvi execution.