BSD 4_4 release
[unix-history] / usr / src / old / sh / msg.c
#ifndef lint
static char sccsid[] = "@(#)msg.c 4.6 5/8/89";
#endif
#
/*
* UNIX shell
*
* S. R. Bourne
* Bell Telephone Laboratories
*
*/
#include "defs.h"
#include "sym.h"
MSG version = "\nVERSION sys137 DATE 1978 Nov 6 14:29:22\n";
/* error messages */
MSG badopt = "bad option(s)";
MSG mailmsg = "you have mail\n";
MSG nospace = "no space";
MSG synmsg = "syntax error";
MSG badnum = "bad number";
MSG badparam = "parameter not set";
MSG badsub = "bad substitution";
MSG badcreate = "cannot create";
MSG illegal = "illegal io";
MSG restricted = "restricted";
MSG piperr = "cannot make pipe";
MSG badopen = "cannot open";
MSG coredump = " - core dumped";
MSG arglist = "arg list too long";
MSG txtbsy = "text busy";
MSG toobig = "too big";
MSG badexec = "cannot execute";
MSG notfound = "not found";
MSG badfile = "bad file number";
MSG badshift = "cannot shift";
MSG baddir = "bad directory";
MSG badtrap = "bad trap";
MSG wtfailed = "is read only";
MSG notid = "is not an identifier";
/* built in names */
MSG pathname = "PATH";
MSG homename = "HOME";
MSG mailname = "MAIL";
MSG fngname = "FILEMATCH";
MSG ifsname = "IFS";
MSG ps1name = "PS1";
MSG ps2name = "PS2";
/* string constants */
MSG nullstr = "";
MSG sptbnl = " \t\n";
MSG colon = ": ";
MSG minus = "-";
MSG endoffile = "end of file";
MSG unexpected = " unexpected";
MSG atline = " at line ";
MSG devnull = "/dev/null";
MSG execpmsg = "+ ";
MSG readmsg = "> ";
MSG stdprompt = "$ ";
MSG supprompt = "# ";
MSG profile = ".profile";
/* tables */
SYSTAB reserved = {
{"in", INSYM},
{"esac", ESSYM},
{"case", CASYM},
{"for", FORSYM},
{"done", ODSYM},
{"if", IFSYM},
{"while", WHSYM},
{"do", DOSYM},
{"then", THSYM},
{"else", ELSYM},
{"elif", EFSYM},
{"fi", FISYM},
{"until", UNSYM},
{ "{", BRSYM},
{ "}", KTSYM},
{0, 0},
};
STRING sysmsg[] = {
0,
"Hangup",
0, /* Interrupt */
"Quit",
"Illegal instruction",
"Trace/BPT trap",
"IOT trap",
"EMT trap",
"Floating exception",
"Killed",
"Bus error",
"Memory fault",
"Bad system call",
0, /* Broken pipe */
"Alarm call",
"Terminated",
"Urgent condition",
"Stopped",
"Stopped from terminal",
"Continued",
"Child terminated",
"Stopped on terminal input",
"Stopped on terminal output",
"Asynchronous I/O",
"Exceeded cpu time limit",
"Exceeded file size limit",
"Virtual time alarm",
"Profiling time alarm",
"Window changed",
"Signal 29",
"User defined signal 1",
"User defined signal 2",
"Signal 32",
};
INT num_sysmsg = (sizeof sysmsg / sizeof sysmsg[0]);
MSG export = "export";
MSG readonly = "readonly";
SYSTAB commands = {
{"cd", SYSCD},
{"read", SYSREAD},
/*
{"[", SYSTST},
*/
{"set", SYSSET},
{":", SYSNULL},
{"trap", SYSTRAP},
{"login", SYSLOGIN},
{"wait", SYSWAIT},
{"eval", SYSEVAL},
{".", SYSDOT},
{readonly, SYSRDONLY},
{export, SYSXPORT},
{"chdir", SYSCD},
{"break", SYSBREAK},
{"continue", SYSCONT},
{"shift", SYSSHFT},
{"exit", SYSEXIT},
{"exec", SYSEXEC},
{"times", SYSTIMES},
{"umask", SYSUMASK},
{0, 0},
};