[BACK]Return to README CVS log [TXT][DIR] Up to [local] / src / usr.bin / vi

Annotation of src/usr.bin/vi/README, Revision 1.1.1.1

1.1       deraadt     1: #      @(#)README      8.86 (Berkeley) 8/17/94
                      2:
                      3: This is the README for version 1.34 of nex/nvi, a freely redistributable
                      4: replacement for the Berkeley ex and vi text editors.  The compressed or
                      5: gzip'd archives for this and future versions, can be retrieved by using
                      6: anonymous ftp to ftp.cs.berkeley.edu, from the file ucb/4bsd/nvi.tar.Z,
                      7: or ucb/4bsd/nvi.tar.gz.
                      8:
                      9: If you have any questions about nvi, or problems making it work, please
                     10: contact me by electronic mail at one of the following addresses:
                     11:
                     12:        uunet!bostic
                     13:        bostic@cs.berkeley.edu
                     14:
                     15: Keith Bostic
                     16:
                     17: =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                     18: o Redistribution:
                     19:
                     20: This software is copyrighted by the The Regents of the University of
                     21: California, but may be freely redistributed (or sold, or used to line
                     22: your birdcage) under the following conditions:
                     23:
                     24: /*-
                     25:  * Copyright (c) 1991, 1992, 1993, 1994
                     26:  *     The Regents of the University of California.  All rights reserved.
                     27:  *
                     28:  * Redistribution and use in source and binary forms, with or without
                     29:  * modification, are permitted provided that the following conditions
                     30:  * are met:
                     31:  * 1. Redistributions of source code must retain the above copyright
                     32:  *    notice, this list of conditions and the following disclaimer.
                     33:  * 2. Redistributions in binary form must reproduce the above copyright
                     34:  *    notice, this list of conditions and the following disclaimer in the
                     35:  *    documentation and/or other materials provided with the distribution.
                     36:  * 3. All advertising materials mentioning features or use of this software
                     37:  *    must display the following acknowledgement:
                     38:  *     This product includes software developed by the University of
                     39:  *     California, Berkeley and its contributors.
                     40:  * 4. Neither the name of the University nor the names of its contributors
                     41:  *    may be used to endorse or promote products derived from this software
                     42:  *    without specific prior written permission.
                     43:  *
                     44:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     45:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     46:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     47:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     48:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     49:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     50:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     51:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     52:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     53:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     54:  * SUCH DAMAGE.
                     55:  */
                     56:
                     57: =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                     58: o Credit where it's due:
                     59:
                     60:        This software was originally derived from software contributed
                     61:        to the University of California, Berkeley by Steve Kirkendall,
                     62:        the author of the vi clone elvis.  Without his work, this work
                     63:        would have been far more difficult.
                     64:
                     65:        POSIX 1003.2 style regular expression support is courtesy of
                     66:        Henry Spencer, for which I am *very* grateful.
                     67:
                     68:        The curses library was originally done by Ken Arnold.  Scrolling
                     69:        and general reworking for 4.4BSD was done by Elan Amir.
                     70:
                     71: o From the original vi acknowledgements, by William Joy and Mark Horton:
                     72:
                     73:        Bruce Englar encouraged the early development of this display
                     74:        editor.  Peter Kessler helped bring sanity to version 2's
                     75:        command layout.  Bill Joy wrote versions 1 and 2.0 through 2.7,
                     76:        and created the framework that users see in the present editor.
                     77:        Mark Horton added macros and other features and made the editor
                     78:        work on a large number of terminals and Unix systems.
                     79:
                     80: o And...
                     81:        The financial support of UUNET Communications Services is gratefully
                     82:        acknowledged.
                     83:
                     84: =-=-=-=-=-=-=-=-=-=-=
                     85: o Status:
                     86:
                     87: This software is in beta test, and it's pretty stable.  Almost all of
                     88: the historic functionality in ex/vi is there, the only major missing
                     89: pieces are open mode and the lisp option.  (Also, the options hardtabs,
                     90: optimize, redraw, and slowopen are recognized, but ignored.)
                     91:
                     92: Nvi is mostly 8-bit clean.  This isn't difficult to fix, and was left
                     93: in during initial development to keep things simple.  Wide character
                     94: support will be integrated at the same time that it is made fully 8-bit
                     95: clean.
                     96:
                     97: There aren't a lot of new features in nex/nvi, but there are a few things
                     98: you might like.  The "Additional Features" section of the reference page
                     99: (USD.doc/vi.ref/vi.ref.txt, USD.doc/vi.ref/vi.ref.ps) has more information.
                    100:
                    101: =-=-=-=-=-=-=-=-=-=-=
                    102: o Porting information:
                    103:
                    104: The directory "PORT" has directories for specific OS/machine combinations,
                    105: including V7-style Makefiles, for building nex/nvi on different machines.
                    106: See the file PORT/README for detailed information.
                    107:
                    108: =-=-=-=-=-=-=-=-=-=-=
                    109: o Debugging:
                    110:
                    111: Code fixes are appreciated, of course, but if you can't provide them,
                    112: please email me as much information as you can as to how to reproduce
                    113: the bug, and I'll try to fix it locally.  Stack traces of core dumps
                    114: are only rarely helpful -- an example file with a set of keystrokes that
                    115: causes the problem is almost invariably necessary.
                    116:
                    117: Please include the following in the bug report;
                    118:
                    119:        o The version of nvi you're running (use :version to get it).
                    120:        o The row/column dimensions of the screen (80 x 32).
                    121:        o Unless you're confident that they're not part of the problem,
                    122:          your startup files (.exrc, .nexrc) and the environment variable
                    123:          (EXININT, NEXINIT) values.  (Cutting and pasting the output
                    124:          of ":set all" is usually sufficient.)
                    125:
                    126: If you're running a memory checker (e.g. Purify) on nvi, you will want
                    127: to  recompile everything with "-DPURIFY" in the CFLAGS, first.  By
                    128: default, allocated pages are not initialized by the DB code, and they
                    129: will show up as reads of uninitialized memory in the buffer write routines.
                    130:
                    131: =-=-=-=-=-=-=-=-=-=-=
                    132: o Directory layout:
                    133:
                    134: nvi/USD.doc:
                    135:        Ex/vi documentation, both historic and current.
                    136:
                    137:        edit/           Roff source for "Edit: A tutorial", USD:14 in the
                    138:                        4.3BSD manuals.
                    139:        ex/             Roff source for "Ex Reference Manual -- Version
                    140:                        3.7", USD:16 in the 4.3BSD manuals.
                    141:        vi/             Roff source for "An Introduction to Display
                    142:                        Editing with Vi", USD:15 in the 4.3BSD manuals.
                    143:                        Includes the "Vi Quick Reference" card.
                    144:        vi.man/         Manual page for nex/nvi; an updated version of
                    145:                        the document distributed with 4.4BSD-Lite.
                    146:        vi.ref/         Reference document for nex/nvi; an updated version
                    147:                        of the document distributed with 4.4BSD-Lite.
                    148:
                    149: nvi/common:
                    150:        Source files for pieces of code that are shared by all the editors,
                    151:        like searching and logging code or code translating line numbers
                    152:        into requests to the dbopen(3) database code.  It also has the
                    153:        interface code for modifying "records" in the underlying database.
                    154:
                    155: nvi/docs:
                    156:        Random nvi documentation:
                    157:
                    158:        README          -- Nvi main README file.
                    159:        bugs.current    -- Major known bugs in the current nvi.
                    160:        changelog       -- Log of changes from version to version.
                    161:        features        -- Todo list, suggested features list.
                    162:        internals/
                    163:            autowrite   -- Vi autowrite option discussion.
                    164:            gdb.script  -- GDB debugging scripts.
                    165:            input       -- Vi maps, executable buffers, and input discussion.
                    166:            quoting     -- Vi quoting discussion.
                    167:            structures  -- Out-of-date nvi internal structure description.
                    168:        tutorial/       -- Historic vi tutorial(s), of unknown quality.
                    169:
                    170: nvi/ex:
                    171:        The ex source code.  Because vi has the colon command, lots of
                    172:        this code is used by vi.  Generally, if functionality is shared
                    173:        by both ex and vi, it's in nvi/ex.  If it's vi only, it's in
                    174:        nvi/vi.  Files are generally named by the command(s) they support,
                    175:        but occasionally with a name that describes their functionality.
                    176:
                    177: nvi/install:
                    178:        Things to install on the local system.
                    179:
                    180:        recover.script  -- Vi recovery script.
                    181:
                    182: nvi/PORT:
                    183:        Porting directories, one per OS/architecture combination.  See
                    184:        nvi/PORT/README for porting information.
                    185:
                    186:        curses/         -- 4.4BSD curses implementation
                    187:        db/             -- 4.4BSD DB routines.
                    188:        regex/          -- Henry Spencer's POSIX.2 RE support.
                    189:
                    190: nvi/sex:
                    191:        The screen support for the ex editor.
                    192:
                    193: nvi/svi:
                    194:        The screen support for a curses based vi editor.
                    195:
                    196: nvi/vi:
                    197:        The vi source code.
                    198:
                    199: nvi/xaw:
                    200:        Place reserved for an X11 (Athena Widget) screen.