西里尔字母破折号显示不一致

西里尔字母破折号显示不一致

我注意到,同一个西里尔文破折号在英语和俄语书目条目中的显示方式不同。如下所示,在俄语中,它按单一规则显示,但在英语中,它使用两个重叠的破折号错误地显示。

如何实现两种语言之间的一致性?

在此处输入图片描述

\documentclass{scrreprt}

\usepackage[english, russian]{babel}
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@BOOK{Boehm:2000,
  author = {Boehm, Barry W.},
  title = {Software cost estimation with Cocomo II},
  year = 2000,
  language = {english}
}
@BOOK{Kelton:2004,
  author = {Кельтон, В. Дэвид and Лоу, Аверилл М.},
  title = {Имитационное моделирование},
  year = 2004,
  language = {russian}
}
\end{filecontents}

\begin{document}
\nocite{*}
\bibliographystyle{gost2008s}
\bibliography{\jobname}
\end{document}

答案1

如果你添加合适的定义,你会得到相同的破折号\cyrdash

\documentclass{scrreprt}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc} % change with the actual encoding you're using
\usepackage[english, russian]{babel}
\usepackage{filecontents}

%%% since T2A is loaded we can define \cyrdash to use it
\DeclareTextCommandDefault{\cyrdash}{{\fontencoding{T2A}\selectfont---}}

\begin{filecontents}{\jobname.bib}
@BOOK{Boehm:2000,
  author = {Boehm, Barry W.},
  title = {Software cost estimation with Cocomo II},
  year = 2000,
  language = {english}
}
@BOOK{Kelton:2004,
  author = {Кельтон, В. Дэвид and Лоу, Аверилл М.},
  title = {Имитационное моделирование},
  year = 2004,
  language = {russian}
}
\end{filecontents}

\begin{document}
\nocite{*}
\bibliographystyle{gost2008s}
\bibliography{\jobname}
\end{document}

相关内容