NAME¶
source - Evaluate a file or resource as a Tcl script
SYNOPSIS¶
source fileName
source -rsrc resourceName ?
fileName?
source -rsrcid resourceId ?
fileName?
DESCRIPTION¶
This command takes the contents of the specified file or resource and passes it
to the Tcl interpreter as a text script. The return value from
source
is the return value of the last command executed in the script. If an error
occurs in evaluating the contents of the script then the
source command
will return that error. If a
return command is invoked from within the
script then the remainder of the file will be skipped and the
source
command will return normally with the result from the
return command.
The end-of-file character for files is '\32' (^Z) for all platforms. The source
command will read files up to this character. This restriction does not exist
for the
read or
gets commands, allowing for files containing
code and data segments (scripted documents). If you require a ``^Z'' in code
for string comparison, you can use ``\032'' or ``\u001a'', which will be
safely substituted by the Tcl interpreter into ``^Z''.
The
-rsrc and
-rsrcid forms of this command are only available on
Macintosh computers. These versions of the command allow you to source a
script from a
TEXT resource. You may specify what
TEXT resource
to source by either name or id. By default Tcl searches all open resource
files, which include the current application and any loaded C extensions.
Alternatively, you may specify the
fileName where the
TEXT
resource can be found.
EXAMPLE¶
Run the script in the file
foo.tcl and then the script in the file
bar.tcl:
source foo.tcl
source bar.tcl
Alternatively:
foreach scriptFile {foo.tcl bar.tcl} {
source $scriptFile
}
SEE ALSO¶
file(3tcl), cd(3tcl), info(3tcl)
KEYWORDS¶
file, script