3

我想引用 RMarkdown 中的一位作者,在他的名字中添加一个所有格 's。但是,我找不到在没有出版年份的情况下引用作者或直接添加所有格方法。

它应该如下所示:

在芬纳 (2012) 的书中...

最小工作示例(用于 R 笔记本):

---
title: "R Notebook"
output: html_notebook
references:
- id: fenner2012a
  title: One-click science marketing
  author:
  - family: Fenner
    given: Martin
  container-title: Nature Materials
  volume: 11
  URL: 'http://dx.doi.org/10.1038/nmat3283' 
  DOI: 10.1038/nmat3283
  issue: 4
  publisher: Nature Publishing Group
  page: 261-263
  type: article-journal
  issued:
    year: 2012
    month: 3
---

In @fenner2012a 's book ...

# References

当然,我可以手动添加名称 ( In Fenner's [-@fenner2012a] book ...),但这是一个草率的解决方法。

还有其他方法吗?

4

1 回答 1

2

我不知道 RMarkdown,但在标准 pandoc 中,我在 pandoc-citeproc 之后直接添加了以下过滤器。

#!/bin/bash

sed -s 's/\({"t":"Space"}\),\({"t":"Str","c":"(2013)"}]]}\),\({"t":"Str","c":"\x27s"}\)/\3,\1,\2/g'

这很可怕,而且可能非常微妙(如果你在 Windows 上,那就不好了),但它可能会让你走上正轨。

您的引用将成为“在@fenner2012a 的书中”。

于 2017-07-23T10:02:16.353 回答