abctcl.conf.tcl — ABCTcl configuration file
The file abctcl.conf.tcl
is a piece of Tcl code,
executed when the file is sourced by an application
(e.g abctclgui). It sets variables configuration variables
to default values, in some cases determined during installation
of ABCTcl
For computation of the values, all Tcl global variables and Tcl commands are available (see tclvars(n)).
timeout
Default timeout of an ABC command. Procedures sending commands to ABC can have a `local' timeout as an argument. This, however, does not affect the value of this variable. The variable is global and is defined by Expect. Can be overriden at any time between ABC commands.
abc::expect_buffer_size
Maximum size of ABC's output. Used by Expect. Set to 100kB. Can be overriden at any time between ABC commands.
abc::dir
The directory with ABC executable. The path shall be absolute. Set to the directory determined by configure during installation. The value can but needs not to end with a path separator (`/' or `\'). Can be overriden before the call to abc::init.
abc::exe
The name of ABC executable. Determined by configure during installation. Can be overriden before the call to abc::init.
abc::initList
Each string is a name of an ABC script, for example the standard /fIabc.rc/fR script. The order in which the files are sourced is given by their order in the list. Notice that all files are attemtpted to be read, unlike the initialization schemes built into ABC. For files read when the default value applies, see DEFAULT ABC INITIALIZATION
The order and locations of initialization files are
similar to those built into ABC. As in ABC, they differ
across platform types. abctcl.conf.tcl
uses the Tcl variable $tcl_platform(platform)
to detect the platform type. Unlike ABC, ABCTcl tries to read
each file if it exists.
An abc.rc
file two levels up from the current directory.
An abc.rc
file one level up from the current directory.
An abc.rc
file in the current directory.
The `system' abc.rc
file
located during installation (see THE SYSTEM-WIDE ABC.RC LOCATION)
If the environment variable HOME
is set to a non-empty value,
a .abc.rc
file the directory (usually, the user's home directory).
A .abc.rc
in the current directory.
The order is from general files to files particular for a user
or a problem, so that the more specific file has a chance
to redefine some ABC's aliases and other things.
The value of abc::initList
can be overriden before
the call to abc::init.
The location of the abc.rc
file can be set by an argument to
configure. If it is not, configure
searches in the following directories for abc.rc
,
assuming that abcdir
is the directory where
the ABC executable is:
abcdir
abcdir
/../lib
abcdir
/../lib/abc
The first file found is the system-wide abc.rc
file.
The mechanism using abc::initList
has been built because
the sequences built into ABC do not cover usual needs. We do not
have, however, an option to switch this mechanism off and to revert
to the built-in sequences.
To model standard ABC initialization sequences more closely, we would need a structure more sophisticated than a mere list. It should be able to express the notions of `the fist one from a list that can be found' and `all of the list that can be found'. The present solution trades expresiveness for simplicity.