R/with-blanks.R

Defines functions with_blanks insert_blanks

Documented in with_blanks

insert_blanks <- function(after = NULL, before = NULL, data) {
  .after <- tidyselect::eval_select(after, data) + 0.1
  .before <- tidyselect::eval_select(before, data) - 0.1

  c(
    names(data),
    sprintf("..after%s", seq_along(.after)),
    sprintf("..before%s", seq_along(.before))
  )[order(c(seq_along(data), .after, .before))]
}

#' Specify blank columns easily via `col_keys`
#'
#' @param after,before
#'   Blank columns are added after/before the selected columns.
#'   Selections can be done by the semantics of `dplyr::select`.
#'
#' @examples
#' iris %>%
#'   as_flextable(col_keys = with_blanks(dplyr::ends_with("Width")))
#' @export
with_blanks <- function(after = NULL, before = NULL) {
  .Deprecated(msg = paste(
    "This is a result of deprecating ftExtra:::as_flextable.data.frame"
  ))
  after <- rlang::enquo(after)
  before <- rlang::enquo(before)
  function(data) insert_blanks(after = after, before = before, data = data)
}

Try the ftExtra package in your browser

Any scripts or data that you put into this service are public.

ftExtra documentation built on Sept. 29, 2023, 9:06 a.m.