我对修改文件不太熟悉.bst
,我的期刊要求版本周围没有括号,页码出现在末尾。目前,示例参考如下:
Doe, Jane 2009. “编者注。”维多利亚·艾伦(Victoria Allen)编辑,性别问题,第 65-88 页。劳特利奇。
我希望它显示为:
Doe, Jane 2009。“编者注。”维多利亚·艾伦 (Victoria Allen) 编辑,性别问题.伦敦:劳特利奇,65-88。
我正在使用稍作修改的版本chicago style
,想知道如何.bst
进一步修改文件以纳入这些更改。MWE 如下:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[round,sectionbib,longnamesfirst]{natbib}
\setcitestyle{authoryear,round,semicolon,aysep={},yysep={,}}
\begin{document}
* a lot of text *
\bibliographystyle{mychicago.bst}
\singlespacing
\bibliography{bib_sample}
\nocite{*}
\end{document}
在我的.bib
档案里,我有:
@incollection{sample2009,
author={Doe, Jane},
title={Editor's Note},
editor={Allen, Victoria},
booktitle={Gender Issues},
year={2009},
publisher={Routledge},
pages={65-88}
}
答案1
您需要做一些更改:
为了去掉“pp.”,将函数修改
format.pages
为:FUNCTION {format.pages} { pages empty$ { "" } { pages multi.page.check { pages n.dashify } % change this { pages } % change this if$ } if$ }
要使用“ed.”代替“(Ed.)”,请将函数修改
format.editor.fml
为:FUNCTION {format.editors.fml} { editor empty$ { "" } { editor format.names.fml editor num.names$ #1 > { ", eds." * } % change this { ", ed." * } % change this if$ } if$ }
您可能还想对该
format.editors
功能进行类似的更改。要将页码放在末尾,请将
incollection
函数修改为:FUNCTION {incollection} { output.bibitem format.authors "author" output.check author format.key output output.year.check new.block format.title "title" output.check new.block crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output new.sentence address output publisher "publisher" output.check.colon format.chapter.pages output % move to after publisher } { format.incoll.inproc.crossref output.nonnull format.chapter.pages output } if$ new.block note output fin.entry }
您可能需要对
inbook
和进行类似的修改inproceedings
。
我知道您已经修改format.names
并format.names.fml
打印了完整的名字,而不仅仅是首字母,以及调整了内容以引用标题,所以我没有展示与这些内容有关的任何内容。
平均能量损失
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@incollection{sample2009,
author = {Doe, Jane},
title = {Editor's Note},
editor = {Allen, Victoria},
booktitle = {Gender Issues},
year = {2009},
address = {London},
publisher = {Routledge},
pages = {65-88}
}
\end{filecontents}
\usepackage[round,sectionbib,longnamesfirst]{natbib}
\setcitestyle{authoryear,round,semicolon,aysep={},yysep={,}}
\bibliographystyle{mychicago}
\begin{document}
\nocite{*}
\bibliography{\jobname}
\end{document}