1# $OpenBSD: README,v 1.10 2001/01/29 01:58:25 niklas Exp $ 2 3# @(#)README 8.149 (Berkeley) 7/14/97 4 5This is version 1.79 (7/14/97) of nex/nvi, a reimplementation of the ex/vi 6text editors originally distributed as part of the Fourth Berkeley 7Software Distribution (4BSD), by the University of California, Berkeley. 8 9The 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 42Bug fixes and updated versions of this software will periodically be made 43available. For more information see: 44 45 http://www.bostic.com/vi 46 47To ask questions about vi, report vi problems, request notification of 48future releases and/or bug fixes, or to contact the authors for any reason, 49please send email to: 50 51 bostic@bostic.com 52 53=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 54o This software is several years old and is the product of many folks' work. 55 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. 63 64 Elan Amir did the original 4BSD curses work that made it possible 65 to support a full-screen editor using curses. 66 67 George Neville-Neil added the Tcl interpreter, and the initial 68 interpreter design was his. 69 70 Sven Verdoolaege added the Perl interpreter. 71 72 Rob Mayoff provided the original Cscope support. 73 74o Many, many people suggested enhancements, and provided bug reports and 75 testing, far too many to individually thank. 76 77o 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 86o And... 87 The financial support of UUNET Communications Services is gratefully 88 acknowledged. 89 90=-=-=-=-=-=-=-=-=-=-= 91o Status: 92 93This software is in beta test, and it's pretty stable. Almost all of the 94historic functionality in ex/vi is there, the only major missing pieces 95are open mode and the lisp edit option. 96 97Nvi is largely 8-bit clean. This isn't difficult to fix, and was left in 98during initial development to keep things simple. Wide character support 99will be integrated at the same time that it is made fully 8-bit clean. 100 101There aren't a lot of new features in nex/nvi, but there are a few things 102you 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 104information. 105 106=-=-=-=-=-=-=-=-=-=-= 107o Debugging: 108 109Code fixes are greatly appreciated, of course, but if you can't provide 110them, please email me as much information as you can as to how I might 111reproduce the bug, and I'll try to fix it locally. Stack traces of core 112dumps are only rarely helpful -- an example file with a set of keystrokes 113that causes the problem is almost invariably necessary. I know it's 114annoying, but simply playing with the bug until you can reproduce it at 115will, with minimal keystrokes, is immensely helpful to me. 116 117Please 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 (EXINIT, NEXINIT) values. (Cutting and pasting the output 124 of ":set all" is usually sufficient.) 125 126If you want to do your own debugging, recompile the program with DEBUG 127defined. (Configuring with --enable-debug will do this for you.) This 128turns on the additional command-line option -D, that takes either s or w 129as 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 131and wait for you to enter a <carriage-return> to continue. 132 133If you're running a memory checker (e.g. Purify) on nvi, you will first 134want to recompile everything with "-DPURIFY" set in the CFLAGS. This 135initializes allocated pages in the DB code, and free's allocated memory 136at the end of the nvi execution. 137