BSD 4_3_Net_2 release
[unix-history] / usr / src / usr.bin / window / cmd2.c
index 6480112..7ee9a7d 100644 (file)
+/*
+ * Copyright (c) 1983 Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Edward Wang at The University of California, Berkeley.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *     This product includes software developed by the University of
+ *     California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
 #ifndef lint
 #ifndef lint
-static char *sccsid = "@(#)cmd2.c      3.29 84/04/08";
-#endif
+static char sccsid[] = "@(#)cmd2.c     3.40 (Berkeley) 6/6/90";
+#endif /* not lint */
 
 #include "defs.h"
 
 char *help_shortcmd[] = {
 
 #include "defs.h"
 
 char *help_shortcmd[] = {
-       "{1-9}   Select window {1-9} and return to conversation mode.",
-       "%{1-9}  Select window {1-9} but stay in command mode.",
-       "escape  Return to conversation mode without changing window.",
-       "^^      Return to conversation mode and change to previous window.",
-       "c{1-9}  Close window {1-9}.",
-       "w       Open a new window.",
-       "m{1-9}  Move window {1-9}.",
-       "M{1-9}  Move window {1-9} to previous position.",
-       "{^Y^E}  Scroll {up, down} one line",
-       "{^U^D}  Scroll {up, down} half a window.",
-       "{^B^F}  Scroll {up, down} a full window.",
-       "{hjkl}  Move cursor {left, down, up, right}.",
-       "^L      Redraw screen.",
-       "^Z      Suspend.",
-       "q       Quit.",
+       "#       Select window # and return to conversation mode",
+       "%#      Select window # but stay in command mode",
+       "escape  Return to conversation mode without changing window",
+       "^^      Return to conversation mode and change to previous window",
+       "c#      Close window #",
+       "w       Open a new window",
+       "m#      Move window #",
+       "M#      Move window # to its previous position",
+       "s#      Change the size of window #",
+       "S#      Change window # to its previous size",
+       "^Y      Scroll up one line",
+       "^E      Scroll down one line",
+       "^U      Scroll up half a window",
+       "^D      Scroll down half a window",
+       "^B      Scroll up a full window",
+       "^F      Scroll down a full window",
+       "h       Move cursor left",
+       "j       Move cursor down",
+       "k       Move cursor up",
+       "l       Move cursor right",
+       "^S      Stop output in current window",
+       "^Q      Restart output in current window",
+       "^L      Redraw screen",
+       "^Z      Suspend",
+       "q       Quit",
+       ":       Enter a long command",
        0
 };
 char *help_longcmd[] = {
        0
 };
 char *help_longcmd[] = {
-       ":%{1-9}               Select window {1-9}.",
-       ":close {1-9} . . .    Close windows.",
-       ":close all            Close all windows.",
-       ":cursor modes         Set the cursor modes.",
-       ":escape C             Set escape character to C.",
-       ":foreground {1-9} [off]",
-       "                      Make {1-9} a foreground window.",
-       ":label {1-9} string   Label window {1-9}.",
-       ":list                 List all windows.",
-       ":nline lines          Set the default number of lines",
-       "                      in window text buffers.",
-       ":shell string         Set default shell program to ``string.''",
-       ":source filename      Execute commands in ``filename.''",
-       ":terse [off]          Turn on (or off) terse mode.",
-       ":unset variable       Deallocate ``variable''.",
-       ":variable             List all variables.",
-       ":window row col nrow ncol [nline label pty frame shell]",
-       "                      Open a window at ``row'', ``col''",
-       "                      of size ``nrow'', ``ncol'',",
-       "                      with ``nline'', and ``label''.",
-       ":write {1-9} string . . .",
-       "                      Write strings to window {1-9}.",
+       ":alias name string ...  Make `name' an alias for `string ...'",
+       ":alias                  Show all aliases",
+       ":close # ...            Close windows",
+       ":close all              Close all windows",
+       ":cursor modes           Set the cursor modes",
+       ":echo # string ...      Print `string ...' in window #",
+       ":escape c               Set escape character to `c'",
+       ":foreground # flag      Make # a foreground window, if `flag' is true",
+       ":label # string         Set label of window # to `string'",
+       ":list                   List all open windows",
+       ":default_nline lines    Set default window buffer size to `lines'",
+       ":default_shell string ...",
+       "                        Set default shell to `string ...'",
+       ":default_smooth flag    Set default smooth scroll flag",
+       ":select #               Select window #",
+       ":smooth # flag          Set window # to smooth scroll mode",
+       ":source filename        Execute commands in `filename'",
+       ":terse flag             Set terse mode",
+       ":unalias name           Undefine `name' as an alias",
+       ":unset variable         Deallocate `variable'",
+       ":variable               List all variables",
+       ":window [row col nrow ncol nline label pty frame mapnl keepopen smooth shell]",
+       "                        Open a window at `row', `col' of size `nrow', `ncol',",
+       "                        with `nline' lines in the buffer, and `label'",
+       ":write # string ...     Write `string ...' to window # as input",
        0
 };
 
        0
 };
 
@@ -56,8 +106,8 @@ c_help()
                error("Can't open help window: %s.", wwerror());
                return;
        }
                error("Can't open help window: %s.", wwerror());
                return;
        }
-       wwprintf(w, "The escape character is %c, which gets you into command mode.\n\n",
-               escapec);
+       wwprintf(w, "The escape character is %c.\n", escapec);
+       wwprintf(w, "(# represents one of the digits from 1 to 9.)\n\n");
        if (help_print(w, "Short commands", help_shortcmd) >= 0)
                (void) help_print(w, "Long commands", help_longcmd);
        closeiwin(w);
        if (help_print(w, "Short commands", help_shortcmd) >= 0)
                (void) help_print(w, "Long commands", help_longcmd);
        closeiwin(w);