如何在RMarkdown的引用中添加"e.g.,"等非引用信息?
在RMarkdown引用中添加非引用类信息(如e.g.)的方法
根据你使用的引用工具,有几种不同的实现方式:
1. Pandoc默认引用系统
无需额外配置,直接在引用标记前添加文本即可:
- 行内引用:
e.g., @jones2020编译后会生成类似 e.g., Jones et al. (2020) 的效果 - 括号内引用:
(e.g., @jones2020)编译后生成 (e.g., Jones et al. 2020)
如果是多个引用,同样可以统一加前缀:e.g., @jones2020, @smith2019 → e.g., Jones et al. (2020), Smith (2019)
2. 使用natbib包
若在YAML头部配置了natbib:
output: pdf_document: natbib: true
可以利用natbib的命令参数嵌入文本:
- 文本在引用后:
\citet[e.g.]{jones2020}→ Jones et al. (2020, e.g.) - 文本在引用前:
\citep[e.g.]{jones2020}→ (e.g., Jones et al. 2020)
也可以直接拼接文本:e.g., \citet{jones2020}→ e.g., Jones et al. (2020)
3. 使用biblatex包
如果配置了biblatex:
output: pdf_document: biblatex: true
借助biblatex的prenote功能实现:
- 括号内带前缀:
\autocite[e.g.]{jones2020}→ (e.g., Jones et al. 2020) - 行内带前缀:
e.g., \textcite{jones2020}→ e.g., Jones et al. (2020)
部分biblatex样式支持调整prenote位置,可根据需求修改样式配置。
内容的提问来源于stack exchange,提问作者Michael Roswell
相关产品推荐
相关产品推荐

