![使用 multibib 删除 ClassicThesis 中的参考书目标题缩进](https://linux22.com/image/256493/%E4%BD%BF%E7%94%A8%20multibib%20%E5%88%A0%E9%99%A4%20ClassicThesis%20%E4%B8%AD%E7%9A%84%E5%8F%82%E8%80%83%E4%B9%A6%E7%9B%AE%E6%A0%87%E9%A2%98%E7%BC%A9%E8%BF%9B.png)
我使用该multibib
包来管理采用该样式的文档中的多个参考书目classicthesis
。我想删除每个参考书目标题前自动放置的缩进,以便标题与参考文献列表对齐。
知道我该怎么做吗?下面是MWE
:
\documentclass[ twoside,openright,titlepage,numbers=noenddot,headinclude,
footinclude=true,cleardoublepage=empty,%
BCOR=5mm,paper=a4,fontsize=11pt,%
ngerman,american,%
]{scrreprt}
\input{classicthesis-config}
\usepackage{lipsum}
\usepackage[labeled,resetlabels]{multibib}
\newcites{B}{Books}
\newcites{J}{Journals}
\newcites{S}{Standards}
\begin{document}
\selectlanguage{american}
\pagenumbering{roman}
\pagestyle{plain}
\pdfbookmark[1]{Publications}{Publications}
\chapter*{Publications}
\bigskip
\noindent
\begingroup
\renewcommand*{\chapter}[2]{\spacedlowsmallcaps{\bibname}}
\nociteJ{Akyildiz2002}
\bibliographystyleJ{IEEEtran}
\bibliographyJ{IEEEabrv,Bibliography}
\bigskip
\nociteB{Gibson96}
\bibliographystyleB{IEEEtran}
\bibliographyB{IEEEabrv,Bibliography}
\bigskip
\nociteS{IEEESTD1588}
\bibliographystyleS{IEEEtran}
\bibliographyS{IEEEabrv,Bibliography}
\endgroup
\pagestyle{scrheadings}
\cleardoublepage
\pagenumbering{arabic}
\chapter{Some Stuff}
\lipsum[1-2]
\section{Section}
\lipsum[3-4]
\chapter{Some Other Stuff}
\label{ch:introduction}
\lipsum[4-10]
\section{Section}
\lipsum[3-4]
\subsection{Subsection}
\lipsum[33]
\cleardoublepage
\manualmark
\markboth{\spacedlowsmallcaps{\bibname}}{\spacedlowsmallcaps{\bibname}}
\refstepcounter{dummy}
\addtocontents{toc}{\protect\vspace{\beforebibskip}}
\addcontentsline{toc}{chapter}{\tocEntry{\bibname}}
\bibliographystyle{IEEEtran}
\label{app:bibliography}
\nocite{Akyildiz2002,Bulusu2000,Krach2008,Kwak2010}
\bibliography{Bibliography}
\end{document}
Bibliography.bib
用于测试上述 MWE 的文件包含以下记录:
% This file was created with JabRef 2.8.1.
% Encoding: UTF8
@ARTICLE{Akyildiz2002,
author = {Akyildiz, I. F. and Weilian Su and Sankarasubramaniam, Y. and Cayirci,
E.},
title = {{A} {S}urvey on {S}ensor {N}etworks},
journal = IEEE_M_COM,
year = {2002},
volume = {40},
pages = {102--114},
number = {8},
month = aug,
doi = {10.1109/MCOM.2002.1024422},
issn = {0163-6804},
keywords = { protocols, radio networks, sensors CSMA, carrier sense multiple access,
data processing, health, home applications, hybrid TDMA/FDMA-Based,
low-cost sensor networks, military applications, multifunctional
sensor nodes, protocol stack layer, research, sensor networks, wireless
communications, wireless electronics},
timestamp = {2012.10.05}
}
@ARTICLE{Bulusu2000,
author = {Bulusu, N. and Heidemann, J. and Estrin, D.},
title = {{GPS}-less {L}ow-{C}ost {O}utdoor {L}ocalization for {V}ery {S}mall
{D}evices},
journal = IEEE_M_PCOM,
year = {2000},
volume = {7},
pages = {28--34},
number = {5},
month = oct,
doi = {10.1109/98.878533},
issn = {1070-9916},
keywords = {geophysical equipment, geophysical techniques, microsensors, radio
direction-finding, radio networksGPS-less low-cost outdoor localization,
RF communications, connectivity metric method, cost, environmental
monitoring, experimental results, form factor, localization techniques,
microsensors, network nodes, periodic beacon signals transmission,
power constraints, separation distance, soil monitoring, transmission
range, very small devices, water monitoring, wireless networks, wireless
sensor nodes},
timestamp = {2012.10.05}
}
@ARTICLE{Dardari2009,
author = {Dardari, D. and Conti, A. and Ferner, U. and Giorgetti, A. and Win,
M. Z.},
title = {{R}anging {W}ith {U}ltrawide {B}andwidth {S}ignals in {M}ultipath
{E}nvironments},
journal = IEEE_J_PROC,
year = {2009},
volume = {97},
pages = {404--426},
number = {2},
month = feb,
doi = {10.1109/JPROC.2008.2008846},
issn = {0018-9219},
timestamp = {2012.10.05}
}
@BOOK{Gibson96,
title = {{T}he {M}obile {C}ommunication {H}andbook},
publisher = {CRC Press},
year = {1996},
author = {Gibson, J. D.},
address = {New York},
edition = {1st},
month = feb,
timestamp = {2012.10.05}
}
@INPROCEEDINGS{Krach2008,
author = {Krach, B. and Robertson, P.},
title = {{I}ntegration of {F}oot-mounted {I}nertial {S}ensors into a {B}ayesian
{L}ocation {E}stimation {F}ramework},
booktitle = {{P}roc.\ 5th {W}orkshop on {P}ositioning, {N}avigation and {C}ommunication
({WPNC} 2008)},
year = {2008},
pages = {55--61},
address = {Hannover, Germany},
month = mar,
timestamp = {2012.10.05}
}
@INPROCEEDINGS{Kwak2010,
author = {Myungkyun Kwak and Jongwha Chong},
title = {{A} new {D}ouble {T}wo-{W}ay {R}anging {A}lgorithm for {R}anging
{S}ystem},
booktitle = {{P}roc.\ 2nd {IEEE} {I}nternational {C}onference on {N}etwork {I}nfrastructure
and {D}igital {C}ontent ({IC}-{NIDC} 2010)},
year = {2010},
pages = {470--473},
address = {Beijing, China},
month = sep,
timestamp = {2012.10.05}
}
@BOOK{Rappaport1996,
title = {{W}ireless {C}ommunications -- {P}rinciples and {P}ractice},
publisher = {Prentice Hall PTR},
year = {2001},
author = {Rappaport, T. S.},
address = {Upper Saddle River, NJ},
edition = {2nd},
month = dec,
timestamp = {2012.10.05}
}
@STANDARD{IEEESTD1588,
title = {{IEEE} {S}tandard for a {P}recision {C}lock {S}ynchronization {P}rotocol
for {N}etworked {M}easurement and {C}ontrol {S}ystems},
organization = {IEEE},
institution = {IEEE},
month = jul,
year = {2008},
__markedentry = {[paolo:]},
doi = {10.1109/IEEESTD.2008.4579760},
journal = {{IEEE} {S}tandard 1588-2008 ({R}evision of {IEEE} {S}tandard 1588-2002)},
pages = {1--269},
timestamp = {2012.10.05}
}
答案1
文件multibib.sty
称在某个时候
\renewenvironment{thebibliography}[1]{%
\bibsection\parindent \z@\bibpreamble\bibfont\list
因此在使用\parindent
后设置为零\bibsection
,这会产生不想要的缩进(我不确定这个决定是故意的还是一个错误)。要消除缩进,必须更改
\bibsection\parindent \z@
到
\parindent \z@\bibsection
下面是一个说明如何执行此操作的示例:
\documentclass[ twoside,openright,titlepage,numbers=noenddot,headinclude,
footinclude=true,cleardoublepage=empty,%
BCOR=5mm,paper=a4,fontsize=11pt,%
ngerman,american,%
]{scrreprt}
\input{classicthesis-config}
\usepackage{lipsum}
\usepackage[labeled,resetlabels]{multibib}
\newcites{B}{Books}
\newcites{J}{Journals}
\newcites{S}{Standards}
\makeatletter
\AtBeginDocument{%
\@ifpackageloaded{suthesis}%
{\def\thebibliography#1{%
\newpage
\addcontentsline{toc}{chapter}{\bibname}%
\@ldthebibliography{#1}}}%
{}%
\@ifpackageloaded{natbib}%
{%
\renewenvironment{thebibliography}[1]{%
\parindent \z@\bibsection\bibpreamble\bibfont\list
{\@biblabel{\arabic{NAT@ctr}}}{\@bibsetup{#1}%
\usecounter{NAT@ctr}}% %% only changed here to usecounter
\ifNAT@openbib
\renewcommand\newblock{\par}
\else
\renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%
\fi
\sloppy\clubpenalty4000\widowpenalty4000
\sfcode`\.=1000\relax
\let\citeN\cite \let\shortcite\cite
\let\citeasnoun\cite
}{\def\@noitemerr{%
\PackageWarning{natbib}
{Empty `thebibliography' environment}}%
\endlist\vskip-\lastskip}
\let\std@thebibliography\thebibliography
\def\thebibliography#1{%
\@isnumber{#1}%
{\ifnum\mb@biblabelwidth=0
\@tempcnta\c@NAT@ctr %% changed here to c@NAT@ctr
\ifcontinuouslabels
\advance\@tempcnta#1%
\fi
\std@thebibliography{\@arabic\@tempcnta}%
\else
\std@thebibliography{\@arabic\mb@biblabelwidth}%
\global\mb@biblabelwidth 0
\fi}%
{\std@thebibliography{#1}}%
}%
}%
{% else, natbib not loaded
\let\std@thebibliography\thebibliography
\def\thebibliography#1{%
\@isnumber{#1}%
{\ifnum\mb@biblabelwidth=0
\@tempcnta\c@enumiv
\ifcontinuouslabels
\advance\@tempcnta#1%
\fi
\std@thebibliography{\@arabic\@tempcnta}%
\else
\std@thebibliography{\@arabic\mb@biblabelwidth}%
\global\mb@biblabelwidth 0
\fi}%
{\std@thebibliography{#1}}%
}%
}%
}
\makeatother
\begin{document}
\selectlanguage{american}
\pagenumbering{roman}
\pagestyle{plain}
\pdfbookmark[1]{Publications}{Publications}
\chapter*{Publications}
\bigskip
\noindent
\begingroup
\renewcommand*{\chapter}[2]{\spacedlowsmallcaps{\bibname}}
\nociteJ{Akyildiz2002}
\bibliographystyleJ{IEEEtran}
\bibliographyJ{IEEEabrv,Bibliography}
\bigskip
\nociteB{Gibson96}
\bibliographystyleB{IEEEtran}
\bibliographyB{IEEEabrv,Bibliography}
\bigskip
\nociteS{IEEESTD1588}
\bibliographystyleS{IEEEtran}
\bibliographyS{IEEEabrv,Bibliography}
\endgroup
\pagestyle{scrheadings}
\cleardoublepage
\pagenumbering{arabic}
\chapter{Some Stuff}
\lipsum[1-2]
\section{Section}
\lipsum[3-4]
\chapter{Some Other Stuff}
\label{ch:introduction}
\lipsum[4-10]
\section{Section}
\lipsum[3-4]
\subsection{Subsection}
\lipsum[33]
\cleardoublepage
\manualmark
\markboth{\spacedlowsmallcaps{\bibname}}{\spacedlowsmallcaps{\bibname}}
\refstepcounter{dummy}
\addtocontents{toc}{\protect\vspace{\beforebibskip}}
\addcontentsline{toc}{chapter}{\tocEntry{\bibname}}
\bibliographystyle{IEEEtran}
\label{app:bibliography}
\nocite{Akyildiz2002,Bulusu2000,Krach2008,Kwak2010}
\bibliography{Bibliography}
\end{document}