我在互联网上进行了仔细的搜索,但没有找到任何与我要找的内容相关的内容。
在 Lyx 中,选择引用选项时最接近我需要的样式是:
(作者,日期)
根据我所在大学的参考指南,所有此类引用应为:
(作者 日期)
省略逗号。
我正在使用 authordate1.bst,但是我尝试了 1 到 4 来查看它们是否有任何区别。
我确实想知道这里的代码(来自上述文件)是否有任何原因。我摆弄了一下,但没有发现任何区别,它只是针对参考书目而不是引文吗?
FUNCTION {format.names}
{ 's :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr "{vv~}{ll}{, jj}{, ff}" format.name$ 't :=
nameptr #1 >
{ namesleft #1 >
{ ", " * t * }
{ t "others" =
{ ", {\em et~al.\ }\relax" * }
{ ", \& " * t * } % Butcher, pages
if$ % 186-189.
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
FUNCTION {format.authors}
{ author empty$
{ "" }
{ author format.names }
if$
}
这种引用样式是否由 .bst 文件定义,或者它是 Lyx 中的硬编码内容?
编辑: 问题解决了(感谢@TorbjørnT。)
如上所述,将其添加到序言中可以解决问题,假设您使用 natbib(参考书目设置>引用样式)。
\setcitestyle{aysep={ }}
答案1
使用作者-年份样式时,natbib
可以通过添加以下代码(重新)定义引文中作者和年份之间的分隔符:
\setcitestyle{aysep={<separator>}} %Author-Year SEParator
到文档前言。在 LyX 中,它位于文档 --> 设置 --> LaTeX 前言下。分隔符可以是普通空格,即\setcitestyle{aysep={ }}
,如果您想要一个不间断空格,以便作者和年份之间不会出现换行符,请使用~
,即\setcitestyle{aysep={~}}
。