write_clip()
calls on Windows are
modified to work well with R’s shift to supporting UTF-8 as a native
encoding on Windows. Thank you to @yutannihilation for the PR. Read
more here: https://github.com/mdlincoln/clipr/issues/62--output
flag, which prevents
RStudio from hanging when calling clipr functions on a system running
certain Linux window managers. Thank you to @cgillespie and @kevinushey for identifying the bug and
the solution, and to @hannahcgunderman for help in
testing.Thank you to @jennybc for prompting these changes:
clipr_available()
will first explicitly check if it is
being run non-interactively, and if so, if the CLIPR_ALLOW
environment variable has been set. This will hopefully prevent starting
spurious Linux processes during CRAN tests.read_clip()
now does
the same interactive/envvar check that write_clip()
does.Thank you to @wangyuchen for making the following suggestions:
To make clipr more pipe-friendly, write_clip()
now
defaults to return_new = FALSE
, and will instead return the
initial object that was passed in. To get the old behavior, pass
return_new = TRUE
In an effort to make write_clip()
and
read_clip_tbl()
more symmetrical, write_clip()
now defaults to writing out row and column names when they
exist.
Introduces write_last_clip()
, a wrapper function for
write_clip(.Last.value)
To comply with CRAN policy, write_clip()
will now
error by default if run in a non-interactive session. Non-interactive
use must be explicitly enabled by setting an environment variable
CLIPR_ALLOW=TRUE
.
Documented that the default behavior when writing matrices to
write_clip()
is col.names = FALSE
dr_clipr()
, which gives informative
suggestions for software and configuration requirements when accessing
the clipboard on X11-based systems.Suppress an erroneous warning on OS X / X11 systems when trying to write an empty string to the clipboard.
Fix error when NA
is passed to
write_clip()
. This will now write "NA"
to the
clipboard.
Fix error when passing NULL
or an empty vector
(e.g. character(0)
). This will now write ""
to
the clipboard.
Fixes a breaking bug that caused clipr_available
to
erroneously return FALSE
. Thank you to @krivit for catching
this.
Introduces better testing of clipr_available
to
properly evaluate it on Travis CI.
Introduces clipr_available
which checks to see if
the system clipboard is writeable/readable. This may be useful if you
are developing a package that relies on clipr and need to ensure that it
will skip tests on machines (e.g. CRAN, Travis) where the system
clipboard may not be available. Thank you to @jennybc for this suggestion.
Implements genuine testing of clipr functionality with thanks to some deft environment variable settings added by @jennybc.
Two RStudio addins: one to copy the value returned when a highlighted expression is evaluated, and another that copies the console output.
Introduces read_clip_tbl
, a convenience function
that takes tab-delimited text from read_clip
(such as that
copied from a spreadsheet) and parses it with read.table
.
Thank you to Steve Simpson (@data-steve) for the original
PR.
write_clip(object_type = "table")
has a new internal
implementation (writing to a temporary file rather than using
capture.output
) which should dramatically shorten the time
it takes to write very large tables to the clipboard. Thank you to @r2evans for this
suggestion.
Several changes to write_clip
- The separator to be
used when writing a character vector can now be explicitly declared
using breaks
. breaks=NULL
will default to
system-specific line breaks for both vectors and tables. -
write_clip
will default to formatting data.frames and
matrices with write.table
, allowing easy pasting of tabular
objects into programs like Excel. Option object_type="auto"
will check the object type to decide on the correct formatting, or the
user may explicitly state object_type="table"
or
object_type="character"
. - clipr will default to sane
system-specific options for write.table()
, however you may
pass any custom desired options via write_clip
-
return_new=TRUE
(the default behavior) will return the
formatted character string that was passed to the system clipboard,
while write_clip(return_new=FALSE)
will return the original
object.
Introduces clear_clip
, a wrapper function for
write_clip("")
for easy clearing of the system
clipboard.