Type: | Package |
Title: | Diff TeX, 'rmarkdown' or 'quarto' Files Using the 'latexdiff' Utility |
Version: | 0.2.0 |
Author: | David Hugh-Jones [aut, cre] |
Maintainer: | David Hugh-Jones <davidhughjones@gmail.com> |
Description: | Produces a PDF diff of two 'rmarkdown', 'quarto', Sweave or TeX files, using the external 'latexdiff' utility. |
License: | MIT + file LICENSE |
URL: | https://github.com/hughjonesd/latexdiffr |
BugReports: | https://github.com/hughjonesd/latexdiffr/issues |
Encoding: | UTF-8 |
Imports: | assertthat, fs, rprojroot |
Suggests: | tinytex, rmarkdown, knitr, quarto, testthat, covr |
SystemRequirements: | latexdiff |
RoxygenNote: | 7.2.3 |
NeedsCompilation: | no |
Packaged: | 2024-02-16 09:51:55 UTC; davidhugh-jones |
Repository: | CRAN |
Date/Publication: | 2024-02-16 10:10:02 UTC |
Call latexdiff on git revisions
Description
git_latexdiff()
checks out a previous version of a file and calls latexdiff
on it.
Usage
git_latexdiff(path, revision, clean = TRUE, ...)
Arguments
path |
File path to diff |
revision |
Revision, specified in a form that |
clean |
Clean up intermediate files, including the checked out file? |
... |
Arguments passed to |
Details
git_latexdiff
only checks out the specific file in path
. If your Rmd file depends on external
resources which have also changed, you will need to checkout the old revision as a whole and
create the tex file manually.
Value
The result of latexdiff
.
Examples
## Not run:
git_latexdiff("file1.Rmd", "HEAD^")
git_latexdiff("file1.Rmd", "master@{7 days ago}")
## End(Not run)
Produce a diff of two files using latexdiff
Description
latexdiff()
uses the external utility latexdiff
to create a PDF file
showing differences between two Rmd, qmd, Rnw or TeX files.
Usage
latexdiff(
path1,
path2,
output = "diff",
compile = TRUE,
open = interactive(),
clean = TRUE,
quiet = TRUE,
output_format = NULL,
ld_opts = "--replace-context2cmd=\"none\""
)
Arguments
path1 |
Path to the first file. |
path2 |
Path to the second file. |
output |
File name of the output, without the |
compile |
Logical. Compile the diff from tex to pdf? |
open |
Logical. Automatically open the resulting pdf? |
clean |
Logical. Clean up intermediate TeX files? |
quiet |
Logical. Suppress printing? Passed to |
output_format |
An rmarkdown output format for Rmd files, probably
|
ld_opts |
Character vector of options to pass to |
Details
You will need the latexdiff
utility installed on your system:
# on MacOS: brew install latexdiff # on Linux: sudo apt install latexdiff
File types are determined by extension,which should be one of .tex
, .Rmd
,
.qmd
or .rnw
. Rmd files are processed by rmarkdown::render()
. Rnw files
are processed by knitr::knit()
. qmd files are processed by
quarto::quarto_render()
.
latexdiff
is not perfect. Some changes will confuse it. In particular:
If input and output files are in different directories, the
"diff.tex"
file may have incorrect paths for e.g. included figures.latexdiff
will add the--flatten
option in this case, but things still are not guaranteed to work.Sometimes the
"diff.tex"
file fails to compile to pdf. If so, setcompile = FALSE
and try editing the tex file manually.
Value
Invisible NULL.
Examples
## Not run:
latexdiff("file1.Rmd", "file2.Rmd")
## End(Not run)