Аргумент \blx@defformat@i имеет дополнительный }

Аргумент \blx@defformat@i имеет дополнительный }

Я пишу свою докторскую диссертацию на Overleaf и использую шаблон, который нашел в сети и адаптировал к университетским рекомендациям. Я новичок в LaTeX и являюсь базовым пользователем.

Примерно месяц назад я не смог скомпилировать свою диссертацию на Overleaf, хотя никаких ошибок не отображается. Из-за этого я загрузил LaTeX на свой Mac, но когда я пытаюсь скомпилировать документ, я получаю это сообщение об ошибке: Argument of \blx@defformat@i has an extra }в ссылке на строку 92 (настройки библиографии, которые я изменил, чтобы они соответствовали требованиям моего университета).

Это часть моей преамбулы:

\documentclass[
12pt,
openany,
english, 
onehalfspacing,
headsepline, 
]{MastersDoctoralThesis} % The class file specifying the document structure

\usepackage[T1]{fontenc} % Output font encoding for international characters
\usepackage{fontspec}

\usepackage{multirow}
\usepackage{tabularx}

\setmainfont{Times New Roman}
\hyphenpenalty=1000 % preventing splitting of words
\usepackage{xurl}
\usepackage{hyperref}
\hypersetup{breaklinks=true}

\usepackage{ragged2e}
\usepackage[format=plain,margin=25pt,font=small,labelsep=colon]{caption}

\newcommand{\foo}{\foo}

%-------------------------------------------------------------------                 BIBLIOGRAPHY SETTINGS UNIGRAZ  ---------------------------------------------------------------------

\usepackage[style=ext-authoryear,sorting=nyt,sortcites=true,mincitenames=1,maxcitenames=3,autopunct=true,autolang=hyphen,hyperref=true,abbreviate=true,backref=false,backend=biber,maxbibnames=20,innamebeforetitle=true,uniquename=false,uniquelist=false]{biblatex} % Use the bibtex backend with the authoryear citation style (which resembles APA)

\DeclareDelimFormat{multinamedelim}{\addslash} %slash between names
\DeclareDelimAlias{finalnamedelim}{multinamedelim}

\renewcommand{\bibpagespunct}{\addcomma\addspace}
\DeclareFieldFormat{pages}{#1} %remove "pp"

\DeclareFieldFormat[article,incollection]{pages}{#1}
\renewbibmacro*{volume+number+eid}{
  \printfield{volume}
   \setunit{\addcolon}
  \printfield{number}
  \setunit{\addcomma\space}%
  \printfield{eid}}
\DeclareFieldFormat[article,incollection]{number}{\addcolon{#1}} %volume:issue
\usepackage{xpatch}
\xpatchbibdriver{article}
  {\usebibmacro{title}%
   \newunit}
  {\usebibmacro{title}%
   \printunit{\addcomma\space}}
  {}
  {} %comma after title of articles
  
  
\DefineBibliographyStrings{english}{%
  urlfrom = {in},
}
\DeclareFieldFormat{url}{\bibstring{urlfrom}\addcolon\space\url{#1}} %url as "in"
\DeclareFieldFormat[misc]
**\usepackage{xpatch}** %here error while compiling
\xpatchbibdriver{misc}
  {\usebibmacro{title}%
   \newunit}
  {\usebibmacro{title}%
   \printunit{\addcomma\space}}
  {}
  {}%comma after titles of articles in websites
\DeclareFieldFormat{urldate}{\mkbibbrackets{\bibstring{urlseen}#1}}
\DefineBibliographyStrings{english}{urlseen ={}} %url in square brackets without "accessed on"


\DeclareNameAlias{sortname}{family-given} %lastname first

\renewcommand{\labelnamepunct}{\addspace} %no period after year

\renewcommand*{\postnotedelim}{\addcolon}
\DeclareFieldFormat{postnote}{#1}
\DeclareFieldFormat{multipostnote}{#1} %quotes (year:page)


\DeclareFieldFormat{editortype}{\mkbibparens{#1}}
\DeclareDelimFormat{editortypedelim}{\addspace}
\DeclareFieldAlias{translatortype}{editortype}
\DeclareDelimAlias{translatortypedelim}{editortypedelim}
\DeclareNameAlias{default}{family-given}
\DeclareNameAlias{sortname}{family-given}
  \renewbibmacro*{in:}{%
  \setunit{\addcomma\space}%
  \printtext{%
    \bibstring{in}\intitlepunct}} %incollection with title, :in editor (ed.)

\DeclareLabeldate{\field{year}\field{eventdate} \field{origdate}\literal{nodate}} % n.d. in sites when no year

\addbibresource{example.bib} % The filename of the bibliography

\usepackage[autostyle=true]{csquotes} % Required to generate language-dependent quotes in the bibliography

\setlength\bibitemsep{0.5\baselineskip} % space between bibliography entries

решение1

Линия перед маркером %here error while compilingнеисправна.

\DeclareFieldFormat[misc]

просто неполный. Синтаксис \DeclareFieldFormatесть

\DeclareFieldFormat[<entry type_1,...,entry type_n>]{<field>}{<formatting code>}

В строке-нарушении отсутствуют два обязательных аргумента. Я не могу предположить, какими должны были быть эти два аргумента, поэтому, чтобы эта ошибка исчезла, я предлагаю вам просто удалить эту строку.

Обратите внимание, что Overleaf должен отображать ошибку для этой ошибочной строки, даже если он генерирует вывод в формате PDF.

Действительно, если я попробую

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber, style=authoryear]{biblatex}

\DeclareFieldFormat[misc]


\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{sigfridsson}

\printbibliography
\end{document}

как вhttps://www.overleaf.com/read/rvgqqbfngrrv

Я получаю сообщение об одной ошибке от Overleaf (см. красное поле с цифрой 1 рядом с кнопкой «Перекомпилировать» — выделено розовым)

Номер ошибки указан на обороте

Overleaf может быть довольно хорош в сокрытии сообщений об ошибках от вас. Вот почему вам следуетвсегдаубедитесь, что ваш документ не содержит ошибок. Смотрите такжеПримеры пользователей Overleaf, не замечающих сообщения об ошибках.

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