rewritten from the manual page; add Berkeley specific header
[unix-history] / usr / src / usr.bin / mail / cmdtab.c
CommitLineData
b059c7be
DF
1/*
2 * Copyright (c) 1980 Regents of the University of California.
0c5f72fb
KB
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms are permitted
6 * provided that this notice is preserved and that due credit is given
7 * to the University of California at Berkeley. The name of the University
8 * may not be used to endorse or promote products derived from this
9 * software without specific prior written permission. This software
10 * is provided ``as is'' without express or implied warranty.
b059c7be
DF
11 */
12
0c5f72fb
KB
13#ifdef notdef
14static char sccsid[] = "@(#)cmdtab.c 5.5 (Berkeley) %G%";
15#endif /* notdef */
1d3a1a2f
KS
16
17#include "def.h"
18
19/*
20 * Mail -- a mail program
21 *
22 * Define all of the command names and bindings.
23 */
24
1d3a1a2f 25extern int type(), preserve(), delete(), undelete(), next(), shell(), schdir();
828615a1 26extern int save(), help(), headers(), pdot(), respond(), editor();
0d149b8b 27extern int edstop(), rexit(), pcmdlist(), sendmail(), from(), copycmd();
1d3a1a2f
KS
28extern int messize(), psalloc(), deltype(), unset(), set(), source();
29extern int pversion(), group(), top(), core(), null(), stouch(), visual();
1bd5b11d 30extern int swrite(), dosh(), file(), echo(), Respond(), scroll(), ifcmd();
26210b9d 31extern int elsecmd(), endifcmd(), mboxit(), clobber(), alternates();
b041ccec 32extern int local(), folders(), igfield(), Type(), retfield(), more(), More();
de7ac1f4 33extern int unread(); /* , Header(); */
1d3a1a2f
KS
34
35struct cmd cmdtab[] = {
36 "next", next, NDMLIST, 0, MMNDEL,
37 "alias", group, M|RAWLIST, 0, 1000,
38 "print", type, MSGLIST, 0, MMNDEL,
39 "type", type, MSGLIST, 0, MMNDEL,
e6160718
KS
40 "Type", Type, MSGLIST, 0, MMNDEL,
41 "Print", Type, MSGLIST, 0, MMNDEL,
67cb9e50 42 "visual", visual, I|MSGLIST, 0, MMNORM,
1d3a1a2f 43 "top", top, MSGLIST, 0, MMNDEL,
c548598c
KS
44 "touch", stouch, W|MSGLIST, 0, MMNDEL,
45 "preserve", preserve, W|MSGLIST, 0, MMNDEL,
46 "delete", delete, W|P|MSGLIST, 0, MMNDEL,
47 "dp", deltype, W|MSGLIST, 0, MMNDEL,
48 "dt", deltype, W|MSGLIST, 0, MMNDEL,
1d3a1a2f
KS
49 "undelete", undelete, P|MSGLIST, MDELETED,MMNDEL,
50 "unset", unset, M|RAWLIST, 1, 1000,
cbaa6c31 51 "mail", sendmail, R|M|I|STRLIST, 0, 0,
b06be156 52 "mbox", mboxit, W|MSGLIST, 0, 0,
b041ccec
S
53 "more", more, MSGLIST, 0, MMNDEL,
54 "page", more, MSGLIST, 0, MMNDEL,
55 "More", More, MSGLIST, 0, MMNDEL,
56 "Page", More, MSGLIST, 0, MMNDEL,
de7ac1f4
S
57 "unread", unread, MSGLIST, 0, MMNDEL,
58 "Unread", unread, MSGLIST, 0, MMNDEL,
59 "new", unread, MSGLIST, 0, MMNDEL,
60 "New", unread, MSGLIST, 0, MMNDEL,
1d3a1a2f 61 "!", shell, I|STRLIST, 0, 0,
0d149b8b 62 "copy", copycmd, M|STRLIST, 0, 0,
1d3a1a2f
KS
63 "chdir", schdir, M|STRLIST, 0, 0,
64 "cd", schdir, M|STRLIST, 0, 0,
65 "save", save, STRLIST, 0, 0,
66 "source", source, M|STRLIST, 0, 0,
67 "set", set, M|RAWLIST, 0, 1000,
68 "shell", dosh, I|NOLIST, 0, 0,
69 "version", pversion, M|NOLIST, 0, 0,
70 "group", group, M|RAWLIST, 0, 1000,
71 "write", swrite, STRLIST, 0, 0,
72 "from", from, MSGLIST, 0, MMNORM,
1bd5b11d 73 "file", file, T|M|RAWLIST, 0, 1,
176b7b1e 74 "folder", file, T|M|RAWLIST, 0, 1,
c8883d70 75 "folders", folders, T|M|RAWLIST, 0, 1,
1d3a1a2f
KS
76 "?", help, M|NOLIST, 0, 0,
77 "z", scroll, M|STRLIST, 0, 0,
78 "headers", headers, MSGLIST, 0, MMNDEL,
79 "help", help, M|NOLIST, 0, 0,
80 "=", pdot, NOLIST, 0, 0,
cbaa6c31
KS
81 "Reply", Respond, R|I|MSGLIST, 0, MMNDEL,
82 "Respond", Respond, R|I|MSGLIST, 0, MMNDEL,
83 "reply", respond, R|I|MSGLIST, 0, MMNDEL,
84 "respond", respond, R|I|MSGLIST, 0, MMNDEL,
67cb9e50 85 "edit", editor, I|MSGLIST, 0, MMNORM,
e90df9d9 86 "echo", echo, M|RAWLIST, 0, 1000,
1d3a1a2f
KS
87 "quit", edstop, NOLIST, 0, 0,
88 "list", pcmdlist, M|NOLIST, 0, 0,
15002fd1 89 "local", local, M|RAWLIST, 0, 1000,
8715a8f1
KS
90 "xit", rexit, M|NOLIST, 0, 0,
91 "exit", rexit, M|NOLIST, 0, 0,
1d3a1a2f 92 "size", messize, MSGLIST, 0, MMNDEL,
c548598c 93 "hold", preserve, W|MSGLIST, 0, MMNDEL,
e90df9d9
KS
94 "if", ifcmd, F|M|RAWLIST, 1, 1,
95 "else", elsecmd, F|M|RAWLIST, 0, 0,
96 "endif", endifcmd, F|M|RAWLIST, 0, 0,
26210b9d 97 "alternates", alternates, M|RAWLIST, 0, 1000,
e6160718
KS
98 "ignore", igfield, M|RAWLIST, 0, 1000,
99 "discard", igfield, M|RAWLIST, 0, 1000,
46053c99 100 "retain", retfield, M|RAWLIST, 0, 1000,
de7ac1f4 101/* "Header", Header, STRLIST, 0, 1000, */
1d3a1a2f
KS
102 "core", core, M|NOLIST, 0, 0,
103 "#", null, M|NOLIST, 0, 0,
cafd3e72 104 "clobber", clobber, M|RAWLIST, 0, 1,
1d3a1a2f
KS
105 0, 0, 0, 0, 0
106};