我正在进行Beamer演示,并且在单张幻灯片的内容之间使用暂停。我不知道如何仅在暂停后才显示脚注。
这是一个例子:

---
title: ""
author: ""
date: ""
output:
  beamer_presentation
bibliography: test.bib
---

* one argument

\pause

* another argument^[This citation should appear only with point 2: @fargues2006]

# references
test.bib:
@article{fargues2006,
  title = {The {{Demographic Benefit}} of {{International Migration}}: {{Hypothesis}} and {{Application}} to {{Middle Eastern}} and {{North African Contexts}}},
  author = {Fargues, Philippe},
  date = {2006},
  journaltitle = {World Bank Policy Research Paper},
  url = {http://documents.worldbank.org/curated/en/508301468280735279/pdf/wps4050.pdf},
  number = {4050}
}
在此示例中,当仅显示第一个点时,不应显示脚注,而在显示第二个点时,应显示脚注。
我尝试应用this answer from TeX StackExchange,但没有成功。
我怎样才能做到这一点?
编辑:在@ samcarter_is_at_topanswers.xyz的回答之后,,我想我宁愿选择一种解决方案,该解决方案不需要幻灯片中的markdown切换到LaTeX,这取决于幻灯片是否同时具有暂停和脚注。但是,我可以使用.tex文件或在YAML中添加pandoc参数(因为我认为解决方案必须是这种方式,但我可能错了)。
编辑#2:我想在这些脚注中添加@citationkey引用
还问了on RStudio Community

最佳答案

编辑:update-以包括@citationkey:
问题在于pandoc如何将^ []转换为输出tex文件中的\footnote
在 Markdown 中:

another argument ^[This citation should appear only with point 2: @fargues2006]
在 latex 中编译为此:
another argument\footnote<.->{This citation should appear only
    with point 2: Fargues (2006)}
为了使脚注仅显示您要显示的幻灯片,您确实需要此 latex 翻译:
another argument\footnote\only<+->{This citation should appear only with point 2: Fargues (2006)}
only<+->中,+是表示当前叠加层的特殊符号。
为了使它起作用,您可以重新定义\footnote命令,以便在pandoc对其进行翻译时,它实际上会调用:\only<+->\footnote
注意:
完整的命令是\only<+->\footnote<.->,它可能导致重复的逐项幻灯片出现,因为有两个指向脚注出现位置的指针(\only<+-><.->),并且由于pandoc是自动插入的,因此我不确定一种摆脱方法那。
这种重复也可能是由于使用*\pause并将pandoc转换为出现在其自己的itemize环境中的每个项目而产生的-这也为脚注需要出现的位置提供了设置选项,这也是pandoc的事情。
我还没有进行足够的挖掘工作,以了解其中哪些是重复项的真正罪魁祸首。但是,无论哪种方式, latex 都应该为\footnotes命令和环境中的“最本地”设置应用第一个指针格式(即它将因此,每张重复的幻灯片至少要使用此方法才能获得正确的格式,但是您必须删除重复项。如果有人知道防止这种情况发生的方法-我很想听听。
要使用:
在 Markdown 开始时添加以下内容:
\let\oldfootnote\footnote
\renewcommand{\footnote}{\only<+->\oldfootnote}
您的完整减价:
---
title: ""
author: ""
date: ""
output:
  beamer_presentation:
    keep_tex: true
bibliography: test.bib
header-includes:
  - \let\oldfootnote\footnote
  - \renewcommand{\footnote}{\only<+->\oldfootnote}


---


* one argument

\pause

* another argument ^[This citation should appear only with point 2: @fargues2006]

\pause

* and another argument ^[This citation should appear only with point 3]

输出:
r - 仅在使用R Markdown的投影仪中暂停后才显示脚注-LMLPHP

关于r - 仅在使用R Markdown的投影仪中暂停后才显示脚注,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62345074/

10-13 01:49