| % File src/library/tools/man/userdir.Rd |
| % Part of the R package, https://www.R-project.org |
| % Copyright 2020 R Core Team |
| % Distributed under GPL 2 or later |
| |
| \name{userdir} |
| \alias{R_user_dir} |
| \title{R User Directories} |
| \description{ |
| Directories for storing R-related user-specific data, configuration |
| and cache files. |
| } |
| \usage{ |
| R_user_dir(package, which = c("data", "config", "cache")) |
| } |
| \arguments{ |
| \item{package}{a character string giving the name of an \R package} |
| \item{which}{a character string indicating the kind of file(s) of |
| interest. Can be abbreviated.} |
| } |
| \details{ |
| For desktop environments using X Windows, the freedesktop.org project |
| (formerly X Desktop Group, XDG) developed the XDG Base Directory |
| Specification |
| (\url{https://specifications.freedesktop.org/basedir-spec}) for |
| standardizing the location where certain files should be placed. CRAN |
| package \CRANpkg{rappdirs} provides these general locations with |
| appropriate values for all platforms for which \R is available. |
| |
| \code{R_user_dir} specializes the general mechanism to R package |
| specific locations for user files, by providing package specific |
| subdirectories inside a \file{R} subdirectory inside the ``base'' |
| directories appropriate for user-specific data, configuration and |
| cache files (see the examples), with the intent that packages will not |
| interfere if they work within their respective subdirectories. |
| |
| The locations of these base directories can be customized via the |
| specific environment variables |
| \env{R_USER_DATA_DIR}, |
| \env{R_USER_CONFIG_DIR} and |
| \env{R_USER_CACHE_DIR}. |
| If these are not set, the general XDG-style environment variables |
| \env{XDG_DATA_HOME}, |
| \env{XDG_CONFIG_HOME} and |
| \env{XDG_CACHE_HOME} |
| are used if set, and otherwise, defaults appropriate for the \R |
| platform in use are employed. |
| } |
| \examples{ |
| ## IGNORE_RDIFF_BEGIN |
| R_user_dir("FOO", "cache") |
| ## IGNORE_RDIFF_END |
| } |