Temporarily change the system search path.
Usage
with_path(new, code, action = c("prefix", "suffix", "replace"))
local_path(
new = list(),
action = c("prefix", "suffix", "replace"),
.local_envir = parent.frame()
)
Arguments
- new
[character]
NewPATH
entries- code
[any]
Code to execute in the temporary environment- action
[character(1)]
Should new values"replace"
,"prefix"
(the default) or"suffix"
existing paths- .local_envir
[environment]
The environment to use for scoping.
See also
withr
for examples
Examples
# temporarily modify the system PATH, *prefixing* the current path
with_path(getwd(), Sys.getenv("PATH"))
#> [1] "/home/runner/work/withr/withr/docs/reference:/snap/bin:/home/runner/.local/bin:/opt/pipx_bin:/home/runner/.cargo/bin:/home/runner/.config/composer/vendor/bin:/usr/local/.ghcup/bin:/home/runner/.dotnet/tools:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"
# temporarily modify the system PATH, *appending* to the current path
with_path(getwd(), Sys.getenv("PATH"), "suffix")
#> [1] "/snap/bin:/home/runner/.local/bin:/opt/pipx_bin:/home/runner/.cargo/bin:/home/runner/.config/composer/vendor/bin:/usr/local/.ghcup/bin:/home/runner/.dotnet/tools:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/games:/snap/bin:/home/runner/work/withr/withr/docs/reference"