我的 MWE 看起来像这样
\documentclass{scrartcl}
\begin{filecontents}[force]{\jobname.bib}
@article{Oberländer-Târnoveanu1978,
author = {Oberländer-Târnoveanu, Ernest},
title = {Aspecte ale circulaţiei monedei greceşti în Dobrogea de Nord (sec. VI î.e.n.--I e.n.)},
journaltitle = {Pontica},
date = {1978},
pages = {59--87},
volume = {XI},
}
@article{Ocheşeanu1970,
author = {Ocheşeanu, Radu},
title = {Monedele basileului Moskon aflate în colecţiile Muzeului de arheologie Constanţa},
journaltitle = {Pontica},
date = {1970},
pages = {125--129},
volume = {III},
}
\end{filecontents}
\usepackage{biblatex}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
我知道区别在于右括号)
。但是我怎样才能在带括号的标题后面得到一个句号呢?
答案1
biblatex
的标点符号跟踪器基本上忽略任何类型的括号和圆括号,因此出于标点符号的目的,标题
title = {Aspecte ale circulaţiei monedei greceşti în Dobrogea de Nord (sec. VI î.e.n.--I e.n.)},
是相同的
title = {Aspecte ale circulaţiei monedei greceşti în Dobrogea de Nord sec. VI î.e.n.--I e.n.},
由于该标题以点结尾,biblatex
因此删除后面的句号以避免双重标点。
您可以告诉biblatex
不要忽略标点符号跟踪中的括号。(原始定义\blx@setsfcodes
在biblatex.sty
ll. 1705-1720 中,在 v3.16 中将括号的设置\sfcodes
为 0,我们将其设置为 1000。)
\documentclass{scrartcl}
\usepackage{biblatex}
\makeatletter
\def\blx@setsfcodes{%
\let\blx@setsfcodes\relax
\let\frenchspacing\blx@setfrcodes
\let\nonfrenchspacing\blx@setencodes
\ifnum\sfcode`\.>2000
\blx@setencodes
\else
\blx@setfrcodes
\fi
\@setquotesfcodes
\sfcode`\(=\@m
\sfcode`\)=\@m
\sfcode`\[=\@m
\sfcode`\]=\@m
\sfcode`\<=\@m
\sfcode`\>=\@m}
\makeatother
\begin{filecontents}{\jobname.bib}
@article{Oberländer-Târnoveanu1978,
author = {Oberländer-Târnoveanu, Ernest},
title = {Aspecte ale circulaţiei monedei greceşti
în Dobrogea de Nord (sec. VI î.e.n.--I e.n.)},
journaltitle = {Pontica},
date = {1978},
pages = {59--87},
volume = {XI},
}
@article{Ocheşeanu1970,
author = {Ocheşeanu, Radu},
title = {Monedele basileului Moskon aflate
în colecţiile Muzeului de arheologie Constanţa},
journaltitle = {Pontica},
date = {1970},
pages = {125--129},
volume = {III},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
如果您希望保留正常biblatex
行为,您可以\@
在此标题的末尾添加,以告诉标点符号跟踪器忽略括号中的点。
\documentclass{scrartcl}
\usepackage{biblatex}
\begin{filecontents}{\jobname.bib}
@article{Oberländer-Târnoveanu1978,
author = {Oberländer-Târnoveanu, Ernest},
title = {Aspecte ale circulaţiei monedei greceşti
în Dobrogea de Nord (sec. VI î.e.n.--I e.n.)\@},
journaltitle = {Pontica},
date = {1978},
pages = {59--87},
volume = {XI},
}
@article{Ocheşeanu1970,
author = {Ocheşeanu, Radu},
title = {Monedele basileului Moskon aflate
în colecţiile Muzeului de arheologie Constanţa},
journaltitle = {Pontica},
date = {1970},
pages = {125--129},
volume = {III},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
MWE 中的输出是相同的。