biblatex 格式书目列表

biblatex 格式书目列表

如何使参考书目条目打印为通常的段落(带有 parindent 而没有任何其他缩进)但索引编号不带点?

而且我还需要在它们之间进行跳过。

例子:

    1  Autor A. A book in my bibliog-
raphy 1984

    2  Author2 A2. Another book name
in bibliography

答案1

biblatex\defbibenvironment提供定制参考书目外观的命令。

\usepackage{calc}
\defbibenvironment{bibliography}
  {\list{\printfield[labelnumberwidth]{labelnumber}}
    {\setlength{\leftmargin}{0pt}%
     \setlength{\itemindent}{\parindent}%
     \setlength{\labelsep}{1.5em}%
     \addtolength{\itemindent}{\labelsep+\labelnumberwidth}%
     \setlength{\itemsep}{\bibitemsep}%
     \setlength{\parsep}{\bibparsep}}}
  {\endlist}
  {\item}

我们还可以重新定义中的格式化指令labelnumberwidth,即:

\DeclareFieldFormat{labelnumberwidth}{\makebox[0pt][l]{#1}}

这会将标签编号放在没有宽度的框中(因此+\labelnumberwidth上述内容是多余的)。

输出如下:

在此处输入图片描述

答案2

您可以重新定义DeclareFieldFormat{labelnumberwidth}{…}命令:

\documentclass[a4paper, 11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{fourier, heuristica}
\usepackage[showframe, nomarginpar]{geometry}
\usepackage{biblatex}
\usepackage{filecontents}

\begin{filecontents*}{testname.bib}
@article{jdoe,
    author={Doe, John Paul},
    journal={Journal},
    title={Title},
    year=2014,
    pages={111--222},
}
\end{filecontents*}

\DeclareFieldFormat{labelnumberwidth}{\hskip\parindent#1}
\addbibresource{testname.bib}

\begin{document}

Text text text text text text text text text text text text text text text text text text text text text text text text text Citation: \cite{jdoe}.
\printbibliography

\end{document} 

在此处输入图片描述

相关内容