Roxyglobals
Generate utils::globalVariables() from roxygen tags
Install / Use
/learn @anthonynorth/RoxyglobalsREADME
roxyglobals
<!-- badges: start --> <!-- badges: end -->Generate utils::globalVariables() from roxygen @autoglobal and @global tags.
Installation
# Install the released version from CRAN
install.packages("roxyglobals")
# Install the released version from r-universe
install.packages("roxyglobals", repos = "https://anthonynorth.r-universe.dev")
# Or the development version from GitHub:
# install.packages("remotes")
remotes::install_github("anthonynorth/roxyglobals")
Setup
Add roxyglobals to an R package DESCRIPTION via:
# Add to current R package
roxyglobals::use_roxyglobals()
# Or add to another R package
# install.packages("withr")
withr::with_dir("path/to/package", roxyglobals::use_roxyglobals())
Config
By default, roxyglobals writes all discovered globals (including duplicates) to R/globals.R. You may configure the filename and global generation behaviour with:
# write globals to R/generated-globals.R
roxyglobals::options_set_filename("generated-globals.R")
# only emit unique globals
roxyglobals::options_set_unique(TRUE)
Usage
Add @autoglobal to a function roxygen comment block, example:
#' Summarise responses
#'
#' @name summarise_responses
#' @param responses a data.frame of responses
#'
#' @autoglobal
#' @export
summarise_responses <- function(responses) {
# station_name, station_type, end_time, start_time need to be added to
# utils::globalVariables() to keep R CMD CHECK happy
responses |>
dplyr::group_by(station_name, station_type) |>
dplyr::summarise(
count_responses = dplyr::n(),
total_hours = sum(
as.numeric(end_time - start_time, units = "hours"),
na.rm = TRUE
),
.groups = "drop"
)
}
Or @global, example:
#' Summarise responses
#'
#' @name summarise_responses
#' @param responses a data.frame of responses
#'
#' @global station_name station_type end_time start_time
#' @export
summarise_responses <- function(responses) {
# station_name, station_type, end_time, start_time need to be added to
# utils::globalVariables() to keep R CMD CHECK happy
responses |>
dplyr::group_by(station_name, station_type) |>
dplyr::summarise(
count_responses = dplyr::n(),
total_hours = sum(
as.numeric(end_time - start_time, units = "hours"),
na.rm = TRUE
),
.groups = "drop"
)
}
Run devtools::document() to generate utils::globalVariables() in your globals file (default R/globals.R). Example globals file:
# Generated by roxyglobals: do not edit by hand
utils::globalVariables(c(
"end_time", # <summarise_responses>
"start_time", # <summarise_responses>
"station_name", # <summarise_responses>
"station_type", # <summarise_responses>
NULL
))
Related Skills
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
