detailed_entries() 在使用自定义模板的 R vitae 包中无法正确呈现

问题描述 投票:0回答:1

我已经为自定义模板创建了一个非常基本的修改,如此处所述。但是,当我编织文件mycv_public_mod.Rmd时,它无法正确渲染detailed_entries();相反,它只打印 tibble(),如链接存储库中的输出文件所示:mycv_public_mod.pdf

对于回答原始问题(上面第一个链接)的用户来说,似乎没有发生此问题。我在 Ubuntu 22 上运行 XeTeX,版本 3.141592653-2.6-0.999993 (TeX Live 2022/dev/Debian)

我昨晚更新了所有 R 软件包,想知道是否有更新可能破坏了功能。我还运行了以下...

sudo R
tinytex::tlmgr_update()

它在 /var/lib/texmf/web2c 中安装了更新

让我知道是否还有其他版本需要检查,或者是否有人可以复制此问题/提供解决方案。

r r-markdown pandoc tex xetex
1个回答
0
投票

步骤1

当我尝试在“mycv_public_mod.Rmd”文件上使用

rmarkdown::render()
而不进行任何更改时 - 我收到以下错误:

LaTex Error: File 'awesome-cv.cls' not found

在查看

vitae
的文档和小插图后,我发现了这篇关于在简历中使用模板的文章。在那篇文章中,标题“使用带有 Rmarkdown 的模板”下的一行内容如下。

您还需要将模板提供的所有 LaTeX 类 (.cls) 和样式 (.sty) 文件复制到与您的 rmarkdown 文档相同的文件夹中。完成后,您的新模板应该可以与 vitae 包一起使用。

显然,我缺少模板必须具有的 .cls 文件才能在 Rmarkdown 中使用。文档指出 .cls(和 .sty)文件将与模板一起使用,所以我将从这里开始。

第2步

我从一个文件夹开始,其中包含通过 github 提供的以下文件 - 仅渲染 Rmd 所需的文件:

  • apa-single-spaced_mod.csl
  • mycv_public_mod.Rmd
  • mypubs.bib

我在“mycv_public_mod.Rmd”上使用

rmarkdown::render()
,并稍微修改了以下 YAML:

---
name: Jessica
surname: Gorzo
position: "Data Scientist"
pronouns: she/her
address: "Cellular Tracking Technologies"
www: avianecologist.com
twitter: setophaga
github: dendroica
linkedin: gorzo
date: "`r format(Sys.time(), '%B %Y')`"
output:
  vitae::awesomecv:
    page_total: TRUE
    keep_tex: TRUE
csl: apa-single-spaced_mod.csl
---

这些 YAML 选项将使用

vitae::awesomecv()
生成 CV。渲染成功并生成格式正确的文件:

我的文件夹现在包含渲染后的以下文件:

  • apa-single-spaced_mod.csl(存在于 og 文件夹中)
  • mycv_public_mod.pdf(渲染文档)
  • mycv_public_mod.Rmd(存在于 og 文件夹中)
  • mycv_public_mod.tex(新!)
  • mypubs.bib(存在于 og 文件夹中)
  • 真棒-cv.cls
  • 字体/(新!)

我现在有一个新的 .tex 文件(由渲染产生)、一个 .cls 文件和一个“fonts”文件夹。根据我最初的错误,我现在似乎已经有了我需要的东西。

第3步

我返回“mycv_public_mod.Rmd”并设置以下 YAML:

---
name: Jessica
surname: Gorzo
position: "Data Scientist"
pronouns: she/her
address: "Cellular Tracking Technologies"
www: avianecologist.com
twitter: setophaga
github: dendroica
linkedin: gorzo
date: "`r format(Sys.time(), '%B %Y')`"
output:
  vitae::cv_document:
    latex_engine: xelatex # Specify so it uses this instead of pdflatex
    keep_tex: TRUE # Keep tex file in-between runs
    template: mycv_public_mod.tex # Template that we just made
csl: apa-single-spaced_mod.csl
---

当我运行

rmarkdown::render()
时,它再次使用我刚刚制作的“模板”(技术上只是默认的awesomeCV)生成格式正确的文档。从模板创建中添加 .cls 文件似乎已经成功,我可以使用
vitae::cv_document()
函数来使用模板并创建简历。

第4步

OP 请求使用 github 中提供的特殊模板。这次,我将在文件夹中包含这些文件:

  • awesome-cv.cls(通过
    awesomecv()
    函数和渲染创建)
  • mycv_public_mod.Rmd(来自 GH)
  • mypubs.bib(来自 GH)
  • awesome-cv_mod.tex(来自 GH;来自 OP 的修改后的所需简历模板)
  • apa-single-spaced_mod.csl(来自 GH)
  • fonts/(通过
    awesomecv()
    函数和渲染创建的文件夹)

这里最重要的部分是我有“/fonts”文件夹和“awesome-cv.cls”,它们都是使用模板生成的。

我使用以下 YAML 准备“mycv_public_mod.Rmd”:

---
name: Jessica
surname: Gorzo
position: "Data Scientist"
pronouns: she/her
address: "Cellular Tracking Technologies"
www: avianecologist.com
twitter: setophaga
github: dendroica
linkedin: gorzo
date: "`r format(Sys.time(), '%B %Y')`"
output:
  vitae::cv_document:
    latex_engine: "xelatex" # Need to specify as dependency of awesomeCV
    template: "awesome-cv_mod.tex" # Modified template provided by OP
csl: apa-single-spaced_mod.csl
---

我再次使用

rmarkdown::render()
,并通过 模板重新着色。

© www.soinside.com 2019 - 2024. All rights reserved.