REDUCE run mode provides a small amount of customization. The following user options can be changed using the standard Emacs customization facilities. The main REDUCE customization group is called “REDUCE”, under which REDUCE run mode provides a sub-group “REDUCE Run” that allows the following options to be customized.
It is essential to check that reduce-run-commands is set correctly otherwise REDUCE will not run correctly. The settings of other user options are not critical.
This variable is obsolete and has been replaced by ‘reduce-run-commands’ with different value syntax, as described below.
(("CSL" . "redcsl --nogui") ("PSL" . "redpsl")).
The value of this variable is an association list of two elements, one
for each of the main Lisp versions on which REDUCE is distributed,
namely CSL and PSL. The order of these elements determines the order
in which commands that do not specify the REDUCE version try to run
REDUCE versions; see below. Each element is a “dotted pair” of
strings, of which the first is either "CSL" or "PSL" and the second is
the command to run that version of REDUCE using a command-line
interface. This can include any required options, as illustrated
above by the default value for CSL REDUCE. The command can be either
the command name, as illustrated above, or it can be a full path name,
which can contain spaces. (But spaces are not allowed in the command
options.) If command names are used then those commands must be on
your search path. On most platforms, this should happen
automatically, but on Microsoft Windows you either need to add the
bin directory to your search path or customize this
variable to use full path names.
"^\\([0-9]+[:*] \\)+". The regexp to recognise
prompts in REDUCE run mode. The default works well for CSL REDUCE.
This variable is used to initialize
comint-prompt-regexp in the
REDUCE run buffer.
t. If non-nil then all commands that require a
REDUCE process will automatically start a new one if none is already
t. If non-nil then commands that explicitly
start REDUCE will always start a new REDUCE process in a new distinct
buffer, even if REDUCE is already running. Otherwise, they will
re-use any appropriate running REDUCE process.
nil. The main hook for customising REDUCE run
nil. The hook run when REDUCE run mode is
loaded. It is a good place to put key bindings.
"\\`\\([ \t;$]*\\|[ \t]*.[ \t]*\\)\\'". What not
to save on REDUCE run mode’s input history. The value is a regular
expression (regexp). The default matches any combination of zero or
more whitespace characters and/or statement terminators, or any single
character (e.g. y or n) possibly surrounded by
(reduce-mode). Used to determine if a buffer
contains REDUCE source code. If a file is loaded into a buffer that is
in one of these major modes then it is considered to be a REDUCE source
reduce-fasl-file. Used by
these commands to determine defaults.
Absolute pathname of the directory containing REDUCE packages, or nil. This variable should be set automatically when REDUCE run mode loads. It looks for the packages directory based on the location of default command used to run REDUCE. If the directory cannot be found then this variable will be set to nil. You can customize this variable to override the default setting.