Wrappers for working with the clipboard
Usage
write_clipboard(x, ...)
# Default S3 method
write_clipboard(x, ...)
# S3 method for class 'data.frame'
write_clipboard(x, sep = "\t", row.names = FALSE, ...)
# S3 method for class 'matrix'
write_clipboard(x, sep = "\t", ...)
# S3 method for class 'list'
write_clipboard(x, sep = "\t", ...)
read_clipboard(method = read_clipboard_methods(), ...)
read_clipboard_methods()Arguments
- x
An object to write to the clipboard
- ...
Additional arguments sent to methods or to
utils::write.table()- sep
the field separator string. Values within each row of
xare separated by this string.- row.names
either a logical value indicating whether the row names of
xare to be written along withx, or a character vector of row names to be written.- method
Method switch for loading the clipboard
Value
write_clipboard()None, called for side effectsread_clipboard()Either a vector,data.frame, ortibbledepending on themethodchosen. Unlikeutils::readClipboard(), an empty clipboard value returnsNArather than""
Details
As these functions rely on clipr::read_clip() and
utils::writeClipboard() they are only available for Windows 10. For
copying and pasting floats, there may be some rounding that can occur.
Examples
# Will only run on windows
foo <- function(x) {
write_clipboard(x)
y <- read_clipboard()
res <- all.equal(x, y)
if (isTRUE(res)) return("All equal")
print(x)
print(y)
}
foo(1:4)
#> Error: Clipboard on X11 requires 'xclip' (recommended) or 'xsel'; Clipboard on Wayland requires 'wl-copy' and 'wl-paste'.
foo(seq(-1, 1, .02))
#> Error: Clipboard on X11 requires 'xclip' (recommended) or 'xsel'; Clipboard on Wayland requires 'wl-copy' and 'wl-paste'.
foo(Sys.Date() + 1:4)
#> Error: Clipboard on X11 requires 'xclip' (recommended) or 'xsel'; Clipboard on Wayland requires 'wl-copy' and 'wl-paste'.
# May have some rounding issues
x <- "0.316362437326461129"
write_clipboard(x)
#> Error: Clipboard on X11 requires 'xclip' (recommended) or 'xsel'; Clipboard on Wayland requires 'wl-copy' and 'wl-paste'.
res <- as.character(read_clipboard())
#> Error: Clipboard on X11 requires 'xclip' (recommended) or 'xsel'; Clipboard on Wayland requires 'wl-copy' and 'wl-paste'.
all.equal(x, res)
#> Error: object 'res' not found
x; res
#> [1] "0.316362437326461129"
#> Error: object 'res' not found