Rdiff {tools} | R Documentation |
Given two R output files, compute differences ignoring headers, footers and some other differences.
Rdiff(from, to, useDiff = FALSE, forEx = FALSE,
nullPointers = TRUE, Log = FALSE)
from, to |
filepaths to be compared |
useDiff |
should |
forEx |
logical: extra pruning for ‘-Ex.Rout’ files to exclude the header. |
nullPointers |
logical: should the displayed addresses of
pointers be set to |
Log |
logical: should the returned value include a log of differences found? |
The R startup banner and any timing information from R CMD
BATCH
are removed from both files, together with lines about
loading packages. UTF-8 fancy quotes (see sQuote
) and
on Windows, Windows' so-called ‘smart quotes’, are mapped to
a simple quote. Addresses of environments, compiled bytecode and
other exotic types expressed as hex addresses
(e.g., <environment: 0x12345678>
) are mapped to
0x00000000
. The files are then compared line-by-line. If
there are the same number of lines and useDiff
is false, a
simple diff -b
-like display of differences is printed
(which ignores trailing spaces and differences in numbers of
consecutive spaces), otherwise diff -bw
is called on the
edited files. (This tries to ignore all differences in whitespace:
note that flag -w is not required by POSIX but is supported
by GNU, Solaris and FreeBSD versions – macOS uses an old GNU version.)
This can compare uncompressed PDF files, ignoring differences in creation and modification dates. However, non-ASCII text may not be handled in UTF-8 locales, and it does not check if the PDF files really are uncompressed. This is unlikely to be supported in future versions of R.
Mainly for use in examples and tests, text from marker ‘> ## IGNORE_RDIFF_BEGIN’ up to (but not including) ‘> ## IGNORE_RDIFF_END’ is ignored.
If Log
is true, a list with components status
(see
below) and out
, a character vector of descriptions of
differences, possibly of zero length.
Otherwise, a status indicator (invisibly), 0L
if and only if no
differences were found.
The shell script run as R CMD Rdiff
, which uses
useDiff = TRUE
.