biber idemgender에서 macro cite : idem 갱신시 해결되지 않음
이 질문 과 관련 cite:idem
하여 컴파일러가 변수를 해결할 수 없기 때문에 매크로를 갱신하는 데 문제가 있음을 발견했습니다 idemgender
.
다음은 인용 된 질문에서 파생 된 예입니다. cite:idem
인수를 작은 대문자로 인쇄하도록 매크로 가 갱신됩니다.
\documentclass{article}
\usepackage[italian]{babel}
\usepackage[backend=biber, citestyle=verbose-trad2]{biblatex}
\begin{filecontents*}{\jobname.bib}
@article{bollman1966cannophori,
author = {Demidov, S.S.},
title= {N.V. Bugaev e lo sviluppo della scuola matematica moscovita},
journaltitle = {Ricerche di storia della matematica},
date = {1985},
number = {XXIX},
pages= {113-124},
}
@incollection{bollman1998romische,
author = {Demidov, S.S.},
title= {N.V. Bougaiev et la creation de l'Ecole de Moscou},
date = {1985},
booktitle= {Mathemata.},
editor = {Folkerts, M.},
publisher= {Steiner Verlag},
location = {Stuttgart},
pages = {651-673},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\providecommand*{\mkidem}[1]{\textsc{#1}}
% substitute: \mkidem for \mkibid
\renewbibmacro*{cite:idem}{\bibstring[\mkidem]{idem\thefield{gender}}\setunit{\printdelim{nametitledelim}}}
\begin{document}
First \footcites{bollman1998romische}{bollman1966cannophori}
And second\footcite{bollman1966cannophori}
\end{document}
LuaLateX로 컴파일 된 출력은 다음 각주를 제공합니다.

보시다시피 "Idem"대신 문서는 토큰 idemgender를 인쇄합니다 .
답변
질문의 코드에는 일을 엉망으로 만드는 보이지 않는 문자가 포함되어 있습니다. 댓글에서 코드를 복사했을 때이 사이트에서이 효과를 여러 번 보았습니다.
구체적으로 제로 폭 비 소목 사이 (U +의 200C)가 \thefield
및 {gender}
애프터뿐만 아니라 제로의 폭 비 조이너 등 (U +의 200C) 및 폭 제로 공간 (U + 200B) p
에 \printdelim
및 상기 후는 d
에서 nametitledelim
. p
코드 강조 표시를 보면 뭔가 꺼져 있음을 알 수 있습니다 . 모두 \printdelim
파란색이어야하지만 \p
질문의 코드에서는 파란색 만 표시됩니다 .
같은 웹 사이트 https://w3c.github.io/xml-entities/unicode-names.html 성가신 보이지 않는 캐릭터를 찾는 데 크게 도움이 될 수 있습니다.
원하지 않는 보이지 않는 문자를 제거하면 다음이 잘 작동합니다.
\documentclass{article}
\usepackage[italian]{babel}
\usepackage[backend=biber, citestyle=verbose-trad2]{biblatex}
\providecommand*{\mkidem}[1]{\textsc{#1}}
\renewbibmacro*{cite:idem}{%
\bibstring[\mkidem]{idem\thefield{gender}}%
\setunit{\printdelim{nametitledelim}}}
\begin{filecontents*}{\jobname.bib}
@article{bollman1966cannophori,
author = {Demidov, S.S.},
title = {N.V. Bugaev e lo sviluppo della scuola matematica moscovita},
journaltitle = {Ricerche di storia della matematica},
date = {1985},
number = {XXIX},
pages = {113-124},
}
@incollection{bollman1998romische,
author = {Demidov, S.S.},
title = {N.V. Bougaiev et la creation de l'Ecole de Moscou},
date = {1985},
booktitle = {Mathemata},
editor = {Folkerts, M.},
publisher = {Steiner Verlag},
location = {Stuttgart},
pages = {651-673},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
First \footcites{bollman1998romische}{bollman1966cannophori}
And second\footcite{bollman1966cannophori}
\end{document}
