latex:参考文献超过三个作者时,第三个作者后加逗号并接上et al.

问题:针对引用的文献,当文献的作者多余3个时,我们需要将其缩略为et al. ,那么如何自动的实现这个过程且不用将每个作者变为and others?

方法1:
如果使用的biblatex模式的参考文献引用方式,那么可以通过maxnames选项控制。

\usepackage[style=alphabetic,maxnames=4,minnames=3,maxbibnames=99]{biblatex}

方法2:
如果使用的是natbib模式参考文献引用方式,那么需要自己手动的修改*.bst文件。

\usepackage[super,square,numbers,sort&compress]{natbib} % for super citation

修改方法如下:

% #0 turns off the forced use of "et al."
% #1 enables  
FUNCTION {default.is.forced.et.al} { #1 } %默认是关闭的,需要打开

%设置多少个作者后加上et al.  下面设置的是3个
FUNCTION {default.max.num.names.before.forced.et.al} { #3 }

FUNCTION {default.num.names.shown.with.forced.et.al} { #3 }

经过上面的步骤后,et al.可以自动的出现了,但是它前面没有逗号,那么需要修改如下:

% 在前面加上逗号
FUNCTION {bbl.etal}{ ",~et~al." }

% 修改这个函数中包含bbl.etal的一行
FUNCTION {format.names}

% 去掉了双引号中的空格
{ "" * bbl.etal emphasize * }

你可能感兴趣的:(LaTeX)