无法使用西里尔文制作参考书目:无效的 UTF-8 字节序列

无法使用西里尔文制作参考书目:无效的 UTF-8 字节序列

我在尝试管理我的参考文献时遇到了一些错误。

我在 Mac 上使用 Texshop 和 BibDesk。它们在英语环境下运行得非常好,但当我尝试在 .bib 文件中输入俄语单词时,会出现该错误

./error_example.bbl:25: Package inputenc Error: Invalid UTF-8 byte sequence.

See the inputenc package documentation for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.25 Ð.
       ~Ю.Ð., \emph{ÐÑбОÑеÑкОе ÑПÑÐŒÑ}.\hskip 1em plus 0.5em...

? 

我的 .bib 文件如下所示:

%% Saved with string encoding Unicode (UTF-8) 

@book{cubic_forms,
    author = {Манин Ю.И.},
    date-added = {2023-11-14 17:13:52 +0300},
    date-modified = {2023-11-14 17:42:26 +0300},
    publisher = {Наука},
    title = {Кубические формы},
    year = {1972.}}
    

BibDesk 以 UTF-8 格式保存,我的代码如下所示

\documentclass[12pt]{article}

\usepackage{cmap}
\usepackage[T2A]{fontenc}  
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}

\begin{document}

This is from \cite{cubic_forms}
\bibliographystyle{IEEEtran}
\bibliography{ref.bib}

\end{document}

我该如何修复这个问题?这是 Texshop 的问题吗?

UPD:正如我所见,我可以忽略所有警告并进行编译。我还发现,如果我更改\bibliographystyle{IEEEtran}\bibliographystyle{plain}不同的样式,它就可以正常工作。IEEEtran 对我来说是非常好的一种样式,因为它的链接可视化。我可以在不切换到 biblatex/biber 并更改我的程序的情况下修复它吗?理想情况下,我希望将 IEEEtran 保留为 bibliographystyle。

.bibUPD2:我发现,当 IEEEtran 将文件转换为 时,问题就开始出现了.bbl。我可以添加一些东西来改善它吗?

答案1

您可以使用biblatexieee风格。

\begin{filecontents*}{\jobname.bib}
@book{cubic_forms,
    author = {Манин, Ю. И.},
    date-added = {2023-11-14 17:13:52 +0300},
    date-modified = {2023-11-14 17:42:26 +0300},
    publisher = {Наука},
    title = {Кубические формы},
    year = {1972.},
    langid={russian},
}
\end{filecontents*}

\documentclass[12pt]{article}

%\usepackage{cmap}
\usepackage[T2A,T1]{fontenc}  
%\usepackage[utf8]{inputenc}
\usepackage[main=english,russian]{babel}
\usepackage{csquotes}
\usepackage[style=ieee,autolang=other*]{biblatex}
\usepackage{hyperref}

\addbibresource{\jobname.bib}

\begin{document}

This is from \cite{cubic_forms}

\printbibliography

\end{document}

我以前filecontents*只是为了使示例自成一体。将其替换\jobname.bib\addbibresource您的 bib 文件的实际名称。

但是,请注意 bib 条目中的修复:缺少一个逗号,并且首字母之间也缺少一个空格。

运行pdflatex,然后biber再次运行pdflatex

在此处输入图片描述

相关内容