Ich habe Schwierigkeiten herauszufinden, wo das Problem mit meinem Code/Workflow liegt. Ich habe diese Frage bereits zuvor gestelltHier, aber dann kam das gleiche Problem sofort wieder. Wenn ich es in tex ausführe, erhalte ich die Fehlermeldung „Eingabelimit überschritten“. Das genaue Protokoll ist unten eingefügt:
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (MiKTeX 2.9.6210 64-bit) (preloaded format=pdflatex 2017.1.26) 26 JAN 2017 20:45
entering extended mode
**./master.tex
(master.tex
LaTeX2e <2016/03/31> patch level 3
Babel <3.9r> and hyphenation patterns for 75 language(s) loaded.
("C:\Program Files\MiKTeX 2.9\tex\latex\base\article.cls"
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
("C:\Program Files\MiKTeX 2.9\tex\latex\base\size11.clo"
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option)
)
\c@part=\count79
\c@section=\count80
\c@subsection=\count81
\c@subsubsection=\count82
\c@paragraph=\count83
\c@subparagraph=\count84
\c@figure=\count85
\c@table=\count86
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
)
("C:\Program Files\MiKTeX 2.9\tex\latex\apacite\apacite.sty"
Package: apacite 2013/07/21 v6.03 APA citation
\c@BibCnt=\count87
\bibleftmargin=\skip43
\bibindent=\skip44
\bibparsep=\skip45
\bibitemsep=\skip46
\biblabelsep=\skip47
)
No file master.aux.
\openout1 = `master.aux'.
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 5.
LaTeX Font Info: ... okay on input line 5.
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 5.
LaTeX Font Info: ... okay on input line 5.
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 5.
LaTeX Font Info: ... okay on input line 5.
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 5.
LaTeX Font Info: ... okay on input line 5.
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 5.
LaTeX Font Info: ... okay on input line 5.
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 5.
LaTeX Font Info: ... okay on input line 5.
\c@maskedRefs=\count88
("C:\Program Files\MiKTeX 2.9\tex\latex\apacite\english.apc"
File: english.apc 2013/07/21 v6.03 apacite language file
LaTeX Info: Redefining \BPBI on input line 129.
LaTeX Info: Redefining \BHBI on input line 130.
)
! TeX capacity exceeded, sorry [input stack size=5000].
\AtBeginDocument #1->#1
l.5 \begin{document}
If you really absolutely need more capacity,
you can ask a wizard to enlarge me.
Here is how much of TeX's memory you used:
641 strings out of 493333
7639 string characters out of 3139188
74825 words of memory out of 3000000
4254 multiletter control sequences out of 15000+200000
3940 words of font info for 15 fonts, out of 3000000 for 9000
1141 hyphenation exceptions out of 8191
5000i,0n,4998p,136b,36s stack positions out of 5000i,500n,10000p,200000b,50000s
! ==> Fatal error occurred, no output PDF file produced!
Ich habe diese Frage bereits gepostet und dachte, ich hätte sie gelöst, aber jetzt habe ich wieder das gleiche Problem.
Der Latex-Code, den ich auszuführen versuche, ist unten:
\documentclass[11pt,twoside]{article}
\usepackage{apacite}
\nocite{*}
\begin{document}
% title page. Edit as needed for future publications.
\title{Research Proposal}
\author{Teererai Marange \\
Department of Computer Science \\
University of Auckland\\
\texttt{[email protected]}}
\date{January 26, 2017}
\maketitle
% end title page.
% abstract goes here
\newpage
\begin{abstract}
Abstract goes here
\end{abstract}
\newpage
% table of contents
\tableofcontents
\newpage
%begin introduction
\section {Introduction}
Lorem Ipsum Doremifaso
%\cite{Nedakeyword} use to cite
%references our biliography. This must go whereever we use our bibtex references
\bibliography{references}
\bibliographystyle{apacite}
\end{document}
und die Bib-Datei, die ich zum Erstellen der Bibliographie verwende, ist unten:
@misc{wikipedia1,
title = "Scripting language",
author = "Wikipedia",
url = {http://en.wikipedia.org/wiki/Scripting_language},
year = 2014,
}
Antwort1
Sie erhalten den Fehler mit nur
\documentclass[11pt,twoside]{article}
\usepackage{apacite}
\nocite{*}
\begin{document}
\end{document}
bewegen keine zitieren vermeidet es
\documentclass[11pt,twoside]{article}
\usepackage{apacite}
\begin{document}
\nocite{*}
\end{document}
Antwort2
Mit der Standardkonfiguration würde \nocite{*}
„before“ \begin{document}
einen Fehler auslösen. Der apacite
Stil wird \nocite
so geändert, dass es auch in der Präambel verwendet werden kann (was nicht unvernünftig ist), verwendet dafür jedoch den falschen Test.
\nocite
Tatsächlich prüft der Code für, ob \document
gleichwertig zu geworden ist \@onlypreamble
, was bedeutet, dass das Dokument gestartet wurde, und in diesem Fall führt es die normale Arbeit aus; andernfalls gibt es aus \AtBeginDocument{\nocite{...}}
(das Argument ist das gleiche wie das von \nocite
. Wenn jedoch die Token für \AtBeginDocument
ausgeführt werden, \document
ist noch nicht gleichwertig zu geworden \@preamble
. Das bedeutet, dass \nocite{*}
ausgeführt wird \AtBeginDocument{\nocite{*}}
, was … Endlosschleife, weil in diesem Moment so \AtBeginDocument
definiert ist, dass es einfach sein Argument liefert.
\AtBeginDocument
Eine Lösung für den Code kann darin bestehen , ihn nur auszuführen, wenn \AtBeginDocument
nicht gleichwertig mit geworden ist \@firstofone
.
\begin{filecontents*}{\jobname.bib}
@misc{wikipedia1,
title = "Scripting language",
author = "Wikipedia",
url = {http://en.wikipedia.org/wiki/Scripting_language},
year = 2014,
}
\end{filecontents*}
\documentclass[11pt,twoside]{article}
\usepackage{apacite}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\nocite}
{\AtBeginDocument{\nocite{#1}}}
{\ifx\AtBeginDocument\@firstofone\else\AtBeginDocument{\nocite{#1}}\fi}
{}{}
\makeatother
\nocite{*}
\begin{document}
% title page. Edit as needed for future publications.
\title{Research Proposal}
\author{Teererai Marange \\
Department of Computer Science \\
University of Auckland\\
\texttt{[email protected]}}
\date{January 26, 2017}
\maketitle
% end title page.
% abstract goes here
\newpage
\begin{abstract}
Abstract goes here
\end{abstract}
\newpage
% table of contents
\tableofcontents
\newpage
%begin introduction
\section {Introduction}
Lorem Ipsum Doremifaso
%\cite{Nedakeyword} use to cite
%references our biliography. This must go whereever we use our bibtex references
\bibliography{\jobname}
\bibliographystyle{apacite}
\end{document}
Natürlich ist es einfacher, \nocite{*}
nach zu wechseln \begin{document}
. Dies kann jedoch möglicherweise im Code für behoben werden apacite
.
Beachten Sie, dass dieser Patch nicht funktioniert, wenn multibbl
geladen wird. In diesem Fall wäre es viel komplexer, da die Neudefinition \nocite
am Anfang des Dokuments erfolgt.
Ich habe dem Betreuer von einen Fehlerbericht übermittelt apacite.sty
.