Переопределенный раздел делает заголовок biblatex неработоспособным

Переопределенный раздел делает заголовок biblatex неработоспособным

Я переопределил section, и каким-то образом это испортило название библиографии. Вот MWE:

\documentclass{article}
\usepackage[utf8]{inputenc}

\newcommand{\linia}{\rule{\linewidth}{0.5pt}}
\renewcommand{\section}[1]{%
  \bigskip%
  {\LARGE\MakeUppercase{#1}}\\[-1ex]%
  \linia\medskip
}

\usepackage{biblatex}
\addbibresource{sample.bib}

\begin{document}
\nocite{*}

\printbibliography

\end{document}

И вот что получилось:

введите описание изображения здесь

решение1

biblatexЗаголовок по умолчанию bibliographyиспользуется \section*{<title>}для оформления заголовка библиографии в articleклассах, подобных -.

Переопределение

\renewcommand{\section}[1]{%
  \bigskip%
  {\LARGE\MakeUppercase{#1}}\\[-1ex]%
  \linia\medskip
}

отключает отмеченную звездочкой версию \sectionи, таким образом, приводит к нежелательным результатам.

Либо дайте определение, которое может иметь дело с \section{<title>}и отмеченной версией \section*{<title>}, либо скажите biblatexиспользовать другой заголовок (например \section, ). Последнее можно сделать многими способами, один из них будет

\documentclass{article}
\usepackage[utf8]{inputenc}

\newcommand{\linia}{\rule{\linewidth}{0.5pt}}
\renewcommand{\section}[1]{%
  \bigskip%
  {\LARGE\MakeUppercase{#1}}\\[-1ex]%
  \linia\medskip
}

\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
\nocite{sigfridsson}

\printbibliography[heading=bibnumbered]
\end{document}

Один из способов определить отмеченные и неотмеченные версии вашей команды раздела, которые делают одно и то же, — это использовать (см.Определение помеченных версий команд (* макрос)для получения дополнительных параметров, особенно параметра xparse/ expl3, если вы используете современную систему TeX)

\documentclass{article}
\usepackage[utf8]{inputenc}

\newcommand{\linia}{\rule{\linewidth}{0.5pt}}

\makeatletter
\renewcommand{\section}{\@ifstar\@section\@section}
\newcommand{\@section}[1]{%
  \bigskip%
  {\LARGE\MakeUppercase{#1}}\\[-1ex]%
  \linia\medskip
}
\makeatother

\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
\nocite{*}

\printbibliography
\end{document}

Связанный контент