R: Run an R process that mimics the current R process

r_copycat {callr} | R Documentation

## Run an R process that mimics the current R process

### Description

Differences to `r()`:

- No extra repoditories are set up.

- The `--no-site-file`, `--no-environ`, `--no-save`, `--no-restore` command line arguments are not used. (But `--slave` still is.)

- The system profile and the user profile are loaded.

- No extra environment variables are set up.

### Usage

    r_copycat(func, args = list(), libpath = .libPaths(),
      repos = getOption("repos"), cmdargs = "--slave", system_profile = TRUE,
      user_profile = TRUE, env = character(), ...)

### Arguments

`func` | Function object to call in the new R process. The function should be self-contained and only refer to other functions and use variables explicitly from other packages using the `::` notation. The environment of the function is set to `.GlobalEnv` before passing it to the child process. Because of this, it is good practice to create an anonymous function and pass that to `callr`, instead of passing a function object from a (base or other) package. In particular
    r(.libPaths)
does not work, because `.libPaths` is defined in a special environment, but
    r(function() .libPaths())
works just fine.
`args` | Arguments to pass to the function. Must be a list.
`libpath` | The library path.
`repos` | The repos option. If `NULL`, then no repos option is set. This options is only used if `user_profile` or `system_profile` is set `FALSE`, as it is set using the system or the user profile.
`cmdargs` | Command line arguments to pass to the R process. Note that `c("-f", rscript)` is appended to this, `rscript` is the name of the script file to run. This contains a call to the supplied function and some error handling code.
`system_profile` | Whether to use the system profile file.
`user_profile` | Whether to use the user's profile file.
`env` | Environment variables to set for the child process.
`...` | Additional arguments are passed to `r()`.

### See Also

Other callr functions: `r_vanilla`, `r`

[Package callr version 2.0.2 Index]