在 Beamer-Presentation 中,我使用 Bibentry 打印选定的文章等。
我有一个问题:每个书目条目的标题都显示为超级引用,之后有一个中断。
我怎样才能关闭它?
以下是代码:
\documentclass[10pt,a4paper]{beamer}
\ProcessOptionsBeamer
\mode<presentation>
\usepackage{natbib}
\usepackage{bibentry}
\usepackage{filecontents}
\begin{filecontents}{pwaLiterature.bib}
@incollection{Garner2009,
Address = {Oxford and New York, NY},
Author = {Garner, Robert},
Booktitle = {Introduction to Politics},
Date-Added = {2014-10-06 07:40:47 +0000},
Date-Modified = {2014-10-06 07:42:45 +0000},
Editor = {Garner, Robert and Ferdinand, Peter and Lawson, Stephanie},
Pages = {1-21},
Publisher = {Oxford University Press},
Title = {Introduction: The Nature of Politics and Political Analysis},
Year = {2009}}
\end{filecontents}
\begin{document}
\nobibliography*
\frame{\frametitle{}
\begin{tabular}{p{.15\textwidth} p{.85\textwidth}}
& \hangindent=0.5cm \bibentry{Garner2009}.\\
\end{tabular}
}
\bibliographystyle{apalike2}
\nobibliography{pwaLiterature}
\end{document}
答案1
正如 Mike Renfro 已经提到的,该问题与引用样式有关,在本例中是 apalike2。
“incollection”的功能如下:
FUNCTION {incollection}
{ output.bibitem
format.authors "author" output.check
author format.key output % special for
output.year.check % apalike
new.block
format.title "title" output.check
new.block
crossref missing$
{ eho.format.in.ed.booktitle "booktitle" output.check
% The above line is changed by Eric Ho <eho@word> on Fri Jan 12
% 19:20:28 1990 so that it'll call eho.format.in.ed.booktitle instead
% of format.in.ed.booktitle.
format.bvolume output
format.number.series output
format.chapter.pages eho.special.output
new.sentence
% publisher "publisher" output.check
% address output
% switched order of publisher and address for incollection -- BJR 1/3/90
address eho.output % Use eho.output instead of output.
publisher "publisher" eho.output.check % Use eho.output.check instead
% of output.check.
format.edition output
}
{ format.incoll.inproc.crossref output.nonnull
format.chapter.pages output
}
if$
new.block
note output
fin.entry
}
这个名为 new.block 的函数一定是负责中断的函数:
FUNCTION {new.block}
{ output.state before.all =
'skip$
{ after.block 'output.state := }
if$
}
通过删除它,我得到了正确的输出。
但是为什么该问题(没有修改apalike2)只出现在beamer类中,而不会出现在article类中呢?
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{lmodern}
\usepackage{natbib}
\usepackage{bibentry}
\usepackage{filecontents}
\begin{filecontents}{pwaLiterature.bib}
@incollection{Garner2009,
Address = {Oxford and New York, NY},
Author = {Garner, Robert},
Booktitle = {Introduction to Politics},
Date-Added = {2014-10-06 07:40:47 +0000},
Date-Modified = {2014-10-06 07:42:45 +0000},
Editor = {Garner, Robert and Ferdinand, Peter and Lawson, Stephanie},
Pages = {1-21},
Publisher = {Oxford University Press},
Title = {Introduction: The Nature of Politics and Political Analysis},
Year = {2009}}
\end{filecontents}
\begin{document}
\nobibliography*
\begin{tabular}{p{.15\textwidth} p{.85\textwidth}}
& \hangindent=0.5cm \bibentry{Garner2009}.\\
\end{tabular}
\bibliographystyle{apalike2}
\nobibliography{pwaLiterature}
\end{document}
答案2
尝试评论new.block
:
FUNCTION {incollection}
{ output.bibitem
format.authors "author" output.check
author format.key output % special for
output.year.check % apalike
%new.block<-----------commented!!!!!!
format.title "title" output.check
new.block
crossref missing$....