source                 package:base                 R Documentation

Read R Code from a File or a Connection

Description:

     'source' causes R to accept its input from the named file (the
     name must be quoted). Input is read from that file until the end
     of the file is reached.   'parse' is used to scan the expressions
     in, they are then evaluated sequentially in the chosen
     environment.

Usage:

     source(file, local = FALSE, echo = verbose, print.eval = echo,
            verbose = getOption("verbose"),  prompt.echo = getOption("prompt"),
            max.deparse.length = 150, chdir = FALSE)

Arguments:

    file: a connection or a character string giving the name of the
          file or URL to read from.

   local: if 'local' is 'FALSE', the statements scanned are evaluated
          in the user's workspace (the global environment), otherwise
          in the environment calling 'source'.

    echo: logical; if 'TRUE', each expression is printed after parsing,
          before evaluation.

print.eval: logical; if 'TRUE', the result of 'eval(i)' is printed for
          each expression 'i'; defaults to 'echo'.

 verbose: if 'TRUE', more diagnostics (than just 'echo = TRUE') are
          printed during parsing and evaluation of input, including
          extra info for *each* expression.

prompt.echo: character; gives the prompt to be used if 'echo = TRUE'.

max.deparse.length: integer; is used only if 'echo' is 'TRUE' and gives
          the maximal length of the "echo" of a single expression.

   chdir: logical; if 'TRUE', the R working directory is changed to the
          directory containing 'file' for evaluating.

Details:

     All versions of R accept input from a connection with end of line
     marked by LF (as used on Unix), CRLF (as used on DOS/Windows) or
     CR (as used on classic MacOS).  The final line can be incomplete,
     that is missing the final EOL marker.

     If 'options'("keep.source") is true (the default), the source of
     functions is kept so they can be listed exactly as input. This
     imposes a limit of 128K chars on the function size and a nesting
     limit of 265.  Use 'option(keep.source = FALSE)' when these limits
     might take effect: if exceeded they generate an error.

References:

     Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) _The New S
     Language_. Wadsworth & Brooks/Cole.

See Also:

     'demo' which uses 'source'; 'eval', 'parse' and 'scan';
     'options("keep.source")'.

