首页 > 解决方案 > 如何使用 biblatex 删除书目列表中的标签?

问题描述

在 bibtex 中,很容易删除参考书目中的所有标签;例如,这里描述的 https://stackoverflow.com/a/3003759/6936361

我找不到相当于

\makeatletter
\def\@biblabel#1{}
\makeatother

为 biblatex。

例如,如果我有以下代码:

\documentclass{scrartcl}
\usepackage[style=alphabetic]{biblatex}

\addbibresource{foo.bib}
\begin{document}

\nocite{*}
\printbibliography
\end{document}

我明白了 在此处输入图像描述

相反,我想要这样的东西: 在此处输入图像描述 如何在不改变 biblatex 样式的情况下删除参考书目列表中的标签?

标签: latexbiblatex

解决方案


作为一个快速破解,您可以重新定义参考书目环境:

\documentclass{scrartcl}
\usepackage[style=alphabetic]{biblatex}

\addbibresource{biblatex-examples.bib}

\defbibenvironment{bibliography}
  {\list
     {}
     {%
      \setlength{\labelwidth}{0pt}%
      \setlength{\leftmargin}{0pt}%
      \setlength{\labelsep}{0pt}%
      \addtolength{\leftmargin}{0pt}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{##1\hss}}
  {\endlist}
  {\item}


\begin{document}
\cite{knuth:ct:a}
\nocite{*}
\printbibliography
\end{document}

在此处输入图像描述

(我个人会使用一种authoryear样式来避免在文本中出现标签而在参考书目中没有任何对应关系)


推荐阅读