1

我正在使用bookdownplus R带有dnd模板的包。我使用了以下代码。

library('bookdownplus')
bookdownplus('dnd', render = TRUE, rproj = TRUE)

当我编译文档时,它会抛出错误:

! Undefined control sequence.
l.61 \hypertarget
                 {chapter-1-bookdownplus}

解决问题的任何提示。谢谢

会话信息

sessionInfo()
R version 3.5.3 (2019-03-11)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.2 LTS

Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] bookdownplus_1.5.6

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.1      bookdown_0.9.2  packrat_0.5.0   digest_0.6.18  
 [5] magrittr_1.5    evaluate_0.13   stringi_1.4.3   rstudioapi_0.10
 [9] rmarkdown_1.12  tools_3.5.3     stringr_1.4.0   tinytex_0.11   
[13] xfun_0.6        yaml_2.2.0      compiler_3.5.3  htmltools_0.3.6
[17] knitr_1.22.8  

已编辑

使用@Maurits Evers 的建议,我使用on更新了 TinyTex。我仍然收到错误:`!未定义的控制序列。l.61 \hypertarget {chapter-1-bookdownplus}{%wget -qO- "https://yihui.name/gh/tinytex/tools/install-unx.sh" | shUbuntu 18.04 LTS

错误:无法编译 dnd.tex。有关调试提示,请参阅https: //yihui.name/tinytex/r/#debugging。` 任何想法。

错误报告

错误报告tinytexbookdownplus

4

1 回答 1

1

我无法在运行 MacTex 的 MacOS 上重现您的问题bookdownplus_1.5.6

library('bookdownplus')
bookdownplus('dnd', render = TRUE, rproj = TRUE)

给出以下输出

#trying URL 'https://github.com/pzhaonet/bookdownplus/raw/master/upload/dnd/demo.zip'
#Content type 'application/zip' length 3325858 bytes (3.2 MB)
#==================================================
#downloaded 3.2 MB
#
#
#
#processing file: dnd.Rmd
#  |......................                                           |  33%
#  ordinary text without R code
#
#  |...........................................                      |  67%
#label: unnamed-chunk-1 (with options)
#List of 2
# $ type  : chr "quotebox"
# $ engine: chr "block"
#
#  |.................................................................| 100%
#  ordinary text without R code
#
#
#output file: dnd.knit.md
#
#/usr/local/bin/pandoc +RTS -K512m -RTS dnd.utf8.md --to latex --from markdown+autolink_bare_uris+ascii_identifiers+tex_math_single_backslash --output dnd.tex --table-of-contents --toc-depth 3 --template tex/template_dnd_dev.tex --number-sections --highlight-style tango --latex-engine pdflatex --natbib --top-level-division=chapter --variable tables=yes --standalone
#
#Output created: _book/dnd.pdf

在此处输入图像描述

我认为这个问题可能与您不完整/缺少的 LaTeX 环境有关。您看到的错误表明您缺少hyperrefpackage。根据您的操作系统,我相信大多数(全部?)标准(La)TeX 发行版(例如 MacOS 上的 MacTex/TeX Live,Windows 上的 MiKTeX,...)hyperref默认包含。所以首先要做的是确保你的操作系统上有一个可以工作的 TeX 发行版。然后尝试重新编译bookdownplus示例。


确保你有一个功能性的 TeX 发行版

让我们创建一个test.tex包含以下内容的示例 LaTeX 文件

\documentclass{article}
\usepackage{hyperref}
\begin{document}
\href{https://www.r-project.org}{The R Project for Statistical Computing}
\end{document}

将文件存储在一个文件夹中,然后从同一个文件夹中打开一个 R 终端并使用

tinytex::pdflatex("test.tex")

输出应为 PDF 文件test.pdf

于 2019-04-26T02:08:40.407 回答