4.4BSD snapshot (revision 8.1); add 1993 to copyright
[unix-history] / usr / src / usr.bin / mail / cmdtab.c
index a19b694..92d7a5e 100644 (file)
@@ -1,6 +1,16 @@
-#
+/*
+ * Copyright (c) 1980, 1993
+ *     The Regents of the University of California.  All rights reserved.
+ *
+ * %sccs.include.redist.c%
+ */
+
+#ifndef lint
+static char sccsid[] = "@(#)cmdtab.c   8.1 (Berkeley) %G%";
+#endif /* not lint */
 
 #include "def.h"
 
 #include "def.h"
+#include "extern.h"
 
 /*
  * Mail -- a mail program
 
 /*
  * Mail -- a mail program
@@ -8,17 +18,6 @@
  * Define all of the command names and bindings.
  */
 
  * Define all of the command names and bindings.
  */
 
-static char *SccsId = "@(#)cmdtab.c    2.9 %G%";
-
-extern int type(), preserve(), delete(), undelete(), next(), shell(), schdir();
-extern int save(), help(), headers(), pdot(), strace(), respond(), editor();
-extern int edstop(), rexit(), pcmdlist(), sendmail(), from(), copycmd();
-extern int messize(), psalloc(), deltype(), unset(), set(), source();
-extern int pversion(), group(), top(), core(), null(), stouch(), visual();
-extern int swrite(), dosh(), file(), echo(), Respond(), scroll(), ifcmd();
-extern int elsecmd(), endifcmd(), mboxit(), clobber(), alternates();
-extern int local(), folders(), igfield(), Type();
-
 struct cmd cmdtab[] = {
        "next",         next,           NDMLIST,        0,      MMNDEL,
        "alias",        group,          M|RAWLIST,      0,      1000,
 struct cmd cmdtab[] = {
        "next",         next,           NDMLIST,        0,      MMNDEL,
        "alias",        group,          M|RAWLIST,      0,      1000,
@@ -37,12 +36,17 @@ struct cmd cmdtab[] = {
        "unset",        unset,          M|RAWLIST,      1,      1000,
        "mail",         sendmail,       R|M|I|STRLIST,  0,      0,
        "mbox",         mboxit,         W|MSGLIST,      0,      0,
        "unset",        unset,          M|RAWLIST,      1,      1000,
        "mail",         sendmail,       R|M|I|STRLIST,  0,      0,
        "mbox",         mboxit,         W|MSGLIST,      0,      0,
+       "more",         more,           MSGLIST,        0,      MMNDEL,
+       "page",         more,           MSGLIST,        0,      MMNDEL,
+       "More",         More,           MSGLIST,        0,      MMNDEL,
+       "Page",         More,           MSGLIST,        0,      MMNDEL,
+       "unread",       unread,         MSGLIST,        0,      MMNDEL,
        "!",            shell,          I|STRLIST,      0,      0,
        "copy",         copycmd,        M|STRLIST,      0,      0,
        "!",            shell,          I|STRLIST,      0,      0,
        "copy",         copycmd,        M|STRLIST,      0,      0,
-       "chdir",        schdir,         M|STRLIST,      0,      0,
-       "cd",           schdir,         M|STRLIST,      0,      0,
+       "chdir",        schdir,         M|RAWLIST,      0,      1,
+       "cd",           schdir,         M|RAWLIST,      0,      1,
        "save",         save,           STRLIST,        0,      0,
        "save",         save,           STRLIST,        0,      0,
-       "source",       source,         M|STRLIST,      0,      0,
+       "source",       source,         M|RAWLIST,      1,      1,
        "set",          set,            M|RAWLIST,      0,      1000,
        "shell",        dosh,           I|NOLIST,       0,      0,
        "version",      pversion,       M|NOLIST,       0,      0,
        "set",          set,            M|RAWLIST,      0,      1000,
        "shell",        dosh,           I|NOLIST,       0,      0,
        "version",      pversion,       M|NOLIST,       0,      0,
@@ -51,7 +55,7 @@ struct cmd cmdtab[] = {
        "from",         from,           MSGLIST,        0,      MMNORM,
        "file",         file,           T|M|RAWLIST,    0,      1,
        "folder",       file,           T|M|RAWLIST,    0,      1,
        "from",         from,           MSGLIST,        0,      MMNORM,
        "file",         file,           T|M|RAWLIST,    0,      1,
        "folder",       file,           T|M|RAWLIST,    0,      1,
-       "folders",      folders,        T|M|RAWLIST,    0,      1,
+       "folders",      folders,        T|M|NOLIST,     0,      0,
        "?",            help,           M|NOLIST,       0,      0,
        "z",            scroll,         M|STRLIST,      0,      0,
        "headers",      headers,        MSGLIST,        0,      MMNDEL,
        "?",            help,           M|NOLIST,       0,      0,
        "z",            scroll,         M|STRLIST,      0,      0,
        "headers",      headers,        MSGLIST,        0,      MMNDEL,
@@ -63,9 +67,8 @@ struct cmd cmdtab[] = {
        "respond",      respond,        R|I|MSGLIST,    0,      MMNDEL,
        "edit",         editor,         I|MSGLIST,      0,      MMNORM,
        "echo",         echo,           M|RAWLIST,      0,      1000,
        "respond",      respond,        R|I|MSGLIST,    0,      MMNDEL,
        "edit",         editor,         I|MSGLIST,      0,      MMNORM,
        "echo",         echo,           M|RAWLIST,      0,      1000,
-       "quit",         edstop,         NOLIST,         0,      0,
+       "quit",         quitcmd,        NOLIST,         0,      0,
        "list",         pcmdlist,       M|NOLIST,       0,      0,
        "list",         pcmdlist,       M|NOLIST,       0,      0,
-       "local",        local,          M|RAWLIST,      0,      1000,
        "xit",          rexit,          M|NOLIST,       0,      0,
        "exit",         rexit,          M|NOLIST,       0,      0,
        "size",         messize,        MSGLIST,        0,      MMNDEL,
        "xit",          rexit,          M|NOLIST,       0,      0,
        "exit",         rexit,          M|NOLIST,       0,      0,
        "size",         messize,        MSGLIST,        0,      MMNDEL,
@@ -76,6 +79,11 @@ struct cmd cmdtab[] = {
        "alternates",   alternates,     M|RAWLIST,      0,      1000,
        "ignore",       igfield,        M|RAWLIST,      0,      1000,
        "discard",      igfield,        M|RAWLIST,      0,      1000,
        "alternates",   alternates,     M|RAWLIST,      0,      1000,
        "ignore",       igfield,        M|RAWLIST,      0,      1000,
        "discard",      igfield,        M|RAWLIST,      0,      1000,
+       "retain",       retfield,       M|RAWLIST,      0,      1000,
+       "saveignore",   saveigfield,    M|RAWLIST,      0,      1000,
+       "savediscard",  saveigfield,    M|RAWLIST,      0,      1000,
+       "saveretain",   saveretfield,   M|RAWLIST,      0,      1000,
+/*     "Header",       Header,         STRLIST,        0,      1000,   */
        "core",         core,           M|NOLIST,       0,      0,
        "#",            null,           M|NOLIST,       0,      0,
        "clobber",      clobber,        M|RAWLIST,      0,      1,
        "core",         core,           M|NOLIST,       0,      0,
        "#",            null,           M|NOLIST,       0,      0,
        "clobber",      clobber,        M|RAWLIST,      0,      1,