From: CSRG Date: Thu, 1 Dec 1994 08:16:47 +0000 (-0800) Subject: BSD 4_4_Lite2 development X-Git-Tag: BSD-4_4_Lite2~188 X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/commitdiff_plain/24cdd3b73e781ff56330ae4694414904ebad0a15 BSD 4_4_Lite2 development Work on file usr/src/contrib/nvi.1.43/docs/features Synthesized-from: CSRG/cd3/4.4BSD-Lite2 --- diff --git a/usr/src/contrib/nvi.1.43/docs/features b/usr/src/contrib/nvi.1.43/docs/features new file mode 100644 index 0000000000..b38433bee0 --- /dev/null +++ b/usr/src/contrib/nvi.1.43/docs/features @@ -0,0 +1,87 @@ +List of things that should be added: +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + ++ X11 (Tk, Motif, Xaw) interface. ++ Interpreted language (Perl5, Scheme, Tcl/Rush, Python) ++ Additional ports: Windows, Windows NT, MSDOS ++ Forms editing package; use RE's to verify field contents. ++ Internationalization, including wide character and multibyte support. ++ Support for single line window editing, including full editing + capability on the vi colon command line. ++ Rob Pike's sam style RE's. ++ Right-to-left and bottom to top text support. ++ Quitall command, to leave all windows. A ! will force the quit. + +List of suggested features: +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ++ Add a tab listing, e.g. "set tabs=8,16,32,64", so that ^T moves + to specific screen locations. + ++ Filename completion. While on the subject of completion, it would be + nice to have the completion mechanism found in tcsh version >= 6.03. + For instance, the completion for the `:cd' command will be directories + only. The completion for the `:set' command will be all options not + set at that moment, and for `:set un' will be all options that are set + at that moment. The completion for `:< count' will be the flags. + ++ Add a "push" command that would push a file on the tags stack. + (Essentially make tags a special case of the stack, and make + the stack more general purpose.) + ++ Make :script just run a command and edit the output, and :interactive, + which allows interactive shell session, instead of just the current + :script. + ++ Add tagging information to the man page so that users can display + the part of the man page that discusses the command in which they're + interested. + ++ Add a zone option so that you can declare that top/bottom few lines + of the screen aren't filled except by accident, so that the text + you ask for is always concentrated in the center of the screen. + ++ Add "set searchdir" for a list of directories to look in for + files to edit. The semantic is that ":e foo" is replaced with + the file name that is found, so there's no confusion as to + which file is written. + ++ Change + :di[splay] tags -> :tags + :di[splay] screens -> :screens + :di[splay] buffers -> :buffers + ++ A macro record function. Add the ability to record a sequence + of keystrokes into a named buffer for later use. Handy when + you're trying to build a semi-complex macro. + ++ The semantics of :split, :bg, and :fg aren't right. Someone needs to + rethink how they should interact. The main problem arises when users + want to get a window into a new file. Currently, the necessary sequence + is ":split newfile|^W|:bg". It would be nice if you could simply + background the current screen and edit a new one. + ++ An option to turn on a ``quarter plane'' model so that you can + go as far to the right or down as you wish. The File or the + current line is only extended if you actually put down a char at + the new location. Very handy for ascii graphics and tables. + ++ Some way of replacing the command bindings. For this to work + cleanly the notion of a command must be separate from that of a + key. (Simulate the Rand editor?) + ++ Vertical splitting, so you can see files side by side. + ++ Tracking. Two or more files are associated so that when one file + is scrolled up/down/left/right other files track by the same amount. + Tracking may be constrained such that two files only track vertically + or horizontally. This is relatively easy to implement. + ++ A status file so that the next time invocation of the editor returns + to the same place, with the same number of windows etc. In case of + change of the screen size, reasonable defaults are used. For each + window size and location of the window, name of the file and position + in it, any tab settings, any other settings for the window (such as + insert/overwrite mode, auto indent etc). Last search RE and maybe + direction. If a file does not exist the next time you invoke the + editor, its window is left in the same place but with some default + message.