
biblatex에서 턱받이 라벨에 접두사를 사용하는 경우 특히 긴 접두사의 경우 접두사와 실제 턱받이 라벨 사이에 하이픈이 자주 사용됩니다.
이것을 어떻게 피할 수 있습니까?
여기에 제공되는 솔루션아무런 효과가 없습니다. 확실해마이크로타이프대부분의 경우에는 문제가 해결되지만 항상 사용하는 것은 아니며 더 안전한 솔루션을 원합니다.
나도 알고 있지만 \mbox{...}
모든 인용 명령을 거기에 수동으로 입력하고 싶지는 않습니다.
\begin{filecontents}{references.bib}
@InProceedings{Baader1989,
Title = {Direct self control of inverter-fed induction machine, a basis for speed control without speed-measurement},
Author = {Baader, U. and Depenbrock, M. and Gierse, Georg},
Booktitle = {Industry Applications Society Annual Meeting, 1989., Conference Record of the 1989 IEEE},
Year = {1989},
Month = {Oct},
Pages = {486-492 vol.1},
}
\end{filecontents}
\documentclass{article}
\usepackage[style=alphabetic,%
backend=biber,
maxnames=99,
maxalphanames=1,
backref=true,
doi=false,isbn=false,url=false,
backref=false,
]{biblatex}
\renewcommand*{\labelalphaothers}{}
\bibliography{references.bib}
\begin{document}
\noindent This is a looong sentence which will lead to hyphenation in the bib label: \cite{Baader1989}
\printbibliography[prefixnumbers = P-]
\end{document}
답변1
는 prefixnumbers
최신 버전의 에서 더 이상 지원되지 않습니다 biblatex
.
\begin{filecontents}{\jobname.bib}
@InProceedings{Baader1989,
Title = {Direct self control of inverter-fed induction machine, a basis for speed control without speed-measurement},
Author = {Baader, U. and Depenbrock, M. and Gierse, Georg},
Booktitle = {Industry Applications Society Annual Meeting, 1989., Conference Record of the 1989 IEEE},
Year = {1989},
Month = {Oct},
Pages = {486-492 vol.1},
}
\end{filecontents}
\documentclass{article}
\usepackage[style=alphabetic,%
backend=biber,
maxnames=99,
maxalphanames=1,
backref=true,
doi=false,isbn=false,url=false,
backref=false,
]{biblatex}
\renewcommand*{\labelalphaothers}{}
\addbibresource{\jobname.bib}
\newrobustcmd{\safehyphen}{\ifincsname-\else\mbox{-}\fi}
\begin{document}
\newrefcontext[labelprefix=P\safehyphen]
\noindent This is a looong sentence which will lead to
hyphenation in the bib label: \cite{Baader1989}
\printbibliography
\end{document}
나는 동일한 전략이 기존 방식에도 적용될 것이라고 믿습니다. 문제는 접두사가 두 가지 별개의 장소, 즉 인쇄용과 제어 시퀀스 이름 형성용으로 사용된다는 것입니다. 따라서 여기에 매크로를 추가하는 것은 트릭을 사용하지 않는 한 작동하지 않습니다 \ifincsname
.
참고: 저는 TeX Live 2014로 테스트했고
\newrobustcmd{\safehyphen}{\ifincsname-\else\mbox{-}\fi}
서문에 함께
\printbibliography[prefixnumbers = P\safehyphen]
공장.