| cli_progress_along {cli} | R Documentation |
Note that this function is currently experimental!
Use cli_progress_along() in a mapping function or in a for loop, to add a
progress bar. It uses cli_progress_bar() internally.
cli_progress_along( x, name = NULL, total = length(x), ..., .envir = parent.frame() )
x |
Sequence to add the progress bar to. |
name |
Name of the progress bar, a label, passed to
|
total |
Passed to |
... |
Passed to |
.envir |
Passed to |
for loopA for loop with cli_progress_along() looks like this:
for (i in cli_progress_along(seq)) {
...
}
A complete example:
clifun <- function() {
for (i in cli_progress_along(1:100, "Downloading")) {
Sys.sleep(4/100)
}
}
clifun()
lapply() and other mapping functionsThey will look like this:
lapply(cli_progress_along(X), function(i) ...)
A complete example:
res <- lapply(cli_progress_along(1:100, "Downloading"), function(i) {
Sys.sleep(4/100)
})
clifun <- function() {
for (i in cli_progress_along(1:100,
format = "Downloading data file {cli::pb_current}")) {
Sys.sleep(4/100)
}
}
clifun()
Note that if you use break in the for loop, you probably want to
terminate the progress bar explicitly when breaking out of the loop,
or right after the loop:
for (i in cli_progress_along(seq)) {
...
if (cond) cli_progress_done() && break
...
}
An index vector from 1 to length(x) that triggers progress
updates as you iterate over it.
cli_progress_bar() and the traditional progress bar API.