Ich möchte meine alte LaTeX-Abschlussarbeit als PDF kompilieren. Der Text wurde 1999 erstellt (ich glaube, emTeX), als die Computer und die Tools noch etwas anders waren – lesen Sie ihn, ich kehre nach 14 Jahren zu LaTeX zurück; das ist lange genug, um alles zu vergessen :) Das Babel wurde damals für Tschechisch nicht verwendet.
Bisher habe ich (nach mehreren Versuchen/Fehlschlägen, dem Ausgraben der Informationen aus meinem Gedächtnis und etwas Suchen) die Quellen in UTF-8 konvertiert und die
\documentclass[a4paper,11pt]{report}
\usepackage{czech}
Zu
\documentclass[a4paper,11pt]{report}
\usepackage[czech]{babel}
\usepackage[utf8]{inputenc}
Beim Ausführen des Folgenden pdflatex --version
unter Windows 7
pdfTeX 3.1415926-2.5-1.40.14 (TeX Live 2013/W32TeX)
kpathsea version 6.1.1
Copyright 2013 Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
There is NO warranty. Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
Compiled with libpng 1.5.16; using libpng 1.5.16
Compiled with zlib 1.2.7; using zlib 1.2.7
Compiled with xpdf version 3.03
(und wenn ich bibtex für meine.aux-Datei ausführe und es mehrere Male erneut ausführe pdflatex pri98dis.tex
, wird mir immer noch das folgende Problem gemeldet:
) [141] (./pri98dis.aux (./dekuji.aux) (./abstrakt.aux)
! Missing \endcsname inserted.
<to be read again>
\unhbox
l.223 ...`\discretionary {-}{}{}step}{{3.1.5}{52}}
The control sequence marked <to be read again> should
not appear between \csname and \endcsname.
! Improper alphabetic constant.
<to be read again>
\discretionary
l.223 ...`\discretionary {-}{}{}step}{{3.1.5}{52}}
A one-character control sequence belongs after a ` mark.
So I'm essentially inserting \0 here.
! Extra \endcsname.
\@newl@bel ... \bbl@tempa \csname #1@#2\endcsname
\def \bbl@tempb {#3}\@safe...
l.223 ...`\discretionary {-}{}{}step}{{3.1.5}{52}}
I'm ignoring this, since I wasn't doing a \csname.
)
LaTeX Warning: There were undefined references.
LaTeX Warning: There were multiply-defined labels.
Dies [141]
ist die allerletzte Seite des Dokuments. (Beachten Sie das ! Missing \endcsname inserted.
und später das ! Extra \endcsname.
)
In pri98dis.aux
(gehört zum Hauptdokument) sehen die Zeilen 222 und 223 folgendermaßen aus:
\@writefile{toc}{\contentsline {paragraph}{Krok modelov\IeC {\'e}ho \IeC {\v c}asu.}{52}}
\newlabel{time\unhbox \voidb@x \kern \z@ \char `\discretionary {-}{}{}step}{{3.1.5}{52}}
Es scheint, dass es zum folgenden Teil der Quelle gehört:
\paragraph{Krok modelového času.}
... text of one paragraph...
\begin{verbatim}
in('EvQue', 'head', ?head_time); { 1 }
in('EvQue', 'list', head_time, ?next_time); { 2 }
out('EvQue', 'head', next_time); { 3 }
\end{verbatim}
\label{time-step}
Es scheint, dass das Problem irgendwie durch das verursacht wird \label{time-step}
.
Wie kann ich das Problem beheben?
(Danke und ein frohes neues Jahr und alle Tage danach.)
Antwort1
Dies wird höchstwahrscheinlich dadurch verursacht, dass ein Paket (Kurzform der Babel-Sprache?) -
als aktiv definiert wird und dann versucht, es „wie gewohnt“ zu verhalten, indem es als
\leavevmode\char`\-
Ich bekomme fast den gleichen Fehler (etwas anderer Kontext, aber der gleiche
time\unhbox \voidb@x \char `\discretionary {-}{}{}step
aus den folgenden:
\documentclass{article}
\catcode`\-\active
\def-{\leavevmode\char`\-}
\begin{document}
aa \section{zzz\label{time-step}} aa
zzz\ref{time-step}
\end{document}
Wenn Sie die Makros nicht ändern möchten, können Sie den Fehler einfach vermeiden, indem Sie -
die Argumente „label“, „ref“ und „cite“ nicht verwenden.