Ich kriege die Fehlermeldung Open in Online-Editor
! Missing \endcsname inserted. <to be read again> \unhbox l.3 \newlabel{fig:Möglichkeiten}{{1}{1}} in diesem Dokument: Open in Online-Editor
\documentclass{article} \usepackage[utf8]{inputenc} \begin{document} \begin{figure} \centering (Bild) \caption{Darstellung der Möglichkeiten} \label{fig:Möglichkeiten} \end{figure} In Abbildung \ref{fig:Möglichkeiten} können wir sehen, dass \ldots \end{document} Wenn ich die Zeile mit Was ist hier der Fehler? |
Allgemein sind mit dem Paket Letztlich erinnert der Fehler wieder einmal daran, dass man als Labelargument eben nicht beliebige Zeichen verwenden kann. Du solltest Dich sprachunabhängig auf Buchstaben und Ziffern beschränken. Bereits Zeichen wie Erst mit Verzicht auf Es gibt allerdings auch mit Open in Online-Editor
\documentclass{article} \usepackage[utf8]{inputenc} \newcommand*{\dlabel}[1]{\label{\detokenize{\detokenize{#1}}}} \makeatletter \newcommand*{\dref}{\@ifstar {\@dref*}{\@dref{}}} \newcommand*{\@dref}[2]{\ref#1{\detokenize{#2}}} \newcommand*{\dpageref}{\@ifstar {\@dpageref*}{\@dpageref{}}} \newcommand*{\@dpageref}[2]{\pageref#1{\detokenize{#2}}} \newcommand*{\dautoref}{\@ifstar {\@dautoref*}{\@dautoref{}}} \newcommand*{\@dautoref}[2]{\autoref#1{\detokenize{#2}}} \makeatother \usepackage{hyperref} \begin{document} \begin{figure} \centering (Bild) \caption{Darstellung der Möglichkeiten} \dlabel{fig:Möglichkeiten} \end{figure} In Abbildung \dref{fig:Möglichkeiten} können wir sehen, dass \ldots In Abbildung \dref*{fig:Möglichkeiten} können wir sehen, dass \ldots In \dautoref{fig:Möglichkeiten} können wir sehen, dass \ldots \end{document} Man kann allerdings innerhalb der neuen Befehle dann keine Makros verwenden, die expandiert werden sollten, beispielweise etwas wie Open in Online-Editor
\documentclass{article} \usepackage[utf8]{inputenc} \newcommand*{\dlabel}[1]{\label{\detokenize{\detokenize{#1}}}} \makeatletter \newcommand*{\dref}{\@ifstar {\@dref*}{\@dref{}}} \newcommand*{\@dref}[2]{\ref#1{\detokenize{#2}}} \newcommand*{\dpageref}{\@ifstar {\@dpageref*}{\@dpageref{}}} \newcommand*{\@dpageref}[2]{\pageref#1{\detokenize{#2}}} \newcommand*{\dautoref}{\@ifstar {\@dautoref*}{\@dautoref{}}} \newcommand*{\@dautoref}[2]{\autoref#1{\detokenize{#2}}} \makeatother \newcommand*{\figlabelprefix}{fig:} \usepackage{hyperref} \begin{document} \begin{figure} \centering (Bild) \caption{Darstellung der Möglichkeiten} \dlabel{\figlabelprefix:Möglichkeiten}% Geht in die Hose. \end{figure} In Abbildung \dref{fig:Möglichkeiten} können wir sehen, dass \ldots In Abbildung \dref*{fig:Möglichkeiten} können wir sehen, dass \ldots In \dautoref{\figlabelprefix:Möglichkeiten} können wir sehen, dass \ldots \end{document} beantwortet 06 Aug '13, 16:40 saputello |
@saputello hat ja schon geklärt, dass Umlaute mit Als Beispiel soll Unicode-Eingabekodierung dienen: pdfTeX hat keine Ahnung von Unicode! Für TeX ist 1 Byte ein Zeichen als Input. Unicode-Zeichen sind aber Multibyte-Zeichen aus einem bis vier Bytes. Wenn man Ein ASCII-Zeichen benötigt lediglich ein Byte, bei diesen ist für TeX dann auch alles klar. Der Binärcode dieser Zeichen hat die Form Für TeX sind diese zwei Bytes jetzt aber zwei Zeichen mit den Hexadezimal-Codes
XeTeX und LuaTeX lesen Zeichen bis 32 Bit und übersetzen sie zum entprechenden Unicode Code Point, was effektiv bedeutet, dass sie hier tatsächlich als ein Zeichen von TeX wahrgenommen werden. Diese Antwort ist von JLDiaz' Post stark inspiriert. beantwortet 06 Aug '13, 17:47 cgnieder Wobei das Problem nicht auf
(06 Aug '13, 18:54)
saputello
Stimmt. Vielleicht kann hier
(06 Aug '13, 18:55)
cgnieder
|
Mit
pdflatex
undinputenc
sind Umlaute keine Buchstaben sondern sehen nur so aus wie welche. Eigentlich sind sie Makros. Verwende\label{fig:Moeglichkeiten}
. Oder verwende XeLaTeX bzw LuaLaTeX, die echten Unicode Input verarbeiten können (dann ohneinputenc
).Der gleiche Fehler tritt übrigens auch auf, wenn man Umgebungen wie
center
mit backslash wie Kommandos schreibt:\begin{\center}
ruft das hervor. Nur falls jemand sowas hat und mit google hierauf stößt.