土耳其语 Babel 书目缺少作者姓名

土耳其语 Babel 书目缺少作者姓名

我正在尝试准备我的参考书目,但是当我尝试添加一些参考文献时,却没有参考文献的作者。

这是我的main.text

\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{geometry}

\geometry{top=30mm,right=30mm,left=30mm,bottom=30mm}

\usepackage{setspace}
\usepackage{anyfontsize}
\usepackage{multicol}
\usepackage{ragged2e}
\usepackage{amsmath}
\usepackage{mathptmx}
\usepackage[english,turkish]{babel}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage[style=authoryear]{biblatex}
\addbibresource{biblio.bib}

\begin{document}
\shorthandoff{=!}
%\input{Chapters/Titlepage}
%\input{Chapters/Titlepage2}
%\input{Chapters/Abstract}
\input{Chapters/Micromechanics of Lamina}
\input{Chapters/MacroMechanics of Lamina}
\input{Chapters/Macromechanical Analysis of Laminates}

\printbibliography

\end{document}

这是我的书目,目前仅供演示。

@article{knuth:1984,
title={Literate Programming},
author={Donald, Knuth},
journal={The Computer Journal},
volume={27},
number={2},
pages={97--111},
year={1984},
publisher={Oxford University Press}
}

这是我得到的结果:

在此处输入图片描述

答案1

这里的问题是babel-turkish的简写设置。babel-turkish使其处于=活动状态,这会破坏许多键值包。由于biblatex使用键值语法来命名名称,因此这些错误和不会显示。

在示例中,有问题的 简写!=在 之后被禁用\begin{document},但对于 来说,这稍微有点太晚了biblatex,因为它读取了.bbl处的文件(其中包含所有书目数据,其中包括名称)\begin{document}

利用新的钩子管理系统,我们可以微调\shorthandoff其中的放置\begin{document}

\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[english,turkish]{babel}
\usepackage[T1]{fontenc}
\usepackage[style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}

\AtBeginDocument[biblatex/shorthands]{%
  \shorthandoff{=!}%
}

\DeclareHookRule{begindocument}{biblatex/shorthands}{before}{biblatex}

\begin{document}
Lorem \autocite{sigfridsson}

\printbibliography
\end{document}

Lorem(Sigfridsson ve Ryde 1998)

解决此问题的另一种方法是使用选项shorthands明确启用我们想要的速记。土耳其语设置:=!。如果我们禁用,!=我们只剩下:,所以我们说shorthands=:。如果你甚至不想要一个活动的冒号,那就用shorthands=off

\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[english, turkish, shorthands=:]{babel}
\usepackage[T1]{fontenc}
\usepackage[style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{sigfridsson}

\printbibliography
\end{document}

相关内容