`\newglossaryentry` 내부의 `\ensuremath` 환경에 중괄호를 삽입하는 방법은 무엇입니까?

`\newglossaryentry` 내부의 `\ensuremath` 환경에 중괄호를 삽입하는 방법은 무엇입니까?

pdflatex다음 문서에서 실행 중

\documentclass{article}
\usepackage{glossaries-extra}
\newglossaryentry{injective}{name={\ensuremath{X\overset{1:1}{\rightarrow}Y}},description={injective function}}
\makeglossaries
\begin{document}
\glsadd{injective}
\printglossaries
\end{document}

다음과 같은 컴파일 오류가 발생합니다.

! Argument of \@tempc has an extra }.
<inserted text> 
                \par 
l.3 ...arrow}Y}},description={injective function}}

답변1

\overset강력하지 않으므로 파일에 쓸 때 실패합니다. 노력하다

...X\protect\overset...

BTW 나는 아마도 건설 대신 amsmathand를 사용할 것입니다.\xrightarrow{1{:}1}\overset

관련 정보