\printbibliography 뒤에 삽입된 누락된 $ 디버깅

\printbibliography 뒤에 삽입된 누락된 $ 디버깅

다소 이상한 문제가 있습니다. 텍스트와 인용이 포함된 논문의 새 섹션을 작업한 후입니다 \autocite{}. 다음 오류가 발생했습니다.

2525: Missing $ inserted.

TexStudio에 따르면 다음 빈 줄에서 오류가 발생합니다.\printbibliography

제거하면 \printbibliography오류가 해결되지만 내 문제는 해결되지 않습니다.)

문제는 새로 추가된 섹션에 있어야 하고 전체 섹션, 내 .bib파일의 해당 항목 및 모든 보조 파일을 제거해야 한다고 생각했지만 오류가 해결되지 않았습니다.

안타깝게도 내 파일 길이가 약 80페이지이고 편집된 섹션을 제거해도 오류가 해결되지 않기 때문에 내 코드에서 관련 예제를 포함할 수 없다고 생각합니다.

참고: 오류에도 불구하고 업데이트된 PDF 문서가 생성됩니다.

요약 및 질문

이러한 문제를 디버깅하는 데 권장되는 방법은 무엇입니까?

또는:

세부사항이 충분하다면 여기서 문제가 될 수 있는 것은 무엇입니까?

답변1

주어진test1.bib

@misc{foo,
title={Something bad with _x},
author={me},
date={2024}
}

@misc{bar,
title={Something good},
author={me},
date={2024}
}

문서

\documentclass{article}

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

\begin{document}

Blah blah \cite{foo,bar}.


\printbibliography
\end{document}

터미널과 로그에 오류가 발생합니다.

! Missing $ inserted.
<inserted text> 
                $
l.12 \end
         {document}
? 
! Missing $ inserted.
<inserted text> 
                $
l.12 \end
         {document}
? 

조금 모호하지만 tex에 추가하여 더 많은 컨텍스트를 제공하도록 지시할 수 있습니다 \errorcontextlines=5(더 많은 정보를 얻을 수 있지만 요청하는 내용에 주의하세요).

\documentclass{article}

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

\begin{document}

Blah blah \cite{foo,bar}.

\errorcontextlines=5
\printbibliography
\end{document}

이제 터미널과 로그에 오류가 생성됩니다.

! Missing $ inserted.
<inserted text> 
                $
<to be read again> 
                   _
<argument> Something bad with _
                               x
\blx@theformat #1->#1
                     
<argument> ...{\csname abx@field@title\endcsname }
                                                  \blx@endunit 
\@secondoftwo #1#2->#2
                      
...
l.12 \end
         {document}
? 

줄바꿈이 있는 곳

<argument> Something bad with _
                               x

_ 및 에서 발생한 오류를 강조 표시합니다 .

<argument> \printfield [titlecase]{title}

일부 항목의 제목 필드에 있음을 보여줍니다.

거기에서 잘못된 항목을 찾아 다음으로 변경할 수 있습니다.

title={Something bad with \_x},

biber와 pdflatex를 다시 실행하면 오류가 사라집니다.

관련 정보