我对 LaTeX 的世界还比较陌生,但到目前为止,我通过浏览 StackExchange 和阅读手册,设法整理出了一个好看的布局。现在我已经尝试了 3 天,让一切正常运转。是时候请教专业人士了。
我准备了一个最小示例,因为我无法biber
使用biblatex
它。编译 PDF 时,我的日志中出现 12 条警告。
都是因为我的引用和脚注翻译得不好。我遇到了一个undefined control sequence
问题: biblatex\citet
让\citep
我一无所获。这个(完整日志这里):
LaTeX Warning: Citation 'McGrane:2014' on page 1 undefined on input line 68.
Package biblatex Warning: '\textcite' not defined by citation style.
(biblatex) Falling back to '\cite' on input line 68.
LaTeX Warning: Empty bibliography on input line 92.
LaTeX Warning: There were undefined references.
Package biblatex Warning: Please (re)run Biber on the file:
(biblatex) min-biblatex
(biblatex) and rerun LaTeX afterwards.
当然,我的参考文献没有被转换,它们看起来像来自 BibDesk 的引用键(Basich:2003)
,而且...我的参考书目也没有被打印 :/
除了使用 Sublime Text 构建 PDF 之外,我还尝试了使用命令行、、,以及pdflatex min-biblatex
作为最后的手段 TeXShop。biber min-biblatex
pdflatex min-biblatex
pdflatex min-biblatex
(几乎)MWE
\documentclass[12pt,parskip=half-,a4paper,twoside=false,bibliography=totocnumbered,version=first,listof=numbered,numbers=noenddot,version=first]{scrreprt}
\usepackage{ifpdf}
\ifpdf
% ENCODING & TRANSLATION
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\inputencoding{utf8}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
% BIBLIOGRAPHY & CITATION
\usepackage{hyperref}
% ::BIBLIOGRAPHY::
\usepackage[natbib=true,
backref=true,
hyperref=true,
showmedium=false,
% autocite=footnote,
% firstinits=true,
% indexing=true,
url=true, %
style=mla, % style=debug, alphabetic
backend=biber, %
% doi=false,
texencoding=utf8,
bibencoding=utf8]{biblatex}
\listfiles
\usepackage{filecontents}
\begin{filecontents}{literature.bib}
%% This BibTeX bibliography file was created using BibDesk.
%% Saved with string encoding Unicode (UTF-8)
@webpage{McGrane:2014,
Author = {Sally McGrane},
Day = {17},
Lastchecked = {2014-03-23},
Month = {February},
Note = {Last checked: 2014-03-23},
Publisher = {The New Yorker},
Title = {To the Magic Mountain!},
Url = {http://www.newyorker.com/books/page-turner/to-the-magic-mountain},
Year = {2014}}
@webpage{ThomasMannArchiv,
Lastchecked = {2014-06-18},
Publisher = {Thomas-Mann-Archiv},
Title = {Das Internationale Sanatorium »Berghof«},
Url = {http://www.tma.ethz.ch/assets/Uploads/Ueber-uns/Thomas-Sprecher/Dokumente/4.-Das-Internationale-Sanatorium-Berghof.pdf}}
@book{Mann:1924,
Address = {Frankfurt am Main},
Author = {Thomas Mann},
Edition = {Gro{\ss}e kommentierte Frankfurter Ausgabe, Band 5.1},
Editor = {Michael Neumann},
Publisher = {S. Fischer},
Title = {Der Zauberberg},
Year = {2010}}
\end{filecontents}
\addbibresource{literature.bib}
\begin{document}
\chapter{Cites and Footnotes}
\label{citesandfootnotes}
Footnote 1\footnote{~\citep{Anderson:1999}} and 2\footnote{~\citep[S. 23f]{Monagas:2007}}. Inline cites [e.g.][p. 2]~\citep{Sprecher:2002} and ~\citep[p 66f]{Basich:2003}. Three cites: author v1~\citep{McGrane:2014}, v2 \citet{Mann:1924} and a quote from \citet{ThomasMannArchiv}:
\begin{quote}
This is a quote.
\end{quote}
\section{Pics and Tables}
\label{picsandtables}
\begin{figure}[htbp]
\caption{A diagram}
\label{dia1}
\end{figure}
\begin{figure}[htbp]
\caption{A table}
\label{table_tab}
\end{figure}
%end of text
\pagebreak
\appendix
\begingroup
\printbibliography
\listoffigures
\endgroup
\end{document}
我还清理了缓存,rm -rf `biber --cache
因为我读到缓存biber
很容易出现故障。
设置
- 我用比比桌管理我的参考资料。
- 我有最新的麦金塔电脑安装了捆绑软件(TeXShop、TeXworks、biber 等),让我可以
biber
使用适合的biblatex
软件包 1.8。 - 我使用 MultiMarkdown 写作,然后斯克里文纳将我的文本转换为 LaTeX。这也意味着我的 LaTeX 内容将始终看起来像您在之后看到的那样
\begin{document}
。 - 我编译Sublime Text 3和LaTeX 增强版包(使用
latexmk
)。有时我也会使用 TeXShop。
之前biblatex
natbib
我以前也用过natbib
,几乎一切都能正常工作。尽管存在以下五个问题:
- 不支持
[e.g.][p. 333]~\citep{author-key}
- 无法
lastchecked
从 BibDesk 获取(又称访问日期)字段以显示在参考书目中。不令人满意的解决方法:note field
在 BibDesk 中使用。 apacite
内联引用仍以格式显示(作者、年份、页码)而不是 mla 格式(作者,页面)- 没有用有用的内容替换内联引用中的未知作者(即没有作者字段)。
natbib
=> 对于人文学科来说并不理想
apacite
风格效果很好,但我需要mla
——这就是我最终尝试的方式biblatex
。
为了参考目的,mla 最小示例:
我遇到的对我没有帮助的东西:
- 引用 - Biblatex-nature \textcite 带上标参考编号 - LaTeX Stack Exchange
- 这感觉很接近,但我真的不知道将所有条目转换为 biblatex/biber (?) 理解的内容是否是解决方案,或者是否有更简单的解决方法。
- miktex - Biblatex,Biber pdflatex:未定义的引用 - LaTeX Stack Exchange
- Biblatex:\textcite 脚注中的样式 - LaTeX Stack Exchange
答案1
正如 Bernard 所说,除了由于不存在的类型、无法识别的字段或缺少参考书目条目而无法工作的部分外,它都能正常工作。
webpage
您可能想要的是。online
您lastchecked
可能想要的是urldate
:
\documentclass[12pt,parskip=half-,a4paper,twoside=false,bibliography=totocnumbered,version=first,listof=numbered,numbers=noenddot,version=first]{scrreprt}
\usepackage{ifpdf}
\ifpdf
% ENCODING & TRANSLATION
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\inputencoding{utf8}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
% BIBLIOGRAPHY & CITATION
\usepackage{hyperref}
% ::BIBLIOGRAPHY::
\usepackage[natbib=true,
backref=true,
hyperref=true,
showmedium=false,
% autocite=footnote,
% firstinits=true,
% indexing=true,
url=true, %
style=mla, % style=debug, alphabetic
backend=biber, %
% doi=false,
texencoding=utf8,
bibencoding=utf8]{biblatex}
\listfiles
\usepackage{filecontents}
\begin{filecontents}{literature.bib}
%% This BibTeX bibliography file was created using BibDesk.
%% Saved with string encoding Unicode (UTF-8)
@online{McGrane:2014,
Author = {Sally McGrane},
Day = {17},
urldate = {2014-03-23},
Month = {February},
Publisher = {The New Yorker},
Title = {To the Magic Mountain!},
Url = {http://www.newyorker.com/books/page-turner/to-the-magic-mountain},
Year = {2014}}
@online{ThomasMannArchiv,
urldate = {2014-06-18},
Publisher = {Thomas-Mann-Archiv},
Title = {Das Internationale Sanatorium »Berghof«},
Url = {http://www.tma.ethz.ch/assets/Uploads/Ueber-uns/Thomas-Sprecher/Dokumente/4.-Das-Internationale-Sanatorium-Berghof.pdf}}
@book{Mann:1924,
Address = {Frankfurt am Main},
Author = {Thomas Mann},
Edition = {Gro{\ss}e kommentierte Frankfurter Ausgabe, Band 5.1},
Editor = {Michael Neumann},
Publisher = {S.\ Fischer},
Title = {Der Zauberberg},
Year = {2010}}
\end{filecontents}
\addbibresource{literature.bib}
\begin{document}
\chapter{Cites and Footnotes}
\label{citesandfootnotes}
Footnote 1\footnote{~\citep{Anderson:1999}} and 2\footnote{~\citep[S. 23f]{Monagas:2007}}. Inline cites [e.g.][p. 2]~\citep{Sprecher:2002} and ~\citep[p 66f]{Basich:2003}. Three cites: author v1~\citep{McGrane:2014}, v2 \citet{Mann:1924} and a quote from \citet{ThomasMannArchiv}:
\printbibliography
\end{document}
答案2
正如 @cfr 和 @Bernard 指出的那样,我犯了一些错误,并提交了一个缺少参考书目条目的版本(==> 切勿在极度疲劳时提交 StackExchange 问题)。
更正 1:我编辑了 MWE 以获得正确的 bib 条目。
我还将我的 BibDesk 设置切换为使用 BibLateX 进行更多确认 – 请参阅BibLateX 类型和字段在那里你可以下载 TypeInfo.plist它具有 BibLaTex 的所有魅力。
更正2:除上述内容外,我还从@webpage
改为@online
。
我使用 prenotes 和 postnotes 的语法很混乱。如最初的问题所述,我使用 MultiMarkdown 并让 Scrivener 将我的文档转换为文件.tex
。
更正 3:这是正确的 MMD 语法 – 请注意两个\
。
MMD =====> [see\]\[6][#Mann:1924]
LaTeX ===> ~\citep[see][6]{Mann:1924}
PDF =====> (see Mann, 1924, S. 6)
未将任何类型(即“Web”、“Print”等)添加到参考书目中。此外,Urldate
仍会打印没有自动前缀,如“上次检查/访问日期/上次访问”。自动的这是必须的,因为我用多种语言写作。
我猜,如果你不依赖natbib=true
并且只使用 & Co 的普通biblatex-mla
样式,就不会出现这样的问题autocite
。但这对于用 Markdown 和 Scrivener 写作来说是一个可以接受的代价。也许有一天我会聪明到可以renewcommand
最大限度地利用并转换我所有natbib
依赖 的输出。
更正 4:设置showmedium
为true
,以便打印介质类型。以 MLA 格式写作时,这是强制性的。
↑ 这并不能纠正缺失的前缀,但现在肯定可以忽略,因为发布日期和上次访问日期现在被介质类型从而带来更清晰的阅读体验。
您可能已经注意到,参考书目中每个条目后面都有一个“(Siehe S. 1)”。这是不必要的,也是毫无目的的。
更正5:设置backref
为false
。
使用 MLA 时,引用的正确格式是(Author page)
不带逗号。
更正 6:添加\renewcommand{\postnotedelim}{\addspace}
到您的序言中。删除引用之间的逗号。要删除附加信息 (p./S.),还请添加\DeclareFieldFormat{postnote}{#1}
。
这是经过清理的版本,其中修复了一些错误,以模拟所有 MLA 必要的标准。
\documentclass[12pt,parskip=half-,a4paper,twoside=false,bibliography=totocnumbered,version=first,listof=numbered,numbers=noenddot,version=first]{scrreprt}
\usepackage{ifpdf}
\ifpdf
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\inputencoding{utf8}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage{hyperref}
\usepackage[backref=false,
natbib=true,
hyperref=true,
showmedium=true,
autocite=footnote,
url=true,
style=mla,
citestyle=authortitle-ticomp,
sorting=nyvt,
backend=biber,
texencoding=utf8,
maxnames=2,
bibencoding=utf8]{biblatex}
\renewcommand{\postnotedelim}{\addspace}
\DeclareFieldFormat{postnote}{#1}
\listfiles
\usepackage{filecontents}
\begin{filecontents}{literature.bib}
@article{Anderson:1999,
Author = {Anderson, Kirsten L.},
Journal = {Journal of Sport and Social Issues},
Pages = {55-79},
Title = {Snowboarding: The Construction of Gender in an Emerging Sport},
Type = {Journal},
Volume = {23},
Year = {1999}}
@online{McGrane:2014,
Author = {McGrane, Sally},
Day = {17},
Month = {February},
Publisher = {The New Yorker},
Title = {To the Magic Mountain!},
Url = {http://www.newyorker.com/books/page-turner/to-the-magic-mountain},
Urldate = {2014-03-23},
Urlday = {23},
Urlmonth = {March},
Urlyear = {2014},
Year = {2014}}
@book{Mann:1924,
Author = {Mann, Thomas},
Edition = {Gro{\ss}e kommentierte Frankfurter Ausgabe},
Volumes = {5.1},
Editor = {Neumann, Michael},
Publisher = {S. Fischer GmbH},
Rating = {5},
Title = {Der Zauberberg},
Location = {Frankfurt am Main},
Note = {PDF Version},
Year = {2010}}
\end{filecontents}
\addbibresource{literature.bib}
\begin{document}
\chapter{Footnotes, Cites and Quotes}
\label{citation}
First mention of primary literature\footfullcite[page 23]{Mann:1924}.
Postnote ~\citep[19]{Anderson:1999}.
Ibid test ~\citep[see][]{Anderson:1999} and ~\citep[see][762]{Anderson:1999}.
Inline prenote \citet[see][]{Mann:1924}.
Pre-{} and postnote ~\citep[e.g.][99]{McGrane:2014}.
Prenote ~\citep[see][]{McGrane:2014}.
Just the key ~\citep{Anderson:1999}.
\begin{quote}
This is a quote.~\citep[984]{Mann:1924}
\end{quote}
Next section reference see \autoref{figures}
\chapter{Pics and Tables Demo}
\label{figures}
Test section reference \autoref{citation}
\begin{figure}[htbp]
\caption{A diagram~\citep{McGrane:2014}}
\label{dia1}
\end{figure}
\begin{figure}[htbp]
\caption{A table~\citep[see][]{McGrane:2014}}
\label{table_tab}
\end{figure}
%end of text
\pagebreak
\appendix
\begingroup
\printbibliography
\listoffigures
\endgroup
\end{document}
关于修正 3 和 4 的说明:在编写用于数字消费(即非打印)的 PDF 时,我仍然遇到(兼容性?)问题。当我尝试使用eprint
和eprinttype
字段时
更多内容请见此帖:url 不会显示在 biblatex-mla 作品引用列表中 - TeX - LaTeX Stack Exchange
如果showmedium
关闭并且设置了所有 eprint 参数,则有两个 URL 输出。这尤其urldate
棘手,因为我可以删除URL
并只使用eprint
,eprinttype
但这样就会出现日期重复。很乱。我想这也是一个natbib=true
问题。
附言:我也不知道如何格式化这些内容:我是不是总是要使用muse
……随便……我得去谷歌搜索一下。最后一章仅供 BibLaTex + natbib 的用户参考。