Go to the first, previous, next, last section, table of contents.
- *
-
When reading from a file (or a pipe) SM won't trap ^c
- *
-
Commands are now put on the history list even if you run with
-s
or -S.
- *
-
The history editor is now active when you have entered a partial
command (e.g.
macro hello {). There is a different prompt, which
you can change by defining $prompt2.
- *
-
The primary and secondary prompts can be set by specifying
prompt or prompt2 in your `.sm' file.
- *
-
In a graphcap SY string, if a positional parameter is called (e.g.)
$[3] instead of $3 there's no complaint if it is missing.
- *
-
You can now say
!expr just like in C
- *
-
Two new `number' operators in TeX strings,
\multiply
and \divide. Both multiply (or divide) by the argument/1000.
- *
-
You no longer need the parentheses in
vec[(1+2)]. This might
be thought of as a bug fix.
- *
-
A side effect of the previous item is that whereas
define v vec[0]
used to be accidently legal, you must now say define v (vec[0]).
- *
-
LWEIGHT is now a floating point number
- *
-
The graphcap encoder now has limited support for floating point
numbers; specifically you can use `%e', `$f', or `%g' to format the
bottom of the stack, and `|' to convert the bottom of the stack to int.
- *
-
New `|' variables
swidth, sheight, and sdepth
give the (pixel) size of the last string drawn.
- *
-
PUTLABEL 0 str doesn't draw anything, but does set the string
dimensions (and any TeX definitions are remembered).
- *
-
Commands that draw strings now leave the plot pointer on the baseline
at the right of the last character drawn.
- *
-
You can give AXIS vectors of values where you want the small and big
ticks, thereby finally relieving us of the need to make TICKSIZE infinitely
complicated. You can even provide a string-valued vector to specify
the labels that you want written.
- *
-
There are two new SM variables
x_gutter and y_gutter
that are used to modify the spacing between boxes left by the WINDOW command.
- *
-
You can now specify a font size along with a type in
default_font,
e.g. \ti\bf\it\2.
- *
-
WRITE can now append to a file by saying WRITE
+ filename.
- *
-
SUM is now implemented using a double precision intermediate value.
- *
-
There is a new operator RANDOM to generate uniformly distributed
random numbers. The seed can be set with SET RANDOM.
- *
-
Any combination of string- and arithmetic-vectors is now allowed in SORT.
- *
-
If you define
$save_read_ptr, the current READ pointer is
saved, allowing faster sequential access to a file.
- *
-
You can specify a range of columns to be used for reading
numerical vectors.
- *
-
Macro files may contain left-justified comments within macros
which are not included in the macro, but processed at read time.
- *
-
The hidden surface code (VIEWPOINT and SURFACE) now works. The C
is based on a set of SM macros written by Gabor Toth.
- *
-
There are a set of SM macros for use with the new surface commands;
say
load surfaces if you want to use them.
- *
-
If the environment file specified by -f filename on the command
line starts with a /, no search path is used. Note that this means
that you can't inherit entries from other `.sm' files.
- *
-
Argument parsing for DEVICE commands
now understands quotes, e.g.
DEVICE x11 -title \"Hello World\".
- *
-
You can now call the SM parser from your own code. There is also
a function to declare your arrays to SM as vectors. Examples have been
added to the `callable' directory.
- *
-
If VERBOSE is one or more, you'll be warned if the axis labels
are expected to overlap the ticks (and a solution is suggested).
- *
-
If a macro isn't found, the macro
macro_error_handler
is called with 2 arguments; the first is NOT_FOUND and the
second the name of the macro. If the variable missing_macro_continue
is defined (maybe in your `.sm' file) the behaviour is unaltered.
- *
-
There is a new command USER ABORT that forces SM to think
that a syntax error has occurred.
- *
-
If you retrieve that last history command with
^$ or ^^
you will always get the last command, even if it doesn't appear on
the history list; using the arrow keys or ^P still gets you the
previous remembered command.
- *
-
There are macros to support greyscale plots (glevels and greylevel)
- *
-
The vms_var filecap entry has been changed, and so has
the documentation on how
to write out image files under VMS Fortran. For variable recordtype files, you
must specify
recordtype='variable', and not give a record length. This
seems to work for VMS 5.x, but Robert has only been reluctantly persuaded that
my "bug fix" in this case is any more than sleight of hand, so you are free to
complain vociferously (to monger@mcmaster.ca) if this causes problems.
- *
-
SM now supports metafiles via the pseudo-device META and the command
META READ file.
Go to the first, previous, next, last section, table of contents.