我正在使用natbib
并JabRef
为我的项目制作参考书目。
它工作正常,但是在尝试输入软件的参考(@software{,
)后,它开始给我这个错误,该错误一直存在,其中参考以数字形式出现。
Package natbib Error: Bibliography not compatible with author-year citations. ...mand\NAT@force@numbers{}\NAT@force@numbers
我修复了 bib 文件,因为 JabRef 告诉我有些作者的拼写不正确,但这并不能解决问题。
我唯一能想到的是,在某些情况下,期刊名称中会出现“检测到缩写”的消息,因为期刊的缩写与全名(Cell
= Cell
)相匹配,但我不知道如何解决这个问题,或者这是否是产生错误的原因。
围兜参赛示例software
:
@software{hadoop,
author = {{Apache Software Foundation}},
title = {Hadoop},
url = {https://hadoop.apache.org},
version = {0.20.2},
date = {2010-02-19},
}
但是,我现在的 bib 文件中没有任何软件条目,但错误一直出现。
我在用着:
\bibliographystyle{apalike}
下面我列出了我正在使用的所有软件包:
\documentclass[12pt, oneside]{article}
\usepackage[utf8]{inputenc} %Escribir en castellano.
\usepackage{mathptmx }%Adobe Times Roman (or equivalent) as default font
\usepackage{titlesec} %Selection from various title styles
\usepackage[letterpaper,left=3.5cm,right=3cm,top=3cm,bottom=3cm]{geometry} %control de tamaño de papel y márgenes
\usepackage{graphicx} %para poder incluir figuras
\usepackage{siunitx} %para notación científica
\usepackage{float} %complemento para figura
\usepackage{import} %para poder dividir el texto en varios archivos
\usepackage{natbib} %para la bibliografía
\usepackage{setspace} \onehalfspacing %Control del espacio entre lineas
\usepackage{xcolor} %Para cambiar el color de texto
\usepackage{listings}
\usepackage{pgfgantt} %Diagrama de Gantt
\usepackage[spanish]{babel}
\lstset{basicstyle=\ttfamily,
showstringspaces=false,
commentstyle=\color{red},
keywordstyle=\color{blue}
}
答案1
这里涉及几个问题。
首先,正如克里斯托弗的回答,您的参考书目样式apalike
在技术上并不知道@software
条目类型。因此它将回退到@misc
。(biblatex
样式通常知道,@software
因为它是那里标准数据模型的一部分。)这不一定是大问题。您可以切换到@misc
以避免警告,或者您可以坚持@software
使用更语义化的名称。
其次,更重要的apalike
是(我相信所有 BibTeX 样式都一样)不知道字段date
(同样date
是来自biblatex
世界的东西)。BibTeX 样式通常只有year
和month
字段。下面将编译
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{natbib}
\begin{filecontents}{\jobname.bib}
@software{hadoop,
author = {{Apache Software Foundation}},
title = {Hadoop},
url = {https://hadoop.apache.org},
version = {0.20.2},
year = {2010},
month = feb,
}
\end{filecontents}
\begin{document}
Lorem \citep{hadoop}
\bibliographystyle{apalike}
\bibliography{\jobname}
\end{document}
第三,这可能是一个小问题,它apalike
不是专门为与 一起使用而设计的natbib
。这就是为什么没有 会year
导致错误。如果您使用包中的样式natbib
(例如\bibliographystyle{plainnat}
缺少年份)不会导致错误。通常,您可以将apalike
和natbib
一起使用,通常会得到良好的结果,但这是存在一些问题的情况之一。
请注意,这里建议的两种样式都不知道该version
字段,因此它将被忽略。如果您想要/必须坚持使用 BibTeX,您可能必须尝试使用可用字段(例如howpublished
等)以获得此条目的良好输出。
总体而言,该条目看起来是为而设计的biblatex
。
答案2
@Software
来自 biblatex软件包它需要 biblatex + biber 作为后端。
如果你想坚持使用 BibTeX,你需要将 bib 条目更改为@Misc