BSD 4_4_Lite2 development
authorCSRG <csrg@ucbvax.Berkeley.EDU>
Thu, 1 Dec 1994 08:16:47 +0000 (00:16 -0800)
committerCSRG <csrg@ucbvax.Berkeley.EDU>
Thu, 1 Dec 1994 08:16:47 +0000 (00:16 -0800)
Work on file usr/src/contrib/nvi.1.43/docs/features

Synthesized-from: CSRG/cd3/4.4BSD-Lite2

usr/src/contrib/nvi.1.43/docs/features [new file with mode: 0644]

diff --git a/usr/src/contrib/nvi.1.43/docs/features b/usr/src/contrib/nvi.1.43/docs/features
new file mode 100644 (file)
index 0000000..b38433b
--- /dev/null
@@ -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.