我正在使用 natbib.sty chicago.bst 作为我的 bibtex 样式表。
我的 natbib 电话看起来像
\usepackage[numbers,sort&compress,super]{natbib}
当我尝试更改参考书目中的悬挂缩进时,什么也没有发生:
\setlength \bibhang{1in}
但是,如果我从选项中删除numbers
和super
选项natbib
,会出现悬挂缩进吗?这似乎bibhang
不适用于数字和超级选项?有什么线索可以解释这里发生了什么吗?我被难住了,花了大半个下午的时间寻找答案。
答案1
根据natbib
文献,
作者-年份样式的参考文献列表使用悬挂缩进格式:每个参考文献的第一行与左侧对齐,后面几行从左边距缩进。此缩进是默认设置,但可以通过重新定义(使用)长度参数
1em
来更改。\setlength
\bibhang
这表明将对\bibhang
作者年份方案产生影响,但您正在使用该numbers
选项,因此\bibhang
不会产生任何影响。
一种可能的解决方法是重新定义thebibliography
在 中实现的环境report.cls
。以下是您必须添加到序言中的内容(\mybibindent
根据需要更改 的值):
\newlength\mybibindent
\setlength\mybibindent{1in}
\makeatletter
\renewenvironment{thebibliography}[1]
{\chapter*{\bibname}%
\@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}%
\list{\@biblabel{\@arabic\c@enumiv}}%
{\settowidth\labelwidth{\@biblabel{#1}}%
\leftmargin\labelwidth
\advance\leftmargin\dimexpr\labelsep+\mybibindent\relax\itemindent-\mybibindent% new
\@openbib@code
\usecounter{enumiv}%
\let\p@enumiv\@empty
\renewcommand\theenumiv{\@arabic\c@enumiv}}%
\sloppy
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m}
{\def\@noitemerr
{\@latex@warning{Empty `thebibliography' environment}}%
\endlist}
\makeatother