正如你所看到的这维基百科上的文章,注释、引文和参考文献是有区别的。我希望在文档末尾有一个名为“引文”的部分,这样我就可以像这样引用它[2]
[2] Lasker (1934),第 73 页
可以在我的参考文献中找到,标题为“Lasker, Emanuel (1934). Lasker's Chess Primer. London: Billings (1988 年重印)。ISBN 0-7134-6241-8”。理想情况下,我希望此引文包含指向此参考文献的超链接(尽管文档中没有这样做)。有什么好方法可以做到这一点或类似的东西吗?
答案1
基本方法:
纯 LaTeX 解决方案可能类似于:
\documentclass{article}
\begin{document}
Leslie Lamport was the initial developer of \LaTeX, a document preparation system\cite{lamport94} based on \TeX.
\begin{thebibliography}{999}
\bibitem{lamport94}
Leslie Lamport,
\emph{\LaTeX: A Document Preparation System}.
Addison Wesley, Massachusetts,
2nd Edition,
1994.
\end{thebibliography}
\end{document}
尽管该环境thebibliography
运行完美,并且这可能就是您所需要的全部内容,但我的建议是,仅当您的参考文献很少且永远不会再使用时才使用此方法。否则,您将失去使用 BibTeX 或 的巨大优势biblatex
。
BibTeX 方法
当您有许多参考文献时,值得使用 BibTeX(可执行文件为bibtex
小写)代替 LaTeX 的嵌入式书目系统,这样您就可以更有效地处理参考文献。例如,您可以从庞大的数据库中选择参考文献的子集,而无需删除未使用的参考文献,因为这些参考文献可以在多个文档中使用。但更重要的是,您可以控制这些参考文献的最终外观、它们的排序方式以及如何引用,只需使用 LaTeX 文件中的几个命令,而无需手动修改每个参考文献。对于包含 200 个参考文献的出版物,编辑可能会要求使用按出现顺序排序的数字引用,作者姓氏在首字母之前,但之后您想用另一个编辑器发布相同的文本,该编辑器要求按字母顺序排列参考文献,全名在姓氏之前,作者年份引用如“ Smith (2013)
”而不是括号中的数字“ [4]
”。手动修改引用和参考文献是一项艰巨的工作,此时 BibTeX 必不可少。
要使用 BibTeX,您需要一个.bib
文件,其中References.bib
参考文献以纯文本形式存储,其中包含如下条目:
@ARTICLE{Gill,
author = "A. E. Gill",
title = "Some Simple Solutions for Heat-Induced Tropical Circulation",
journal = "Quart. J. R. Met. Soc.",
volume = 106,
year = 1980,
pages = "447-462",
}
你可以用任何文本编辑器手动编写此文件,但使用面向 BibTeX 档案管理的程序(如 Jabref、Zotero 或 Mendeley)会更容易。请注意,在@ARTICLE{
单词后面Gill
后面是钥匙引用参考文献,相当于lamport94
上例。它可以是不同于作者姓氏的东西,如Ref120
但显然必须是唯一的,最好是指示性的,所以通常最好的是第一个姓氏和年份的组合(Gill1980
),可能是第一页(Gill1980p447
)或标题的一些有意义的词,以避免重复的键。
一旦文件中包含了所有参考文献References.bib
,您就可以将这些键包含在 LaTeX 文件中,如下所示:
\documentclass{article}
\begin{document}
Someone have found a simple solution \cite{Gill}
\bibliography{References}
\bibliographystyle{plain}
\end{document}
然后您可以按照以下方式编译您的文档:
pdflatex MyDocument.tex
bibtex MyDocument
pdflatex MyDocument.tex
pdflatex MyDocument.tex
结果必须是:
这显然是一种更复杂的方法,但如果你只是简单地改变plain
,vancouver
你将获得姓氏在首字母之前,并且没有斜体字,也不会触及日记References.bib
。如果你natbib
在序言中使用,
\usepackage{natbib}
然后您可以使用样式来chicago
获取非数字引用,并提供更多引用选项。例如:
\documentclass{article}
\usepackage{natbib}
\begin{document}
\cite{Gill} have found a simple solution.
A simple solution have been found \citep{Gill}.
A simple solution have been found \citep[see page 47]{Gill}.
A simple solution have been found by \citet[in][see page 47]{Gill}.
\bibliography{References}
\bibliographystyle{chicago}
\end{document}
请注意,现在参考文献也发生了变化(现在参考文献中的年份也在作者之后)。
Biblatex 和 Biber 方法
这种较新的方法可以“按原样”使用与 BibTeX 中使用的相同的数据库引用,但每个引用中包含更多字段。例如,BibTeX 使用字段,year
但 biblatex 还可以在 date
字段中管理确切日期。
在这种方法中,您必须使用包biblatex
和不同的命令来链接 .bib 文件并在主文档中打印参考文献。要编译它,您也可以使用带有选项的 BibTeX backend=bibtex
,但默认情况下使用另一个编译器:Biber(选项 backend=biber
),这是一种具有多种优势的现代替代方案。
获得带有数字引用biblatex
也相当简单,因为您只需要没有选项的包,并 通过 (现在带有扩展)在序言中更改\bibliography
和 \bibliographystyle
BibTex ,并说明显而易见的内容,其中必须打印参考书目。\addbibresource{References.bib}
\printbibliography
\documentclass{article}
\usepackage{biblatex}
\addbibresource{References.bib}
\begin{document}
Someone have found a simple solution \cite{Gill}.
\printbibliography
\end{document}
为作者(年份)引用样式你只需要添加选项style=authoryear
和常用命令\cite{}
,或者\parencite{}
(作者,年份)引用,但现在您可以使用其他一些命令作为。此外,您还可以添加使用特定命令的\citeyear{}
选项(如果您重新使用包含这些命令的文本,那就太好了)。natbib=true
natbib
\citep{}
\documentclass{article}
\usepackage[style=authoryear,natbib=true]{biblatex}
\addbibresource{References.bib}
\begin{document}
Someone have found a simple solution \parencite{Gill}.
Someone have found a simple solution \citep[see page 47]{Gill}.
A simple solution have been found by \citeauthor{Gill} in \citeyear{Gill}.
\printbibliography
\end{document}
编译必须遵循与上面相同的 4 个步骤,但请记住现在您应该使用biber
而不是bibtex
。
pdflatex MyDocument.tex
biber MyDocument
pdflatex MyDocument.tex
pdflatex MyDocument.tex
但为什么要使用biblatex
和biber
而不是 BibTeX?好吧,尽管结果并不相同,但biblatex
这些简单的示例无法体现的真正优势。的强大之biblatex
处在于其巨大(和令人生畏)的灵活性(在 253 页的手册中进行了解释)。例如,请参阅 以自定义 biblatex 格式对齐/避免编号和标签对于一种不寻常的格式,几乎不可能在 BibTeX 或环境中实现thebibliography
。
有关更详细的解释,另请参阅这些精彩的答案: