我目前正在为一篇被要求撰写的论文准备一个 LaTeX 项目,从我的角度来看,关于引用和参考书目风格的要求有些奇怪。至少我找不到任何与之非常接近的风格。
以下内容基本描述了所需的风格:
引用
所有引用都应在脚注中。
间接
参见冲(2000),第 9 页。
参见钟/艾格尔顿(2003),第 166 页及以上。
参见Chong 等人(2003),第 166-168 页。
直接的
同上,只是没有 Cf. 部分
参考书目
Chong, VK/Eggleton, IRC (2003):管理会计系统对管理绩效的决策促进作用:控制点和任务不确定性的影响,载于:会计进展,第 20 卷,第 1 期,2003 年,第 165-197 页。
Merchant,KA / van der Stede,WA(2012):管理控制系统。绩效衡量、评估和激励,第 3 版,Harlow 2012 年。
Hilz-Ward, RM/Everling, O. (编) (2009):风险绩效管理。机会更好评级,第一版,威斯巴登,2009 年。
Lomitschka,M.(2009):整合风险/机遇管理作为企业管理的工具,收录于:Hilz-Ward, RM/Everling, O. (eds.),风险绩效管理。 Chancen für ein besseres Rating,第 1 版,威斯巴登 2009 年,第 277-291 页。
标准普尔(2001):公司评级标准,网址:regulationbodyofknowledge.org/wp-content/2013/03/StandardAndPoors_Corporate_Ratings_Criteria.pdf(2014 年 4 月 29 日)。
此外,如果文章/书籍的文中能有某种参考形式就更好了,与引用非常相似,但只标明作者-年份,就像 Chong/Eggleton (2003) 那样。
所以我现在的问题是,如何以最简单的方式到达那里。我通过 makebst 创建了一个 .bst 文件,它已经给了我:
[1]阿彻,S. / 德尔瓦伊,P. / 麦克莱,S.:国际会计协调的统计模型,载于:Abacus,第 32 卷,第 1 期,(1996 年),第 1-29 页。
虽然已经相当接近了,但还有很长的路要走,而且我后来才意识到我必须直接在 .bst 文件中进行任何更改。最重要的是,我不希望在参考书目中有任何编号,而只是根据作者姓名按字母顺序排列。
是否可以在 LaTeX 中实现上述样式?哪种方式是推荐的?现在应该说,如果更有意义的话,我仍然愿意使用 biblatex/biber 等。
我将感谢任何建议。
答案1
好吧,我不太确定是否需要在这里回答自己的问题,但是因为我得到了一个解决方案,它几乎可以让我达到我想要的效果,所以我想在这里提供这个全面的解决方案。无论如何,这是一些广泛的代码,而且肯定不是满足要求的最有效方法。让我们开始吧:
\usepackage[style=authoryear,backend=biber,parentracker=false,uniquename=false,
sortcites,sorting=nyt,maxnames=2,minnames=1,maxbibnames=1000,isbn=false,url=false,
doi=false,eprint=false,urldate=long]{biblatex}
\urlstyle{same} %maybe useful, placing needs to be tested
\addbibresource{Testbib.bib}
\addbibresource{Rating3.bib}
%\usepackage{breakurl} %vmtl. nicht nötig
%++++++++++++ Defintion Strings ++++++++++++++++++++++++++++
\DefineBibliographyStrings{english}{
references = {Bibliography},
urlseen = {},
andothers = {\em et\addabbrvspace al\adddot}
}
%++++++++++++ Formatierungen Bib-Style ++++++++++++++++++++++++++++
\DeclareFieldFormat[article]{title}{{#1},} %Deletes ''''
\DeclareFieldFormat[book]{title}{{#1},}
\DeclareFieldFormat[online]{title}{{#1},}
\DeclareFieldFormat[inbook]{title}{{#1},}
\DeclareFieldFormat[inbook]{booktitle}{{#1}}
\DeclareFieldFormat[article]{volume}{vol. #1}
\DeclareFieldFormat[book]{volume}{}
\DeclareFieldFormat[article]{number}{no. #1}
\DeclareFieldFormat[article]{journaltitle}{{#1}}
\DeclareFieldFormat{urldate}{\mkbibparens{\bibstring{urlseen}#1}}
\DeclareFieldFormat{url}{{URL}\addcolon\space#1} %\url{} um #1 entfernt \mkbibacro %evtl. \newline vor URL oder #1 einfügen
%Edition
\DeclareFieldFormat{edition}{%
\ifstrequal{#1}{1}
{}
{{#1}. edition, }}
%%% General
%Interligne entre les items Biblio
\DeclareFieldFormat{shorthandwidth}{#1}
\setlength{\bibitemsep}{6pt}
%% Slashes zwischen Autoren/Editoren in Bib
\renewcommand*{\multinamedelim}{\addslash}
\renewcommand*{\finalnamedelim}{\addslash}
%%% Citation
%% Slashes zwischen Autoren/Editoren
\newcommand*{\citerevsdnamedelim}{\slash}
\newcommand*{\citemultinamedelim}{\slash}
\newcommand*{\citefinalnamedelim}{\slash}
\newcommand*{\citeandothersdelim}{\addspace}
% Adapt citation in TeX
\AtEveryCite{%
\let\revsdnamedelim\citerevsdnamedelim
\let\multinamedelim\citemultinamedelim
\let\finalnamedelim\citefinalnamedelim
\let\andothersdelim\citeandothersdelim
\renewcommand{\mkbibnamelast}[1]{\mkbibemph{#1}}
%\renewcommand{\mkbibnamefirst}[1]{\mkbibempf{#1}} %needs to be included if it is opted to include first name initials for distinction in the footnotes
}
%++++++++++++ New Bib Macros ++++++++++++++++++++++++++++
\newbibmacro*{url+urldate}{%
\usebibmacro{url}%
\iffieldundef{urlyear}
{}
{\setunit*{\addspace}%
\usebibmacro{urldate}}}
%Makro für Editornamen in inbook
\DeclareNameFormat{edname}{%
\usebibmacro{name:last-first-edname}{#1}{#4}{#5}{#7}%
\usebibmacro{name:andothers}}
%Makro für Editornamen in inbook
\newbibmacro*{name:last-first-edname}[4]{%
\ifuseprefix
{\usebibmacro{name:delim}{#3#1}%
\usebibmacro{name:hook}{#3#1}%
\ifblank{#3}{}{%
\ifcapital
{\MakeCapital{#3}\isdot}
{#3\isdot}%
\ifpunctmark{'}{}{\bibnamedelimc}}%
#1\isdot
\ifblank{#4}{}{\bibnamedelimd#4\isdot}%
\ifblank{#2}{}{\revsdnamepunct\bibnamedelimd#2\isdot}}
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
#1\isdot
\ifblank{#4}{}{\bibnamedelimd#4\isdot}%
\ifblank{#2#3}{}{\revsdnamepunct}%
\ifblank{#2}{}{\bibnamedelimd#2\isdot}%
\ifblank{#3}{}{\bibnamedelimd#3\isdot}}}
%editor for inbook
\makeatletter
\newbibmacro*{editorinbold}{%
\ifthenelse {\ifuseeditor\AND\NOT\ifnameundef{editor}}
{\ifthenelse {\iffieldequals{author}{editor}\AND
\NOT\iffirstonpage}
{\bibnamedash}
{\printnames[edname]{editor}\addspace
\savefield{namehash}{\bbx@lasthash}}%
\mkbibparens{\usebibmacro{editorstrg}}%
\clearname{editor}}
{\global\undef\bbx@lasthash}}
\makeatother
\renewbibmacro*{volume+number+eid}{%
\printfield{volume}%
\setunit{\addcomma\space}%<---- was \setunit*{\adddot}%
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}%
\setunit{\addcomma\space}%
\printfield{year}}
\renewbibmacro*{journal}{%
\printfield{journaltitle}%
\addcomma\space%
}
\DeclareNameFormat{last-first}{%
\iffirstinits
{\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
{\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}%
\usebibmacro{name:andothers}}
\DeclareNameAlias{sortname}{last-first}
%Code for bold author names and year in bibliography
\renewbibmacro*{author}{%
\ifboolexpr{
test \ifuseauthor
and
not test {\ifnameundef{author}}
}
{\mkbibbold{%
\printnames{author}%
\addspace{%
\mkbibparens{%
{\printfield{year}}}}%
\addcolon}%
\iffieldundef{authortype}
{}
{\setunit{\addcomma\space}%
\usebibmacro{authorstrg}}}
{}}
%Code for bold editor names and year in bibliography
\renewbibmacro*{editor+others}{%
\ifboolexpr{
test \ifuseeditor
and
not test {\ifnameundef{editor}}
}
{\mkbibbold{%
\printnames{editor}%
\addspace{%
\mkbibparens{%
\usebibmacro{editorstrg}}%
\addspace
\mkbibparens{%
{\printfield{year}}}%
\addcolon}%
\clearname{editor}}
{}}}
\renewbibmacro*{cite:labelyear+extrayear}{%
\iffieldundef{labelyear}
{}
{\printtext[bibhyperref]{%
\printfield[parens]{labelyear}%
\printfield[parens]{extrayear}}}} % Klammern um Jahr bei Citations
然后我宣布了一些新的参考书目驱动程序
\DeclareBibliographyDriver{book}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{maintitle+title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
%\usebibmacro{editorbold}% changes from {byeditor+others}
%\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
%\printfield{volumes}%
%\newunit\newblock
%\usebibmacro{series+number}%
%\newunit\newblock
%\printfield{note}%
%\newunit\newblock
\usebibmacro{location+date}%publisher+
\setunit{\addspace}%
\printfield{year}%
%\newunit\newblock
%\usebibmacro{chapter+pages}%
%\newunit
%\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
%+++++++++++++++ Inbook +++++++++++++++++++++++++++++++++++
\DeclareBibliographyDriver{inbook}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\usebibmacro{bybookauthor}%
\newunit\newblock
\usebibmacro{editorinbold}% <--- NEU
\addcomma\space
%\setunit{\labelnamepunct}\newblock% <--- NEU
\usebibmacro{maintitle+booktitle}%
\addcomma
%\newunit\newblock
%\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{location+date}%
\setunit{\addspace}%
\printfield{year}% Neu eingefügt
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
%+++++++++++++++ Online +++++++++++++++++++++++++++++++++++++++
\DeclareBibliographyDriver{online}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
%\printlist{language}%
%\newunit\newblock
%\usebibmacro{byauthor}%
%\newunit\newblock
%\usebibmacro{byeditor+others}%
%\newunit\newblock
\printfield{version}%
\newunit
\printfield{note}%
\newunit\newblock
\printlist{organization}%
\newunit\newblock
\usebibmacro{date}%
\newunit\newblock
\iftoggle{bbx:eprint}
{\usebibmacro{eprint}}
{}%
\newunit\newblock
\usebibmacro{url+urldate}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
我们当然非常欢迎任何评论。
答案2
我也曾做过同样的决定,现在我很高兴选择了biblatex
。如果你必须自定义参考书目或引用样式,我发现它比 更容易学习bibtex
。我记不清 的内部工作原理了bibtex
,因为我两年多前就决定不使用它了。不过,我记得,在第一次尝试时,很难获得涵盖样式自定义的良好文档。 这与 不同biblatex
;随附的文档非常实用,肯定比我在这里写的任何内容都更有帮助。除了两个相当复杂的情况外,我从来不需要额外的文档。
我建议你看一下文档,并看一下两者的样式文件bibtex
,biblatex
然后再决定什么不会令你感到害怕。