我正在尝试在fullwidth
环境中打印参考书目(使用 biblatex)。但是当我将\printbibliography
命令放在fullwidth
环境中时,除第一行之外的每一行都会缩进。
据我所知,biblatex
印刷书目如下:
每项的第一行都向左刷新。
每项的任何其他行都使用 缩进
\bibhang
。
如果我简单地将其放在\printbibliography
文件末尾,我就会得到预期的行为:
如果我将它放在一个fulldiwth
环境中,那么参考书目中除了第一行之外的每一行都会缩进相同的量。
这是一个简单的例子
\documentclass[nobib]{tufte-handout}
\usepackage[style=authoryear-comp]{biblatex}
\begin{filecontents*}{mybib5.bib}
@MISC{Volkmann,
author = {Volkmann, Albert},
title = {My Title},
year = {2005},
addendum={Lorem ipsum dolor sit amet, consectetur adipisicing elit,
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.}
}
@MISC{Caesar,
author = {Caesar, Gaius J.},
title = {My long title},
year = {2005},
addendum={Lorem ipsum dolor sit amet, consectetur adipisicing elit,
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.}
}
\end{filecontents*}
\title{Test}
\author{Me}
\bibliography{mybib5}
\begin{document}
\maketitle
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. \cite{Volkmann,Caesar}
\begin{fullwidth}
\printbibliography
\end{fullwidth}
\end{document}
输出如下:
如果我\parindent
在 之前设置为 0pt \printbibliography
,我会得到相同的结果。如果我\bibhang
在 之前设置为 0pt \printbibliography
,那么
\begin{fullwidth}
\printbibliography
\end{bibliography}
替换为:
\begin{fullwidth}
\bibhang=0pt
\printbibliography
\end{bibliography}
参考书目中没有一行缩进:
我无法得到的是环境中的默认行为(每个项目的第一行向左刷新,每个附加行缩进)fullwidth
。
有什么想法吗?
更新:我正在使用版本 3.5.2的tufte-common.def
。
答案1
使用默认的 tufte-latex 布局,您只需在参考书目环境中扩展右边距即可。
\documentclass[nobib]{tufte-handout}
\usepackage{hyphenat}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[style=authoryear-comp,autocite=footnote]{biblatex}
\defbibenvironment{bibliography}
{\list{}{%
\leftmargin\bibhang
\itemindent-\leftmargin
\advance\rightmargin-\marginparwidth
\advance\rightmargin-\marginparsep
\itemsep\bibitemsep
\parsep\bibparsep}}
{\endlist}
{\item}
\addbibresource{biblatex-examples.bib}
\begin{document}
Filler text \autocite{companion,ctan,markey,aristotle:poetics,aristotle:rhetoric}.
\printbibliography
\end{document}
在布局设置中,需要twoside,symmetric
类似 tufte-latex 的fullwidth
环境,但如果参考书目跨页。对于一页中包含的单个参考书目,以下内容应为您提供fullwidth
环境内的适当缩进。
\defbibenvironment{bibliography}
{\list{}{%
\leftmargin\bibhang
\itemindent-\leftmargin
\listparindent\itemindent
\parsep\bibparsep}}
{\endlist}
{\item}
更一般的情况可以是使用 mdframed 包处理以及一些间距技巧\AtEveryBibitem
。
\documentclass[nobib,twoside,symmetric]{tufte-handout}
\usepackage{hyphenat}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[style=authoryear-comp]{biblatex}
\usepackage{mdframed}
\newmdenv[skipabove=3.5ex plus 1ex minus .2ex,% Equal to section title spacing
innerleftmargin=0pt,innerrightmargin=0pt,%
innerbottommargin=0pt,innertopmargin=0pt,linewidth=0pt,innermargin=0pt,%
outermargin=\dimexpr-\marginparwidth-\marginparsep\relax]{mdfullwidth}
\defbibenvironment{bibliography}
{\list{}{\parsep\bibparsep}}
{\endlist}
{\item}
\AtEveryBibitem{\hskip-\bibhang}
\addbibresource{biblatex-examples.bib}
\begin{document}
\null\vfill
One of the most prominent and distinctive features of this style is the
extensive use of sidenotes.\footcite{companion,ctan,markey,aristotle:rhetoric} There is a wide margin to provide ample room for sidenotes and small figures. Any footnotes will automatically be converted to sidenotes.
\begin{mdfullwidth}
\printbibliography[type=online]
\end{mdfullwidth}
\pagebreak
One of the most prominent and distinctive features of this style is the
extensive use of sidenotes.\footcite{companion,ctan,markey,aristotle:poetics} There is a wide margin to provide ample room for sidenotes and small figures. Any footnotes will automatically be converted to sidenotes.
\begin{mdfullwidth}
\printbibliography[nottype=online]
\end{mdfullwidth}
\end{document}