如何使用 pandoc 在书目参考中转义“:”?
Posted
技术标签:
【中文标题】如何使用 pandoc 在书目参考中转义“:”?【英文标题】:How to escape a ":" in a bibliographic reference with pandoc? 【发布时间】:2014-01-25 15:25:25 【问题描述】:基本上,有一个由 Zotero 4.0.17 自动生成的 bibtex 文件,我正在使用它在 markdown 文件中生成参考书目。使用的工具是 pandoc-1.12.1 和 pandoc-citeproc-0.2 。
这是名为notes.md
的markdown文件
# State of the art
- Wikipathways [@pico_wikipathways\:_2008]
# Bibliography
<!-- TODO is this usefull?
bibliography::research.bib -->
<!-- \bibliographyresearch So that RefTeX knows about the bibliography -->
这是名为research.bib
的bibtex文件
@ARTICLEpico_wikipathways:_2008,
author = Pico, Alexander R and Kelder, Thomas and van Iersel, Martijn P and Hanspers, Kristina and Conklin, Bruce R and Evelo, Chris,
title = WikiPathways: Pathway Editing for the People,
journal = PLoS Biol,
year = 2008,
volume = 6,
pages = e184,
number = 7,
month = jul,
abstract = WikiPathways provides a collaborative platform for creating, updating, and sharing pathway diagrams and serves as an example of content curation by the biology community.,
doi = 10.1371/journal.pbio.0060184,
keywords = \_tablet,
shorttitle = WikiPathways,
url = http://dx.doi.org/10.1371/journal.pbio.0060184,
urldate = 2013-11-20
这是我运行的命令
pandoc --bibliography=research.bib notes.md -o notes.md.pdf
我期待一切顺利,但 :
字符的存在使 PDF 的生成成功,但出现以下错误
pandoc-citeproc: reference pico_wikipathways not found
PDF 的参考书目不正确。
知道如何在notes.md
中转义:
以便识别书目参考吗?
【问题讨论】:
仅供参考。我在forums.zotero.org/discussion/34228/… 得到了一些有趣的解决方法建议 仅供参考。这个问题现在已经在 pandoc 的 master 分支中修复了。详情请查看github.com/jgm/pandoc/commit/…。 仅供参考。此问题已在 pandoc 1.12.3.1 中永久修复。 【参考方案1】:您必须更改密钥。 Pandoc 的引用键解析器当前不允许连续使用多个非字母数字符号,因此带有 :_
的键失败。此外,请勿在引用键中的 :
之前使用反斜杠。
【讨论】:
正如我所说,密钥是从 Zotero 自动生成的。这意味着我要按照您的建议去做并不容易。我会尝试看看是否有办法改变生成密钥的规则,但我不确定如何。 更改 pandoc 以允许这些键可能更容易。如果您愿意,可以在 github.com/jgm/pandoc/issues 提交问题。 我刚注意到你的名字。也感谢 Pandoc。【参考方案2】:从版本 1.12.3 开始,此问题似乎已得到修复。使用
卸载当前版本sudo rm -f /usr/local/bin/pandoc /usr/local/doc/pandoc-1.9.4.2 /usr/local/share/man/man1/pandoc.1.gz /usr/local/share/man/man5/pandoc_markdown.5.gz /usr/local/share/pandoc-1.9.4.2
然后重新安装 pandoc 就可以了。
【讨论】:
请注意我的问题本身。以上是关于如何使用 pandoc 在书目参考中转义“:”?的主要内容,如果未能解决你的问题,请参考以下文章
使用 pandoc 在 pdf 文件中导出所有 yaml 书目