options                 package:base                 R Documentation

Options Settings

Description:

     Allow the user to set and examine a variety of global _options_
     which affect the way in which R computes and displays its results.

Usage:

     options(...)

     getOption(x)

     .Options

Arguments:

     ...: any options can be defined, using 'name = value' or by
          passing a list of such tagged values.  However, only the ones
          below are used in base R. Further, 'options('name') ==
          options()['name']', see the example. 

       x: a character string holding an option name.

Details:

     Invoking 'options()' with no arguments returns a list with the
     current values of the options.  Note that not all options listed
     below are set initially.  To access the value of a single option,
     one should use 'getOption("width")', e.g., rather than
     'options("width")' which is a _list_ of length one.

     '.Options' also always contains the 'options()' list (as a
     pairlist, unsorted), for S compatibility.  Assigning to it will
     make a local copy and not change the original.

Value:

     For 'getOption', the current value set for option 'x', or 'NULL'
     if the option is unset.

     For 'options()', a list of all set options sorted by name.  For
     'options(name)', a list of length one containing the set value, or
     'NULL' if it is unset.  For uses setting one or more options, a
     list with the previous values of the options changed (returned
     invisibly).

Options used in base R:


     'add.smooth': typically logical, defaulting to 'TRUE'.  Could also
          be set to an integer for specifying how many (simulated)
          smooths should be added.  This is currently only used by
          'plot.lm'.

     'check.bounds': logical, defaulting to 'FALSE'.  If true, a
          warning is produced whenever a vector (atomic or 'list') is
          extended, by something like 'x <- 1:3; x[5] <- 6'.

     'continue': a non-empty string setting the prompt used for lines
          which continue over one line.

     'defaultPackages': the packages that are attached by default when
          R starts up.  Initially set from value of the environment
          variable 'R_DEFAULT_PACKAGES', or if that is unset to
          'c("datasets", "utils", "grDevices", "graphics", "stats",
          "methods")'.  (Set 'R_DEFAULT_PACKAGES' to 'NULL' or a
          comma-separated list of package names.)   A call to 'options'
          should be in your '.Rprofile' file to ensure that the change
          takes effect before the base package is initialized (see
          'Startup').

     'deparse.max.lines': controls the number of lines used when
          deparsing in 'traceback' and 'browser'.  Initially unset, and
          only used if set to a positive integer.

     'digits': controls the number of digits to print when printing
          numeric values.  It is a suggestion only.  Valid values are
          1...22 with default 7.  See the warning in 'print.default'
          about values greater than 15.

     'digits.secs': controls the maximum number of digits to print when
          formatting time values in seconds.  Valid values are 0...6
          with default 0.  See 'strftime'.

     'download.file.method': Method to be used for 'download.file'. 
          Currently download methods '"internal"', '"wget"' and
          '"lynx"' are available. There is no default for this option,
          when 'method = "auto"' is chosen: see 'download.file'.

     'echo': logical.  Only used in non-interactive mode, when it
          controls whether input is echoed.  Command-line option
          '--slave' sets this to 'FALSE', but otherwise it starts the
          session as 'TRUE'.

     'encoding': The name of an encoding, default '"native.enc"').  See
          'connections'.

     'error': either a function or an expression governing the handling
          of non-catastrophic errors such as those generated by 'stop'
          as well as by signals and internally detected errors.  If the
          option is a function, a call to that function, with no
          arguments, is generated as the expression.  The default value
          is 'NULL': see 'stop' for the behaviour in that case.  The
          functions 'dump.frames' and 'recover' provide alternatives
          that allow post-mortem debugging.  Note that these need to
          specified as e.g. 'options=utils::recover' in startup files
          such as '.Rprofile'.

     'expressions': sets a limit on the number of nested expressions
          that will be evaluated.  Valid values are 25...500000 with
          default 5000.  If you increase it, you may also want to start
          R with a larger protection stack; see '--max-ppsize' in
          'Memory'.  Note too that you may cause a segfault from
          overflow of the C stack, and on OSes where it is possible you
          may want to increase that.

     'keep.source': When 'TRUE', the source code for functions (newly
          defined or loaded) is stored in their '"source"' attribute
          (see 'attr') allowing comments to be kept in the right
          places.

          The default is 'interactive()', i.e., 'TRUE' for interactive
          use.

     'keep.source.pkgs': As for 'keep.source', for functions in
          packages loaded by 'library' or 'require'.  Defaults to
          'FALSE' unless the environment variable 'R_KEEP_PKG_SOURCE'
          is set to 'yes'.

          Note this does not apply to packages using lazy-loading or
          saved images.  Whether they have kept source is determined
          when they are installed (and is almost certainly false).

     'mailer': default mailer used by 'bug.report()'.  Can be '"none"'.

     'max.contour.segments': positive integer, defaulting to '250000'
          and usually not set.  A limit on the number of segments in a
          single contour line in 'contour' or 'contourLines'.

     'max.print': integer, defaulting to '99999'. 'print' or 'show'
          methods can make use of this option, to limit the amount of
          information that is printed, to something in the order of
          (and typically slightly less than) 'max.print' _entries_.

     'OutDec': one-character string.  The character to be used as the
          decimal point in output conversions, that is in printing,
          plotting and 'as.character' but not deparsing.

     'pager': the command used for displaying text files by
          'file.show'. Defaults to 'R_HOME/bin/pager', which selects a
          pager via the 'PAGER' environment variable (and that usually
          defaults to 'less'). Can be a character string or an R
          function, in which case it needs to accept the same first
          four arguments as 'file.show'.

     'papersize': the default paper format used by 'postscript';  set
          by environment variable 'R_PAPERSIZE' when R is started: if
          that is unset or invalid it defaults to a value derived from
          the locale category 'LC_PAPER', or if that is unavailable to
          a default set when R was built.

     'printcmd': the command used by 'postscript' for printing; set by
          environment variable 'R_PRINTCMD' when R is started.  This
          should be a command that expects either input to be piped to
          'stdin' or to be given a single filename argument.

     'prompt': a non-empty string to be used for R's prompt; should
          usually end in a blank ('" "').

     'rl_word_breaks': Used for the readline-based terminal interface. 
          Default value '" \t\n\"\\'`><=%;,|&{()}"'. This is the set of
          characters use to break the input line up into tokens for
          object- and file-name completion.  Those who do not use
          spaces around operators may prefer '"
          \t\n\"\\'`><=+-*%;,|&{()}"'. which was the default in R
          2.5.0.  (The default in pre-2.5.0 versions of R was '"
          \t\n\"\\'`@$><=;|&{("'.)

     'save.defaults', 'save.image.defaults': see 'save'.

     'scipen': integer.  A penalty to be applied when deciding to print
          numeric values in fixed or exponential notation.  Positive
          values bias towards fixed and negative towards scientific
          notation: fixed notation will be preferred unless it is more
          than 'scipen' digits wider.

     'showWarnCalls', 'showErrorCalls': a logical. Should warning and
          error messages show a summary of the call stack?  By default
          error calls are shown in non-interactive sessions.

     'showNCalls': a integer.  Controls how long the sequence of calls
          must be (in bytes) before ellipses are used.  Defaults to 40
          and should be at least 30 and no more than 500.

     'show.error.messages': a logical.  Should error messages be
          printed?  Intended for use with 'try' or a user-installed
          error handler.

     'stringsAsFactors': The default setting for arguments of
          'data.frame' and 'read.table'.

     'texi2dvi': used by function 'texi2dvi' in package 'tools'.

     'timeout': integer.  The timeout for some Internet operations, in
          seconds.  Default 60 seconds.  See 'download.file' and
          'connections'.

     'topLevelEnvironment': see 'topenv' and 'sys.source'.

     'useFancyQuotes': see 'sQuote'.

     'verbose': logical.  Should R report extra information on
          progress?  Set to 'TRUE' by the command-line option
          '-verbose'.

     'warn': sets the handling of warning messages.  If 'warn' is
          negative all warnings are ignored.  If 'warn' is zero (the
          default) warnings are stored until the top-level function
          returns.  If fewer than 10 warnings were signalled they will
          be printed otherwise a message saying how many (max 50) were
          signalled.  An object called 'last.warning' is created and
          can be printed through the function 'warnings'.  If 'warn' is
          one, warnings are printed as they occur.  If 'warn' is two or
          larger all warnings are turned into errors.

     'warnEscapes': logical.  If true (the default) the parser warns on
          unrecognized (backslash) escape sequences and there is a
          truncation warning on any attempt to create a character
          string containing an embedded nul.

     'warnPartialMatchArgs': logical.  If true, warns if partial
          matching is used in argument matching.

     'warnPartialMatchAttr': logical.  If true, warns if partial
          matching is used in extracting attributes via 'attr'.

     'warnPartialMatchDollar': logical.  If true, warns if partial
          matching is used for extraction by '$'.

     'warning.expression': an R code expression to be called if a
          warning is generated, replacing the standard message.  If
          non-null it is called irrespective of the value of option
          'warn'.

     'warning.length': sets the truncation limit for error and warning
          messages.  A non-negative integer, with allowed values
          100...8170, default 1000.

     'width': controls the maximum number of columns on a line used in
          printing vectors, matrices and arrays, and when filling by
          'cat'.

          Columns are normally the same as characters except in CJK
          languages.

          You may want to change this if you re-size the window that R
          is running in.  Valid values are 10...10000 with default
          normally 80.  (The limits on valid values are in file
          'Print.h' and can be changed by re-compiling R.)  Some R
          consoles automatically change the value when they are
          resized.


     The 'factory-fresh' default settings of some of these options are

       'add.smooth'           'TRUE'
       'check.bounds'         'FALSE'
       'continue'             '"+ "'
       'digits'               '7'
       'echo'                 'TRUE'
       'encoding'             '"native.enc"'
       'error'                'NULL'
       'expressions'          '5000'
       'keep.source'          'interactive()'
       'keep.source.pkgs'     'FALSE'
       'max.print'            '99999'
       'OutDec'               '"."'
       'prompt'               '"> "'
       'scipen'               '0'
       'show.error.messages'  'TRUE'
       'timeout'              '60'
       'verbose'              'FALSE'
       'warn'                 '0'
       'warnings.length'      '1000'
       'width'                '80'

     Others are set from environment variables or are
     platform-dependent.

Options set in package grDevices:

     These will be set when package 'grDevices' (or its name space) is
     loaded if not already set.

     'device': a character string giving the name of a function, or the
          function object itself, which when called creates a new
          graphics device of the default type for that session.  The
          value of this option defaults to the normal screen device
          (e.g., 'X11', 'windows' or 'quartz') for an interactive
          session, and 'pdf' in batch use or if a screen is not
          available.  If set to the name of a device, the device is
          looked for first from the global environment (that is down
          the usual search path) and then in the 'grDevices' namespace.

          The default values in interactive and non-interactive
          sessions are configurable via environment variables
          'R_INTERACTIVE_DEVICE' and 'R_DEFAULT_DEVICE' respectively.


     'locatorBell': logical.  Should selection in 'locator' and
          'identify' be confirmed by a bell?  Default 'TRUE'. Honoured
          at least on 'X11' and 'windows' devices.

     'device.ask.default': logical.  The default for
          'devAskNewPage("ask")' when a device is opened.

     'bitmapType': character.  The default type for the bitmap devices
          such as 'png'.  Defaults to '"cairo"' on systems where that
          is available, or to '"quartz"' on Mac OS X where that is
          available.

Options set in package stats:

     These will be set when package 'stats' (or its name space) is
     loaded if not already set.

     'contrasts': the default 'contrasts' used in model fitting such as
          with 'aov' or 'lm'. A character vector of length two, the
          first giving the function to be used with unordered factors
          and the second the function to be used with ordered factors. 
          By default the elements are named 'c("unordered",
          "ordered")', but the names are unused.

     'na.action': the name of a function for treating missing values
          ('NA''s) for certain situations.

     'show.coef.Pvalues': logical, affecting whether P values are
          printed in summary tables of coefficients.  See
          'printCoefmat'.

     'show.signif.stars': logical, should stars be printed on summary
          tables of coefficients?  See 'printCoefmat'.

     'ts.eps': the relative tolerance for certain time series ('ts')
          computations.  Default '1e-05'.

     'ts.S.compat': logical.  Used to select S compatibility for
          plotting time-series spectra.  See the description of
          argument 'log' in 'plot.spec'.

Options set in package utils:

     These will be set when package 'utils' (or its name space) is
     loaded if not already set.

     'browser': default HTML browser used by 'help.start()' and
          'browseURL' on UNIX, or a non-default browser on Windows. 
          Alternatively, an R function that is called with a URL as its
          argument. 

     'de.cellwidth': integer: the cell widths (number of characters) to
          be used in the data editor 'dataentry'. If this is unset (the
          default), 0, negative or 'NA', variable cell widths are used.

     'editor': a non-empty string, or a function that is called with a
          file path as argument. Sets the default text editor, e.g.,
          for 'edit'.  Set from the environment variable 'VISUAL' on
          UNIX.

     'example.ask': default for the 'ask' argument of 'example'.

     'help.try.all.packages': default for an argument of 'help'.

     'HTTPUserAgent': string used as the user agent in HTTP requests. 
          If 'NULL', HTTP requests will be made without a user agent
          header.  The default is 'R (<version> <platform> <arch>
          <os>)'

     'internet.info': The minimum level of information to be printed on
          URL downloads etc.  Default is 2, for failure causes. Set to
          1 or 0 to get more information.

     'menu.graphics': Logical: should graphical menus be used if
          available?.  Defaults to 'TRUE'.  Currently applies to
          'chooseCRANmirror', 'setRepositories' and to select from
          multiple help files in 'help'.

     'pkgType': The default type of packages to be downloaded and
          installed - see 'install.packages'. Possible values are
          '"source"' (the default except under the CRAN Mac OS X build)
          and '"mac.binary"'. The latter can have a suffix if supported
          by a special build, such as '"mac.binary.leopard"' to access
          the '"leopard"' tree of repositories instead of the default
          '"universal"'.

     'repos': URLs of the repositories for use by 'update.packages'. 
          Defaults to 'c(CRAN="@CRAN@")', a value that causes some
          utilities to prompt for a CRAN mirror.  To avoid this do set
          the CRAN mirror, by something like 'local({r <-
          getOption("repos"); r["CRAN"] <- "http://my.local.cran";
          options(repos=r)})'.

          Note that you can add more repositories (Bioconductor and
          Omegahat, notably) using 'setRepositories()'.

     'SweaveHooks', 'SweaveSyntax': see 'Sweave'.

     'unzip': a character string, the path of the command used for
          unzipping help files, or '"internal"'. Defaults to the value
          of 'R_UNZIPCMD', which is set in 'etc/Renviron' if an 'unzip'
          command was found during configuration.

