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 restric-
       tion 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  Mac-
       intosh  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  exten-
       sions.   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(n), cd(n), info(n)


KEYWORDS
