【发布时间】:2020-10-05 13:01:08
【问题描述】:
我有一个包含一些引用的 R Markdown 文档。我使用的是默认引用样式,这通常对我很有效。但是我有一些放在括号内的句子,在这些句子中,我想引用作品而不添加第二组括号。也就是说,我想取消引用中通常出现在出版年份左右的括号。这是我尝试创建的输出示例:
Lorem ipsum dolor. (Fourscore and seven years ago: see Smith 2020.)
Smith 2020 是使用 R Markdown 引用生成的,例如 @Smith_2020。在 LaTeX 中,这种事情可以通过“natbib”包中的\citealp 宏来完成。也可以使用该包的\citeauthor 和\citeyear 宏来完成,它们分别列出了作者的姓名和出版年份。 R Markdown 中是否有等效功能?
为了进一步说明问题,这里有一个最小的工作示例。假设“myBib.bib”是
@BOOK{Smith_2020,
AUTHOR = {John Smith},
TITLE = {Some Title},
YEAR = {2020},
PUBLISHER = {Knopf},
address = {New York, NY},
}
我有这个 Rmd 文件:
---
output: html_document
bibliography: 'myBib.bib'
---
(See @Smith_2020 for details.)
输出是(See Smith (2020) for details.) 我想去掉2020 周围的括号。一种方法是将整个句子放在括号内:例如,[See @Smith_2020 for details.]。但是这种方法有点笨拙,尤其是当括号内的段落很大时。还有其他方法吗?
我不认为更改默认引用样式会有所帮助,因为该引用样式通常是我想要的。当引用位于本身带括号的段落中时,我只想禁止引用中的括号。
我查看了bookdown book 和R Markdown cookbook,但我看不出他们提供了解决方案。我还搜索了 Stack Overflow 和 tex.stackexchange.com 的相关问题,但我没有找到任何与此问题相关的内容。
【问题讨论】:
标签: r r-markdown citations pandoc-citeproc