mirror of
https://github.com/lcn2/calc.git
synced 2025-08-16 01:03:29 +03:00
Release calc version 2.11.1t2
This commit is contained in:
9
CHANGES
9
CHANGES
@@ -46,6 +46,10 @@ The following are the changes from calc version 2.11.1 to date:
|
||||
|
||||
Changed the recommended Comqaq cc compile to be -std0 -fast -O4 -static.
|
||||
|
||||
Fixed a problem related to asking for help for a non-existent file.
|
||||
|
||||
Added ./.calcinit to the default calcrc.
|
||||
|
||||
|
||||
The following are the changes from calc version 2.11.0t10 to 2.11.0t11:
|
||||
|
||||
@@ -279,6 +283,7 @@ The following are the changes from calc version 2.11.0t10 to 2.11.0t11:
|
||||
# this is a comment
|
||||
#
|
||||
# The lone # above was also a comment
|
||||
## is also a comment
|
||||
|
||||
Improved how calc makes changes to file descriptor interactive state.
|
||||
Moved state changing code to calc_tty() and orig_tty() in lib_calc.c.
|
||||
@@ -4710,8 +4715,8 @@ Following is a list of visible changes to calc from version 1.24.7 to 1.26.1:
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.3 $
|
||||
## @(#) $Id: CHANGES,v 29.3 1999/12/15 09:13:45 chongo Exp $
|
||||
## @(#) $Revision: 29.4 $
|
||||
## @(#) $Id: CHANGES,v 29.4 1999/12/17 10:06:46 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/RCS/CHANGES,v $
|
||||
##
|
||||
## Under source code control: 1993/06/02 18:12:57
|
||||
|
6
Makefile
6
Makefile
@@ -20,8 +20,8 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.4 $
|
||||
# @(#) $Id: Makefile.ship,v 29.4 1999/12/15 08:54:07 chongo Exp $
|
||||
# @(#) $Revision: 29.5 $
|
||||
# @(#) $Id: Makefile.ship,v 29.5 1999/12/17 09:07:35 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/Makefile.ship,v $
|
||||
#
|
||||
# Under source code control: 1990/02/15 01:48:41
|
||||
@@ -425,7 +425,7 @@ CALCPATH= .:./cal:~/cal:${LIBDIR}:${CUSTOMLIBDIR}
|
||||
# If the $CALCRC environment variable is not defined, then the following
|
||||
# path will be search for calc resource files.
|
||||
#
|
||||
CALCRC= ${LIBDIR}/startup:~/.calcrc
|
||||
CALCRC= ${LIBDIR}/startup:~/.calcrc:./.calcinit
|
||||
|
||||
# Determine of the GNU-readline facility will be used instead of the
|
||||
# built-in calc binding method.
|
||||
|
6
calc.c
6
calc.c
@@ -19,8 +19,8 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: calc.c,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: calc.c,v 29.2 1999/12/17 09:21:45 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.c,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:11
|
||||
@@ -197,7 +197,7 @@ main(int argc, char **argv)
|
||||
*/
|
||||
fprintf(stderr,
|
||||
"usage: %s [-c] [-C] [-d] [-e] [-h] [-i] [-m mode]\n"
|
||||
"\t[-D calc_debug[:resource_debug:[user_debug]]]\n"
|
||||
"\t[-D calc_debug[:resource_debug[:user_debug]]]\n"
|
||||
"\t[-n] [-p] [-q] [-s] [-u] [-v] "
|
||||
"[[--] calc_cmd ...]\n",
|
||||
program);
|
||||
|
250
calc.man
250
calc.man
@@ -15,8 +15,8 @@
|
||||
.\" received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
.\" 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
.\"
|
||||
.\" @(#) $Revision: 29.1 $
|
||||
.\" @(#) $Id: calc.man,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
.\" @(#) $Revision: 29.4 $
|
||||
.\" @(#) $Id: calc.man,v 29.4 1999/12/17 10:06:31 chongo Exp $
|
||||
.\" @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.man,v $
|
||||
.\"
|
||||
.\" Under source code control: 1991/07/23 05:48:26
|
||||
@@ -36,7 +36,7 @@ calc \- arbitrary precision calculator
|
||||
.RB [ \-c ]
|
||||
.RB [ \-C ]
|
||||
.RB [ \-d ]
|
||||
.RB [ -D\ \&calc_debug[:resource_debug:[user_debug]] ]
|
||||
.RB [ -D\ \&calc_debug[:resource_debug[:user_debug]] ]
|
||||
.br
|
||||
.in +5n
|
||||
.RB [ \-e ]
|
||||
@@ -53,7 +53,7 @@ calc \- arbitrary precision calculator
|
||||
.RB [ calc_cmd\ \&.\|.\|. ]
|
||||
.in -5n
|
||||
.sp
|
||||
\fI#!${BINDIR}/calc\fP\ \fB\-S\fP\ [\-other_flags\ \&...]
|
||||
\fI#!${BINDIR}/calc\fP\ \fB\-S\fP\ [other_flags\ \&...]
|
||||
.SH DESCRIPTION
|
||||
\&
|
||||
.br
|
||||
@@ -89,7 +89,7 @@ cause
|
||||
to try to process each line being read
|
||||
despite the errors that it encounters.
|
||||
.sp 1
|
||||
By default, calc startup resource files ($CALCRC) are silently
|
||||
By default, calc startup resource files are silently
|
||||
ignored if not found.
|
||||
This flag will report missing
|
||||
startup resource files unless
|
||||
@@ -103,10 +103,10 @@ Without
|
||||
this flag, calling the custom() builtin function will
|
||||
simply generate an error.
|
||||
.sp 1
|
||||
Use if this flag may cause
|
||||
Use of this flag may cause
|
||||
.B calc
|
||||
to execute functions that
|
||||
are non-standard and that are not portable. Custom builtin
|
||||
to execute functions
|
||||
that are non-standard and that are not portable. Custom builtin
|
||||
functions are disabled by default for this reason.
|
||||
|
||||
.TP
|
||||
@@ -147,14 +147,14 @@ It's nearly ten past six.
|
||||
.in -5n
|
||||
.sp 1
|
||||
This flag disables the reporting of missing calc
|
||||
startup resource files ($CALCRC).
|
||||
startup resource files.
|
||||
|
||||
.TP
|
||||
.BR -D " calc_debug[:resource_debug:[user_debug]]"
|
||||
.BR -D " calc_debug[:resource_debug[:user_debug]]"
|
||||
Force the initial value of config("calc_debug"),
|
||||
config("resource_debug") and config("user_debug").
|
||||
.sp 1
|
||||
The : separated strings are interpreted as signed 32 bit values.
|
||||
The : separated strings are interpreted as signed 32 bit integers.
|
||||
After an optional leading sign a leading zero indicates octal
|
||||
conversion, and a leading ``0x'' or ``0X'' hexadecimal
|
||||
conversion. Otherwise, decimal conversion is assumed.
|
||||
@@ -197,14 +197,14 @@ See
|
||||
.TP
|
||||
.B \-i
|
||||
Become interactive if possible.
|
||||
Be default, if
|
||||
If
|
||||
.I calc_cmd
|
||||
args are given,
|
||||
.B calc
|
||||
will execute them and exit.
|
||||
This flag args are given,
|
||||
by default, calc will execute them and exit.
|
||||
This flag causes
|
||||
.B calc
|
||||
will execute them and exit.
|
||||
to drop into interactive mode after the commands are executed.
|
||||
This flag will cause
|
||||
.B calc
|
||||
to drop into interactive mode after the
|
||||
@@ -294,7 +294,7 @@ unknown mode.
|
||||
will attempt to read or write them if directed.
|
||||
.sp 1
|
||||
If the mode disables opening of files for reading, then
|
||||
the startup resource files are disabled as of
|
||||
the startup resource files are disabled as if
|
||||
.B \-q
|
||||
was given.
|
||||
The reading of key bindings is also disabled
|
||||
@@ -330,7 +330,7 @@ flag overrides
|
||||
|
||||
.TP
|
||||
.B \-q
|
||||
Disable the use of the $CALCRC startup resource files.
|
||||
Disable the reading of the startup scripts.
|
||||
|
||||
.TP
|
||||
.B \-s
|
||||
@@ -355,26 +355,20 @@ version number and exit.
|
||||
.br
|
||||
CALC COMMAND LINE
|
||||
.PP
|
||||
Without
|
||||
.IR calc_cmd ,
|
||||
With no
|
||||
.I calc_cmd
|
||||
arguments,
|
||||
.B calc
|
||||
operates interactively.
|
||||
If one or more
|
||||
.I calc_cmd
|
||||
are given on the command line and
|
||||
arguments are given on the command line and
|
||||
.B \-s
|
||||
is NOT given, then
|
||||
.B calc
|
||||
will evaluate and execute them and then exit.
|
||||
.sp
|
||||
If
|
||||
will read and execute them and either attempt
|
||||
to go interactive according as the
|
||||
.B \-i
|
||||
is given,
|
||||
.B calc
|
||||
will attempt to become interactive
|
||||
even of one or more
|
||||
.I calc_cmd
|
||||
are given on the command line.
|
||||
flag was present or absent.
|
||||
.sp
|
||||
If
|
||||
.B \-s
|
||||
@@ -384,32 +378,157 @@ will not evaluate any
|
||||
.I calc_cmd
|
||||
arguments but instead make them available
|
||||
as strings to the argv() builtin function.
|
||||
|
||||
Sufficiently simple commands with no no characters like
|
||||
parentheses, brackets, semicolons, '*', which have special
|
||||
interpretations in UNIX shells may be entered, possibly with
|
||||
spaces, until the terminating newline.
|
||||
For example:
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
calc 23 + 47
|
||||
.fi
|
||||
.in -5n
|
||||
.sp 1
|
||||
should respond with display of 70, but
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
calc 23 * 47
|
||||
.fi
|
||||
.in -5n
|
||||
.sp 1
|
||||
may fail.
|
||||
Such cases can usually be made to work as expected by
|
||||
enclosing the command between single marks as in:
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
calc '23 * 47'
|
||||
.fi
|
||||
.in -5n
|
||||
.sp 1
|
||||
and
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
calc 'print sqrt(2), exp(1)'
|
||||
.fi
|
||||
.in -5n
|
||||
.sp
|
||||
If '!' is to be used to indicate the factorial function, for
|
||||
shells like
|
||||
.BI csh (1)
|
||||
for which '!' followed by a non-space character
|
||||
is used for history substitution, it may be necessary to
|
||||
include a space or use a backslash to escape the special
|
||||
meaning of '!'.
|
||||
For example, the command:
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
print 27!^2
|
||||
.fi
|
||||
.in -5n
|
||||
.sp 1
|
||||
may have to be replaced by:
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
print 27! ^2 or print 27\!^2
|
||||
.fi
|
||||
.in -5n
|
||||
|
||||
\&
|
||||
.br
|
||||
CALC STARTUP FILES
|
||||
.PP
|
||||
Normally on startup,
|
||||
if the environment variable
|
||||
.B $CALCRC
|
||||
is undefined and
|
||||
.B calc
|
||||
attempts to execute a collection of
|
||||
startup resource files.
|
||||
The environment variable $CALCRC (if non-existent
|
||||
then a compiled in value) contains a : separated list of startup
|
||||
resource files.
|
||||
No error conditions are produced if these startup
|
||||
resource files are not found.
|
||||
.PP
|
||||
If the mode disables opening of files for reading, then the startup
|
||||
resource files are disabled as of
|
||||
is invoked without the
|
||||
.B \-q
|
||||
was given and $CALCRC as well
|
||||
as the default compiled in value are ignored.
|
||||
flag, or if
|
||||
.B $CALCRC
|
||||
is defined and calc is invoked with
|
||||
.BR \-e ,
|
||||
.B calc
|
||||
looks for a file "startup" in the calc resource directory
|
||||
.B .calcrc
|
||||
in the user's home directory, and
|
||||
.B .calcinit in the current directory.
|
||||
If one or more of these are found, they are read in succession as
|
||||
.B calc
|
||||
scripts and their commands executed.
|
||||
When defined,
|
||||
.B $CALCRC
|
||||
is to contain a ':' separated list of names of files,
|
||||
and if calc is then invoked without either the
|
||||
.B \-q
|
||||
or
|
||||
.B \-e
|
||||
flags, these files are read in succession and their commands executed.
|
||||
No error condition is produced if a listed file is not found.
|
||||
.sp
|
||||
If the mode specified by
|
||||
.B \-m
|
||||
disables opening of files for reading, then the reading of startup
|
||||
files is also disabled as if
|
||||
.B \-q
|
||||
was given.
|
||||
|
||||
\&
|
||||
.br
|
||||
CALC FILE SEARCH PATH
|
||||
.PP
|
||||
Filenames are subject to ``~'' expansion (see below).
|
||||
The
|
||||
environment variable $CALCPATH (if non-existent then a compiled in
|
||||
value) contains a : separated list of search directories.
|
||||
If a
|
||||
file does not begin with /, ~ or ./, then it is searched for under
|
||||
each directory listed in the $CALCPATH.
|
||||
It is an error if no such
|
||||
readable file is found.
|
||||
If the environment variable
|
||||
.B $CALCPATH
|
||||
is undefined, or if it
|
||||
is defined and
|
||||
.B calc
|
||||
is invoked with the
|
||||
.B \-e
|
||||
flag, when a file name not beginning with
|
||||
.BR / ,
|
||||
.B ~
|
||||
or
|
||||
.BR ./ ,
|
||||
is specified as in:
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
calc read myfile
|
||||
.fi
|
||||
.in -5n
|
||||
.sp 1
|
||||
.B calc
|
||||
searches in succession:
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
./myfile
|
||||
./myfile.cal
|
||||
${LIBDIR}/myfile
|
||||
${LIBDIR}/myfile.cal
|
||||
${CUSTOMLIBDIR}/myfile
|
||||
${CUSTOMLIBDIR}/myfile.cal
|
||||
.fi
|
||||
.in -5n
|
||||
.sp 1
|
||||
If the file is found, the
|
||||
search stops and the commands in the file are executed.
|
||||
It is an error if no readable file with the specified name is found.
|
||||
An alternative search path can be specified by defining
|
||||
.B $CALCPATH
|
||||
in the same way as PATH is defined, as a ':' separated
|
||||
list of directories, and then invoking
|
||||
.B calc
|
||||
without the
|
||||
.B \-e
|
||||
flag.
|
||||
.PP
|
||||
.B Calc
|
||||
treats all open files, other than stdin, stdout and
|
||||
@@ -447,11 +566,17 @@ help config
|
||||
.br
|
||||
SHELL SCRIPT MODE
|
||||
.PP
|
||||
If an executable file begins with:
|
||||
If first line of an executable file begins
|
||||
.B #!
|
||||
followed by the absolute pathname of the
|
||||
.B calc
|
||||
program and the flag
|
||||
.B \-S
|
||||
as in:
|
||||
.sp 1
|
||||
.in +5n
|
||||
.nf
|
||||
\fI#!${BINDIR}/calc\fP\ \fB\-S\fP\ [\-other_flags\ \&...]
|
||||
\fI#!${BINDIR}/calc\fP\ \fB\-S\fP\ [other_flags\ \&...]
|
||||
.fi
|
||||
.in -5n
|
||||
.sp 1
|
||||
@@ -462,19 +587,22 @@ Note that
|
||||
(UPPER CASE
|
||||
.BR \-S )
|
||||
must be the first \-flag on the ``#!'' line.
|
||||
Any other optional ``\-other_flags'' must come after
|
||||
Any other optional
|
||||
.B "other_flags"
|
||||
must come after
|
||||
the
|
||||
.BR \-S .
|
||||
.sp 1
|
||||
In
|
||||
.B "shell script mode"
|
||||
the contents of the file
|
||||
are evaluated and executed as if they were processed
|
||||
by the
|
||||
.B read
|
||||
command.
|
||||
Any optional ``\-other_flags'' will by parsed first
|
||||
followed by any arguments given shell script itself.
|
||||
the contents of the file are read and
|
||||
executed as if they were in a file being processed by a read
|
||||
command, except that a "command" beginning with '#' followed by
|
||||
whitespace and ending at the next newline is treated as a comment.
|
||||
Any optional
|
||||
.B "other_flags"
|
||||
will be parsed first followed by
|
||||
the later lines within the script itself.
|
||||
.sp 1
|
||||
In
|
||||
.BR "shell script mode" ,
|
||||
|
20
help.c
20
help.c
@@ -17,8 +17,8 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: help.c,v 29.1 1999/12/14 09:15:40 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: help.c,v 29.2 1999/12/17 09:22:03 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/help.c,v $
|
||||
*
|
||||
* Under source code control: 1997/09/14 10:58:30
|
||||
@@ -253,19 +253,15 @@ givehelp(char *type)
|
||||
stream = fopen(helppath, "r");
|
||||
if (stream == NULL) {
|
||||
|
||||
/*
|
||||
* we have the help file open, now display it
|
||||
*/
|
||||
page_file(stream);
|
||||
(void) fclose(stream);
|
||||
|
||||
/*
|
||||
* no such help file
|
||||
*/
|
||||
} else {
|
||||
/* no such help file */
|
||||
fprintf(stderr,
|
||||
"%s: no such help file, try: help help\n",
|
||||
type);
|
||||
} else {
|
||||
|
||||
/* we have the help file open, now display it */
|
||||
page_file(stream);
|
||||
(void) fclose(stream);
|
||||
}
|
||||
}
|
||||
|
||||
|
150
help/usage
150
help/usage
@@ -2,11 +2,11 @@ Calc command line
|
||||
|
||||
Calc has the following command line:
|
||||
|
||||
calc [-c] [-C] [-d] [-D calc_debug[:resource_debug:[user_debug]]]
|
||||
calc [-c] [-C] [-d] [-D calc_debug[:resource_debug[:user_debug]]]
|
||||
[-e] [-h] [-i] [-m mode] [-n] [-p] [-q] [-s] [-u] [-v]
|
||||
[calc_cmd ...]
|
||||
|
||||
#!/usr/local/bin/calc -S [-other_flags ...]
|
||||
#!/usr/local/bin/calc -S [other_flags]
|
||||
|
||||
-c Continue reading command lines even after an execution
|
||||
error has caused the abandonment of a line.
|
||||
@@ -22,7 +22,7 @@ Calc command line
|
||||
will cause calc to try to process each line being read
|
||||
despite the errors that it encounters.
|
||||
|
||||
By default, calc startup resource files ($CALCRC) are
|
||||
By default, calc startup resource files are
|
||||
silently ignored if not found. This flag will report
|
||||
missing startup scripts unless -d is also given.
|
||||
|
||||
@@ -31,7 +31,7 @@ Calc command line
|
||||
Without this flag, calling the custom() builtin
|
||||
function will simply generate an error.
|
||||
|
||||
Use if this flag may cause calc to execute functions
|
||||
Use of this flag may cause calc to execute functions
|
||||
that are non-standard and that are not portable.
|
||||
Custom builtin functions are disabled by default for
|
||||
this reason.
|
||||
@@ -60,7 +60,7 @@ Calc command line
|
||||
It's nearly ten past six.
|
||||
|
||||
This flag disables the reporting of missing calc
|
||||
startup scripts ($CALCRC).
|
||||
startup scripts.
|
||||
|
||||
|
||||
-D calc_debug[:resource_debug:[user_debug]]
|
||||
@@ -68,7 +68,7 @@ Calc command line
|
||||
config("resource_debug") and config("user_debug").
|
||||
|
||||
The : separated strings are interpreted as signed 32
|
||||
bit values. After an optional leading sign a leading
|
||||
bit integers. After an optional leading sign a leading
|
||||
zero indicates octal conversion, and a leading ``0x''
|
||||
or ``0X'' hexadecimal conversion. Otherwise, decimal
|
||||
conversion is assumed.
|
||||
@@ -91,11 +91,10 @@ Calc command line
|
||||
-m.
|
||||
|
||||
|
||||
-i Become interactive if possible. Be default, if
|
||||
calc_cmd args are given, calc will execute them and
|
||||
exit. This flag args are given, calc will execute them
|
||||
and exit. This flag will cause calc to drop into
|
||||
interactive mode after the commands are executed.
|
||||
-i Become interactive if possible. If calc_cmd args are given,
|
||||
by default, calc will execute them and exit. This flag causes
|
||||
calc to drop into interactive mode after the commands are
|
||||
executed.
|
||||
|
||||
For example:
|
||||
|
||||
@@ -144,7 +143,7 @@ Calc command line
|
||||
if directed.
|
||||
|
||||
If the mode disables opening of files for reading, then
|
||||
the startup resource files are disabled as of -q was
|
||||
the startup resource files are disabled as if -q was
|
||||
given. The reading of key bindings is also disabled
|
||||
when the mode disables opening of files for reading.
|
||||
|
||||
@@ -163,7 +162,7 @@ Calc command line
|
||||
The -p flag overrides -i.
|
||||
|
||||
|
||||
-q Disable the use of the $CALCRC startup scripts.
|
||||
-q Disable the reading of the startup scripts.
|
||||
|
||||
|
||||
-s By default, all calc_cmd args are evaluated and
|
||||
@@ -178,39 +177,87 @@ Calc command line
|
||||
-v Print the calc version number and exit.
|
||||
|
||||
|
||||
CALC COMMAND LINE
|
||||
CALC COMMAND ARGUMENTS
|
||||
|
||||
Without calc_cmd, calc operates interactively. If one or
|
||||
more calc_cmd are given on the command line and -s is NOT
|
||||
given, then calc will evaluate and execute them and then
|
||||
exit.
|
||||
|
||||
If -i is given, calc will attempt to become interactive even
|
||||
of one or more calc_cmd are given on the command line.
|
||||
With no calc_cmd arguments, calc operates interactively. If one
|
||||
or more arguments are given on the command line and -s is NOT
|
||||
given, then calc will read and execute them and either attempt
|
||||
to go interactive according as the -i flag was present or absent.
|
||||
|
||||
If -s is given, calc will not evaluate any calc_cmd
|
||||
arguments but instead make them available as strings to the
|
||||
argv() builtin function.
|
||||
|
||||
Normally on startup, calc attempts to execute a collection
|
||||
of resource files. The environment variable $CALCRC (if
|
||||
non-existent then a compiled in value) contains a
|
||||
: separated list of startup resource files. No error
|
||||
conditions are produced if these startup resource file are
|
||||
not found.
|
||||
Sufficiently simple commands with no no characters like
|
||||
parentheses, brackets, semicolons, '*', which have special
|
||||
interpretations in UNIX commands may be entered, possibly with
|
||||
spaces, until the terminating newline. For example:
|
||||
|
||||
If the mode disables opening of files for reading, then the
|
||||
startup resource files are disabled as of -q was given and
|
||||
$CALCRC as well as the default compiled in value are
|
||||
ignored.
|
||||
calc 23 + 47
|
||||
|
||||
Filenames are subject to ``~'' expansion (see below). The
|
||||
environment variable $CALCPATH (if non-existent then a
|
||||
compiled in value) contains a : separated list of search
|
||||
directories. If a file does not begin with /, ~ or ./, then
|
||||
it is searched for under each directory listed in the
|
||||
$CALCPATH. It is an error if no such readable file is
|
||||
found.
|
||||
should respond with display of 70, but:
|
||||
|
||||
calc 23 * 47
|
||||
|
||||
may fail. Such cases can usually be made to work as expected by
|
||||
enclosing the command between single quotation marks as in:
|
||||
|
||||
calc '23 * 47'
|
||||
|
||||
and
|
||||
|
||||
calc 'print sqrt(2), exp(1)'
|
||||
|
||||
If '!' is to be used to indicate the factorial function, for
|
||||
shells like csh for which '!' followed by a non-space character
|
||||
is used for history substitution, it may be necessary to
|
||||
include a space or use a backslash to escape the special
|
||||
meaning of '!'. For example, the command "print 27!^2" may have
|
||||
to be replaced by "print 27! ^2" or "print 27\!^2".
|
||||
|
||||
|
||||
CALC STARTUP FILES
|
||||
|
||||
Normally on startup, if the environment variable $CALCRC is
|
||||
undefined and calc is invoked without the -q flag, or if
|
||||
$CALCRC is defined and calc is invoked with -e, calc looks
|
||||
for a file "startup" in the calc resource directory, .calcrc in
|
||||
the user's home directory, and .calcinit in the current directory.
|
||||
If one or more of these are found, they are read in succession
|
||||
as calc scripts and their commands executed. When defined,
|
||||
$CALCRC is to contain a ':' separated list of names of files,
|
||||
and if calc is then invoked without either the -q or -e flags,
|
||||
these files are read in succession and their commands executed.
|
||||
No error condition is produced if a listed file is not found.
|
||||
|
||||
If the mode specified by -m disables opening of files for
|
||||
reading, then the reading of startup files is also disabled
|
||||
as if -q was given.
|
||||
|
||||
|
||||
CALC FILE SEARCH PATH
|
||||
|
||||
If the environment variable $CALCPATH is undefined, or if it
|
||||
is defined and calc is invoked with the -e flag, when a file
|
||||
name not beginning with /, ~ or ./, is specified as in:
|
||||
|
||||
calc read myfile
|
||||
|
||||
calc searches in succession:
|
||||
|
||||
./myfile
|
||||
./myfile.cal
|
||||
${LIBDIR}/myfile
|
||||
${LIBDIR}/myfile.cal
|
||||
${CUSTOMLIBDIR}/myfile
|
||||
${CUSTOMLIBDIR}/myfile.cal
|
||||
|
||||
If the file is found, the search stops and the commands in
|
||||
the file are executed. It is an error if no readable file
|
||||
with the specified name is found. An alternative search
|
||||
path can be specified by defining $CALCPATH in the same way
|
||||
as PATH is defined, as a ':' separated list of directories,
|
||||
and then invoking calc without the -e flag.
|
||||
|
||||
Calc treats all open files, other than stdin, stdout and
|
||||
stderr as files available for reading and writing. One may
|
||||
@@ -222,21 +269,24 @@ Calc command line
|
||||
|
||||
SHELL SCRIPT MODE
|
||||
|
||||
If an executable file begins with:
|
||||
If first line of an executable file begins #! followed by the
|
||||
absolute pathname of the calc program and the flag -S as in
|
||||
|
||||
#!/usr/local/bin/calc -S [-other_flags ...]
|
||||
#!/usr/local/bin/calc -S [other_flags]
|
||||
|
||||
the rest of the file will be processed in shell script mode.
|
||||
Note that -S (UPPER CASE -S) must be the first -flag on the
|
||||
``#!'' line. Any other optional ``-other_flags'' must come
|
||||
after the -S.
|
||||
Note that -S (UPPER CASE S) must be the first -flag on the
|
||||
``#!'' line. Any optional ``other_flags'' must come after
|
||||
the -S.
|
||||
|
||||
In shell script mode the contents of the file are evaluated
|
||||
and executed as if they were processed by the read command.
|
||||
Any optional ``-other_flags'' will by parsed first followed
|
||||
by any arguments given shell script itself.
|
||||
In shell script mode the contents of the file are read and
|
||||
executed as if they were in a file being processed by a read
|
||||
command, except that a "command" beginning with '#' followed by
|
||||
whitespace and ending at the next newline is treated as a comment.
|
||||
Any optional ``other_flags'' will be parsed first followed by
|
||||
the later lines within the script itself.
|
||||
|
||||
In shell script mode, -s (lower case -s) is always assumed.
|
||||
In shell script mode, -s (lower case s) is always assumed.
|
||||
In addition, -d and -p are automatically set if -i is not
|
||||
given.
|
||||
|
||||
@@ -303,8 +353,8 @@ For more information use the following calc commands:
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.1 $
|
||||
## @(#) $Id: usage,v 29.1 1999/12/14 09:16:10 chongo Exp $
|
||||
## @(#) $Revision: 29.2 $
|
||||
## @(#) $Id: usage,v 29.2 1999/12/17 10:05:20 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/usage,v $
|
||||
##
|
||||
## Under source code control: 1991/07/21 04:37:25
|
||||
|
11
token.c
11
token.c
@@ -19,8 +19,8 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: token.c,v 29.1 1999/12/14 09:16:16 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: token.c,v 29.2 1999/12/17 09:22:38 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/token.c,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:25
|
||||
@@ -335,9 +335,10 @@ gettoken(void)
|
||||
switch(nextchar()) {
|
||||
case '=': type = T_HASHEQUALS; break;
|
||||
case '!': type = T_POUNDBANG; eatline(); break;
|
||||
case ' ': type = T_POUNDCOMMENT; eatline();
|
||||
break;
|
||||
case '\t': type = T_POUNDCOMMENT; eatline();
|
||||
case '#':
|
||||
case ' ':
|
||||
case '\t':
|
||||
type = T_POUNDCOMMENT; eatline();
|
||||
break;
|
||||
case '\n': type = T_POUNDCOMMENT; break;
|
||||
default: type = T_HASH; reread();
|
||||
|
@@ -19,8 +19,8 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.3 $
|
||||
* @(#) $Id: version.c,v 29.3 1999/12/15 09:13:59 chongo Exp $
|
||||
* @(#) $Revision: 29.4 $
|
||||
* @(#) $Id: version.c,v 29.4 1999/12/17 10:06:46 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/version.c,v $
|
||||
*
|
||||
* Under source code control: 1990/05/22 11:00:58
|
||||
@@ -43,7 +43,7 @@ static char *program;
|
||||
#define MAJOR_VER 2 /* major version */
|
||||
#define MINOR_VER 11 /* minor version */
|
||||
#define MAJOR_PATCH 1 /* patch level or 0 if no patch */
|
||||
#define MINOR_PATCH "1" /* test number or empty string if no patch */
|
||||
#define MINOR_PATCH "2" /* test number or empty string if no patch */
|
||||
|
||||
/*
|
||||
* calc version constants
|
||||
|
Reference in New Issue
Block a user