
\finalnamedelim
인용 및 턱받이 항목에 대해 매크로가 다르게 작동하기를 원합니다 .
특히 다음의 경우정확히 2개저자가 더 많은 경우 인용 스타일은 어쨌든 "et al"을 사용합니다. 인용에서는 "and"를 구분 기호로 사용해야 하지만반점턱받이 항목에서.
여기 내 MWE가 있습니다.
\documentclass[a4paper,12pt,oneside]{scrreprt}
% ----------------------------------------------------------
\usepackage[%
style=authoryear,
bibstyle=authoryear,
maxcitenames=2,
dashed=false,
firstinits=true
backend=biber,
]{biblatex}
% ----------------------------------------------------------
\renewcommand*{\finalnamedelim}{\addcomma\space}
\renewcommand*{\revsdnamepunct}{}
% ----------------------------------------------------------
\addbibresource{biblatex-examples.bib}
% ----------------------------------------------------------
\begin{document}
\parencite{bertram}
\printbibliography
\end{document}
이 인용 결과는 다음과 같습니다.
그리고 이 턱받이 항목은 다음과 같습니다.
그렇게 하는 가장 좋은 방법은 무엇입니까?
안부 인사, 데이비드
답변1
\AtBeginBibliography
후크를 사용해서만 참고문헌에 특정 설정을 적용할 수 있습니다.
\AtBeginBibliography{\renewcommand*{\finalnamedelim}{\addcomma\space}}
Hooks \AtEveryCite
는 인용에 대해서도 동일한 작업을 수행하므로 원칙적으로 다음과 같이 사용할 수도 있습니다.
\renewcommand*{\finalnamedelim}{\addcomma\space}
\AtEveryCite{%
\renewcommand*{\finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\bibstring{and}\space}}
그런데 왜 그럴까요?
또한 \AtEveryCitekey
및 \AtEveryBibitem
이 후크는 해당 항목의 서지 데이터를 이미 사용할 수 있는 컨텍스트에서 실행됩니다. 여기에 사용된 명령에는 중요하지 않지만 및 친구는 및 \clearfield
에서만 작동합니다 .\AtEveryCitekey
\AtEveryBibitem
§4.10.6에서 이러한 코드 후크에 대한 자세한 내용을 읽을 수 있습니다.범용 후크, pp. 244-246 중biblatex
선적 서류 비치.