我正在用 LaTeX 完成我的博士论文,在打印之前,我的大学对参考文献部分的格式有一些非常具体的要求。使用 LaTeX,makebst
我能够重现其中的大部分内容,但有一件事让我感到困惑。
我的大学要求作者姓名用破折号分隔,如下所示:
Feeny, David F. – Willcocks, Leslie P. (1998) 利用信息技术的核心 IS 能力。斯隆管理评论,第39卷(3),9–21。
我如何编辑我的自定义文件以便用逗号而不是逗号.bst
分隔作者?-
答案1
如果你愿意切换到biblatex
,这里有一个使用短划线作为名称分隔符的解决方案(并且满足您对article
条目类型的其他格式要求):
\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\usepackage{xpatch}
% Last name always before first name for authors
\DeclareNameAlias{sortname}{last-first}
% Unbreakable space -- en-dash -- space as separator between author names
\renewcommand*{\multinamedelim}{~--\space}
\renewcommand*{\finalnamedelim}{~--\space}
% No period after year
\xapptobibmacro{date+extrayear}{%
\nopunct
}{}{}
% Titles of articles not inside quotation marks
\DeclareFieldFormat
[article,inbook,incollection,inproceedings,patent,thesis,unpublished]{title}{#1}
% No "In: " before journal titles of articles
\renewbibmacro{in:}{%
\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}
% Comma before volume of articles
\xpretobibmacro{volume+number+eid}{%
\setunit*{\addcomma\space}%
}{}{}
% "Volume" capitalized for articles
\DeclareFieldFormat[article]{volume}{\bibsentence\bibstring{volume}~#1}
% Unbreakable space instead of dot before number of articles
\xpatchbibmacro{volume+number+eid}{%
\setunit*{\adddot}%
}{%
\setunit*{\addnbspace}%
}{}{}
% Number of articles in parentheses
\DeclareFieldFormat[article]{number}{\mkbibparens{#1}}
% No prefix for pages
\DeclareFieldFormat{pages}{#1}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Fee98,
author = {Feeny, David F. and Willcocks, Leslie P.},
year = {1998},
title = {Core IS capabilities for exploiting information technology},
journaltitle = {Sloan Management Review},
volume = {39},
number = {3},
pages = {9--21},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\nocite{*}
\begin{document}
\printbibliography
\end{document}
也可以看看自定义 biblatex 样式的指南。