Options used on Unix only:

     These will be '""' if no suitable path is known.

     'latexcmd, dvipscmd': character strings giving commands to be used
          in off-line printing of help pages.

     'pdfviewer': default PDF viewer.  Set from the environment
          variable 'R_PDFVIEWER'.

References:

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

Examples:

     op <- options(); utils::str(op) # op() may contain functions.

     getOption("width") == options()$width # the latter needs more memory
     options(digits = 15)
     pi

     # set the editor, and save previous value
     old.o <- options(editor = "nedit")
     old.o

     options(check.bounds = TRUE, warn = 1)
     x <- NULL; x[4] <- "yes" # gives a warning

     options(digits=5)
     print(1e5)
     options(scipen=3); print(1e5)

     options(op)     # reset (all) initial options
     options("digits")

     ## Not run: 
     ## set contrast handling to be like S
     options(contrasts = c("contr.helmert", "contr.poly"))
     ## End(Not run)

     ## Not run: 
     ## on error, terminate the R session with error status 66
     options(error = quote(q("no", status=66, runLast=FALSE)))
     stop("test it")
     ## End(Not run)

     ## Not run: 
     ## Set error actions for debugging:
     ## enter browser on error, see ?recover:
     options(error = recover)
     ## allows to call debugger() afterwards, see ?debugger:
     options(error = dump.frames)
     ## A possible setting for non-interactive sessions
     options(error = quote({dump.frames(to.file=TRUE); q()}))
     ## End(Not run)

