Pandoc(md, latex) 应该在参考书目中生成 bibitem
Pandoc(md, latex) should generate bibitem in Bibliography
使用 pandoc 我试图通过组合 .md
和 .bib
文件来生成 .tex
文件。在生成的乳胶文件中,Pandoc 已经 格式化为纯文本 内联参考以及参考书目中的完整参考。但是,我喜欢分别使用 \cite
和 \bibitem
格式的参考文献。
example.md
---
title: Plain Text Workflow
author: Dennis Tenen, Grant Wythoff
date: January 20, 2014
bibliography: example.bib
---
# Section 1
Some sentence that needs citation [@fyfe_digital_2011 argues that too].
# Bibliography
example.bib
@article{fyfe_digital_2011,
title = {Digital Pedagogy Unplugged},
volume = {5},
url = {http://digitalhumanities.org/dhq/vol/5/3/000106/000106.html},
number = {3},
urldate = {2013-09-28},
author = {Fyfe, Paul},
year = {2011},
file = {fyfe_digital_pedagogy_unplugged_2011.pdf}
}
Pandoc 命令
pandoc example.md -t latex -s -S --filter pandoc-citeproc -o example.tex
example.tex(摘录)
Some sentence that needs citation (Fyfe 2011 argues that too).
\section*{Bibliography}\label{bibliography}
\addcontentsline{toc}{section}{Bibliography}
Fyfe, Paul. 2011. ``Digital Pedagogy Unplugged'' 5 (3).
\url{http://digitalhumanities.org/dhq/vol/5/3/000106/000106.html}.
但是,我想要的是这个(本质上是 bibtex 生成的 .bbl
文件中的内容):
Some sentence that needs citation \citep[ argues that too]{fyfe_digital_2011}.
\begin{thebibliography}{1}
\providecommand{\natexlab}[1]{#1}
\providecommand{\url}[1]{\texttt{#1}}
\expandafter\ifx\csname urlstyle\endcsname\relax
\providecommand{\doi}[1]{doi: #1}\else
\providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi
\bibitem[Fyfe(2011)]{fyfe_digital_2011}
Paul Fyfe.
\newblock Digital pedagogy unplugged.
\newblock 5\penalty0 (3), 2011.
\newblock URL
\url{http://digitalhumanities.org/dhq/vol/5/3/000106/000106.html}.
\end{thebibliography}
我知道我可以用 --natbib --bibliography=example.bib
运行 pandoc,然后用 pdflatex 和 bibtex 编译,并利用 \input{example.bbl}
。但是有没有一种方法可以使用 pandoc 正确地做到这一点,而无需在两者之间使用 bibtex(手动或管道)?
顺便问一下,pandoc在直接用--filter pandoc-citeproc
生成pdf的时候,内部是怎么做的呢?如果它也只是使用这些预先格式化的纯文本引用,我会非常失望。因为看起来乳胶模板序言中定义的个别样式不适用于这种情况。
1) 你不能。要么你
- 让 pandoc 为您生成参考和参考书目(
pandoc-citeproc
,参见第 2 点)
或
- 将其格式化为 natbib (
--natbib
) 或 biblatex (--biblatex
),但您必须依赖外部 bibtex 文件(或 another compatible format)。然后,您将需要 bibtex
或 biber
来格式化您的引用。
2) pandoc-citeproc
依赖于 csl 样式。你可以找到一些 here and here and you can easily customize them here。使用 --csl=
或 YAML 标题栏中的 csl:
行将其传递给您的 pandoc 命令。 Pandoc 在 ~/.csl
中查找文件,如果它不存在或与 markdown 文件不在同一目录中,则必须提供完整路径。
使用 pandoc 我试图通过组合 .md
和 .bib
文件来生成 .tex
文件。在生成的乳胶文件中,Pandoc 已经 格式化为纯文本 内联参考以及参考书目中的完整参考。但是,我喜欢分别使用 \cite
和 \bibitem
格式的参考文献。
example.md
---
title: Plain Text Workflow
author: Dennis Tenen, Grant Wythoff
date: January 20, 2014
bibliography: example.bib
---
# Section 1
Some sentence that needs citation [@fyfe_digital_2011 argues that too].
# Bibliography
example.bib
@article{fyfe_digital_2011,
title = {Digital Pedagogy Unplugged},
volume = {5},
url = {http://digitalhumanities.org/dhq/vol/5/3/000106/000106.html},
number = {3},
urldate = {2013-09-28},
author = {Fyfe, Paul},
year = {2011},
file = {fyfe_digital_pedagogy_unplugged_2011.pdf}
}
Pandoc 命令
pandoc example.md -t latex -s -S --filter pandoc-citeproc -o example.tex
example.tex(摘录)
Some sentence that needs citation (Fyfe 2011 argues that too).
\section*{Bibliography}\label{bibliography}
\addcontentsline{toc}{section}{Bibliography}
Fyfe, Paul. 2011. ``Digital Pedagogy Unplugged'' 5 (3).
\url{http://digitalhumanities.org/dhq/vol/5/3/000106/000106.html}.
但是,我想要的是这个(本质上是 bibtex 生成的 .bbl
文件中的内容):
Some sentence that needs citation \citep[ argues that too]{fyfe_digital_2011}.
\begin{thebibliography}{1}
\providecommand{\natexlab}[1]{#1}
\providecommand{\url}[1]{\texttt{#1}}
\expandafter\ifx\csname urlstyle\endcsname\relax
\providecommand{\doi}[1]{doi: #1}\else
\providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi
\bibitem[Fyfe(2011)]{fyfe_digital_2011}
Paul Fyfe.
\newblock Digital pedagogy unplugged.
\newblock 5\penalty0 (3), 2011.
\newblock URL
\url{http://digitalhumanities.org/dhq/vol/5/3/000106/000106.html}.
\end{thebibliography}
我知道我可以用 --natbib --bibliography=example.bib
运行 pandoc,然后用 pdflatex 和 bibtex 编译,并利用 \input{example.bbl}
。但是有没有一种方法可以使用 pandoc 正确地做到这一点,而无需在两者之间使用 bibtex(手动或管道)?
顺便问一下,pandoc在直接用--filter pandoc-citeproc
生成pdf的时候,内部是怎么做的呢?如果它也只是使用这些预先格式化的纯文本引用,我会非常失望。因为看起来乳胶模板序言中定义的个别样式不适用于这种情况。
1) 你不能。要么你
- 让 pandoc 为您生成参考和参考书目(
pandoc-citeproc
,参见第 2 点) 或 - 将其格式化为 natbib (
--natbib
) 或 biblatex (--biblatex
),但您必须依赖外部 bibtex 文件(或 another compatible format)。然后,您将需要bibtex
或biber
来格式化您的引用。
2) pandoc-citeproc
依赖于 csl 样式。你可以找到一些 here and here and you can easily customize them here。使用 --csl=
或 YAML 标题栏中的 csl:
行将其传递给您的 pandoc 命令。 Pandoc 在 ~/.csl
中查找文件,如果它不存在或与 markdown 文件不在同一目录中,则必须提供完整路径。