Annotation of src/usr.bin/vi/README, Revision 1.10
1.10 ! niklas 1: # $OpenBSD$
! 2:
1.9 millert 3: # @(#)README 8.149 (Berkeley) 7/14/97
1.1 deraadt 4:
1.9 millert 5: This is version 1.79 (7/14/97) of nex/nvi, a reimplementation of the ex/vi
6: text editors originally distributed as part of the Fourth Berkeley
7: Software Distribution (4BSD), by the University of California, Berkeley.
8:
9: The directory layout is as follows:
10:
11: FAQ ........... Frequently asked questions.
12: LICENSE ....... Copyright, use and redistribution information.
13: README ........ This file.
14: catalog ....... Message catalogs; see catalog/README.
15: changelog ..... Log of changes from version to version.
16: cl ............ Vi interface to the curses(3) library.
17: clib .......... C library replacement source code.
18: common ........ Code shared by ex and vi.
19: curses ........ A stripped-down, replacement curses(3) library.
20: db ............ A stripped-down, replacement db(3) library.
21: dist .......... Various files used to build the vi distribution.
22: docs .......... Ex/vi documentation, both current and historic.
23: docs/README ... Documentation overview.
24: docs/edit ..... Edit: A tutorial.
25: docs/exref .... Ex Reference Manual -- Version 3.7.
26: docs/vi.man ... UNIX manual page for nex/nvi.
27: docs/vi.ref ... Nex/nvi reference manual.
28: docs/vitut .... An Introduction to Display Editing with Vi.
29: ex ............ Ex source code.
30: include ....... Replacement include files.
31: ip ............ Library interface to vi: vi side.
32: ipc ........... Library interface to vi: application side.
33: motif ......... Vi motif application.
34: motif_l ....... Motif library interface to vi.
35: perl_api ...... Perl scripting language support.
36: perl_scripts .. Perl scripts.
37: regex ......... POSIX 1003.2 regular expression library.
38: tcl_api ....... Tcl scripting language support.
39: tcl_scripts ... Tcl scripts.
40: vi ............ Vi source code.
41:
42: Bug fixes and updated versions of this software will periodically be made
43: available. For more information see:
44:
45: http://www.bostic.com/vi
46:
47: To ask questions about vi, report vi problems, request notification of
48: future releases and/or bug fixes, or to contact the authors for any reason,
49: please send email to:
1.1 deraadt 50:
1.9 millert 51: bostic@bostic.com
1.1 deraadt 52:
53: =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
1.2 deraadt 54: o This software is several years old and is the product of many folks' work.
1.1 deraadt 55:
1.2 deraadt 56: This software was originally derived from software contributed to
57: the University of California, Berkeley by Steve Kirkendall, the
58: author of the vi clone elvis. Without his work, this work would
59: have been far more difficult.
60:
61: IEEE POSIX 1003.2 style regular expression support is courtesy of
62: Henry Spencer, for which I am *very* grateful.
1.1 deraadt 63:
1.2 deraadt 64: Elan Amir did the original 4BSD curses work that made it possible
65: to support a full-screen editor using curses.
1.1 deraadt 66:
1.2 deraadt 67: George Neville-Neil added the Tcl interpreter, and the initial
68: interpreter design was his.
1.1 deraadt 69:
1.6 downsj 70: Sven Verdoolaege added the Perl interpreter.
1.1 deraadt 71:
1.5 michaels 72: Rob Mayoff provided the original Cscope support.
73:
74: o Many, many people suggested enhancements, and provided bug reports and
75: testing, far too many to individually thank.
1.1 deraadt 76:
77: o From the original vi acknowledgements, by William Joy and Mark Horton:
78:
79: Bruce Englar encouraged the early development of this display
80: editor. Peter Kessler helped bring sanity to version 2's
81: command layout. Bill Joy wrote versions 1 and 2.0 through 2.7,
82: and created the framework that users see in the present editor.
83: Mark Horton added macros and other features and made the editor
84: work on a large number of terminals and Unix systems.
85:
86: o And...
87: The financial support of UUNET Communications Services is gratefully
88: acknowledged.
89:
90: =-=-=-=-=-=-=-=-=-=-=
91: o Status:
92:
1.2 deraadt 93: This software is in beta test, and it's pretty stable. Almost all of the
94: historic functionality in ex/vi is there, the only major missing pieces
1.5 michaels 95: are open mode and the lisp edit option.
1.2 deraadt 96:
97: Nvi is largely 8-bit clean. This isn't difficult to fix, and was left in
98: during initial development to keep things simple. Wide character support
99: will be integrated at the same time that it is made fully 8-bit clean.
1.1 deraadt 100:
101: There aren't a lot of new features in nex/nvi, but there are a few things
1.3 mickey 102: you might like. The "Additional Features" section of the reference work
103: (docs/USD.doc/vi.ref/vi.ref.txt, docs/USD.doc/vi.ref/vi.ref.ps) has more
104: information.
1.1 deraadt 105:
106: =-=-=-=-=-=-=-=-=-=-=
107: o Debugging:
108:
1.2 deraadt 109: Code fixes are greatly appreciated, of course, but if you can't provide
110: them, please email me as much information as you can as to how I might
111: reproduce the bug, and I'll try to fix it locally. Stack traces of core
112: dumps are only rarely helpful -- an example file with a set of keystrokes
113: that causes the problem is almost invariably necessary. I know it's
114: annoying, but simply playing with the bug until you can reproduce it at
1.5 michaels 115: will, with minimal keystrokes, is immensely helpful to me.
1.1 deraadt 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
1.2 deraadt 123: (EXINIT, NEXINIT) values. (Cutting and pasting the output
1.1 deraadt 124: of ":set all" is usually sufficient.)
125:
1.2 deraadt 126: If you want to do your own debugging, recompile the program with DEBUG
127: defined. (Configuring with --enable-debug will do this for you.) This
128: turns on the additional command-line option -D, that takes either s or w
129: as an argument. The option -Ds causes nvi to ignore the EXINIT and
130: .exrc files on startup, and -Dw causes nvi to print out the process id
131: and wait for you to enter a <carriage-return> to continue.
132:
133: If you're running a memory checker (e.g. Purify) on nvi, you will first
134: want to recompile everything with "-DPURIFY" set in the CFLAGS. This
135: initializes allocated pages in the DB code, and free's allocated memory
136: at the end of the nvi execution.