The goal of usethis is to automate many common package and analysis setup tasks.
Install the released version of usethis from CRAN:
install.packages("usethis")
Or install the development version from GitHub with:
# install.packages("devtools") devtools::install_github("r-lib/usethis")
Most use_*()
functions operate on the active project. If youβve just used usethis to create a new package or project, that will be the current project. Otherwise usethis tries to confirm that current working directory can be recognized as a project. Use proj_get()
and proj_set()
for manual intervention. Some functions have no strong connections to projects and will expect you to provide a path.
usethis is quite chatty, explaining what itβs doing and assigning you tasks. β
indicates something usethis has done for you. β
indicates that youβll need to do some work yourself.
Below is a quick look at how usethis can help to set up a package.
Note: usethis is gaining more and more functionality for analytical project that are not packages. Stay tuned.
library(usethis) # Create a new package ------------------------------------------------- tmp <- file.path(tempdir(), "mypkg") create_package(tmp) #> Changing active project to mypkg #> β Creating 'R/' #> β Creating 'man/' #> β Writing 'DESCRIPTION' #> β Writing 'NAMESPACE' # Modify the description ---------------------------------------------- use_mit_license("My Name") #> β Setting License field in DESCRIPTION to 'MIT + file LICENSE' #> β Writing 'LICENSE.md' #> β Adding '^LICENSE\\.md$' to '.Rbuildignore' #> β Writing 'LICENSE' use_package("MASS", "Suggests") #> β Adding 'MASS' to Suggests field in DESCRIPTION #> β Use `requireNamespace("MASS", quietly = TRUE)` to test if package is installed #> β Then use `MASS::fun()` to refer to functions. use_dev_package("callr") #> β Adding 'callr' to Imports field in DESCRIPTION #> β Refer to functions with `callr::fun()` #> β Adding 'r-lib/callr' to DESCRIPTION Remotes # Set up various packages --------------------------------------------- use_roxygen_md() #> β Setting Roxygen field in DESCRIPTION to 'list(markdown = TRUE)' #> β Setting RoxygenNote field in DESCRIPTION to '6.0.1.9000' #> β Re-document use_rcpp() #> β Adding 'Rcpp' to LinkingTo field in DESCRIPTION #> β Adding 'Rcpp' to Imports field in DESCRIPTION* #> β Creating 'src/' #> β Adding '*.o', '*.so', '*.dll' to 'src/.gitignore' #> β Include the following roxygen tags somewhere in your package #> #' @useDynLib mypkg, .registration = TRUE #> #' @importFrom Rcpp sourceCpp #> NULL #> β Run document() use_revdep() #> β Creating 'revdep/' #> β Adding '^revdep$' to '.Rbuildignore' #> β Adding 'checks', 'library', 'checks.noindex', 'library.noindex', 'data.sqlite', '*.html' to 'revdep/.gitignore' #> β Writing 'revdep/email.yml' #> β Run checks with `revdepcheck::revdep_check(num_workers = 4)` # Set up other files ------------------------------------------------- use_readme_md() #> β Writing 'README.md' use_news_md() #> β Writing 'NEWS.md' #> β Edit 'NEWS.md' use_test("my-test") #> β Adding 'testthat' to Suggests field in DESCRIPTION #> β Creating 'tests/testthat/' #> β Writing 'tests/testthat.R' #> β Writing 'tests/testthat/test-my-test.R' #> β Edit 'test-my-test.R' x <- 1 y <- 2 use_data(x, y) #> β Creating 'data/' #> β Saving x to data/x.rda #> β Saving y to data/y.rda # Use git ------------------------------------------------------------ use_git() #> β Initialising Git repo #> β Adding '.Rhistory', '.RData', '.Rproj.user' to './.gitignore' #> β Adding files and committing
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4