Hyperref Nummerierung im Anhang erzeugt referenzkonflikt

Schriftbild, Absätze und Auflistungen einstellen


chrisgreeen
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: So 27. Dez 2015, 22:26

Hyperref Nummerierung im Anhang erzeugt referenzkonflikt

Beitrag von chrisgreeen »

Heyhey Leute,

ich hab eine Problem mit meiner Nummerierung.
Ich habe mir eigentlich bisher alles immer selber versucht zu schreiben. Allerdings murkst man dann irgendwann und deswegen brauche ich (leider :lol: ) eure Hilfe.

Also ich schreibe gerade eine Arbeit in der ich in meinem Anhang die gleichen Nummerierungen wie im Bericht haben will. Dazu habe ich auch ein Beispielprogramm geschrieben, das ihr einfach verwendet könnt. Das Problem sind die hyperrefs.
Die richtige Nummerierung kann man ja ganz einfach erzeugen, in dem man sich eben die counters richtig setzt. Natürlich ist das nicht schön, aber ich müsste das nur 2mal machen. Aber wie ihr sehr funktioniert dann hyperref nicht mehr, weil es nicht in Anhang springt sondern zu meinem zugehörigen Satz im Hauptartikel.

Kann man das Problem mit der Nummerierung schöner lösen, ohne das man ein Konflikt mit Hyperref erzeugt?

\documentclass{scrartcl}
%\documentclass[12pt,a4paper]{report}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage[ngerman]{babel}
%\usepackage[latin1]{inputenc}
\usepackage[utf8]{inputenc} 
\usepackage{scrpage2}
\pagestyle{scrheadings} 
\usepackage{stmaryrd}
\usepackage{graphicx} 
\usepackage{color}
\usepackage{caption3} 
\DeclareCaptionOption{parskip}[]{}
\usepackage[small]{caption}
\usepackage{endnotes} %notes
\usepackage{dsfont} %Nötig?
\usepackage{framed}%für framed
\usepackage{xcolor}	%für framed
\usepackage{mdframed} %für framed
\usepackage{hyperref} 
 
\mathchardef\ordinarycolon\mathcode`\:
\mathcode`\:=\string"8000
\begingroup \catcode`\:=\active
  \gdef:{\mathrel{\mathop\ordinarycolon}}
\endgroup 
 
 \newtheoremstyle{theorstyle}		%Style defnieren
{0mm}
{0mm}
{}
{}
{\bfseries}
{\normalfont :}
{ }
{}
 
 
\theoremstyle{theorstyle}
\newtheorem{def1}{{\large Definition}}[subsection]
\newtheorem{sat1}[def1]{{\large Satz}}

\newcommand{\defgl}{\mathrel{\mathop:}=}
\definecolor{shadecolor}{RGB}{224,224,224}


\begin{document}
Dies ist ein Beispiel.
\section{Kapitel 1}

\begin{shaded*}
\begin{sat1}[] \label{Satz1} ~\\
Dies ist ein Satz mit einem Label und einem Text. .....
\end{sat1}
\end{shaded*}
\noindent
\textbf{Beweis:} 
\\
\hyperref[Anh:Satz1]{im Anhang. so funktioniert es, Satz hat aber die falsche Nummer}
\\
\hyperref[Anh:Satz1:richtigeNummer]{im Anhang. richtie Nummer aber funktioniert nicht}
\section{Kapitel 2}
123
\section{Kapitel 3}
123
\section{Anhang}

\begin{shaded*}
\begin{sat1}[hier steht die falsche Nummer (4.0.2 statt 1.0.1)] \label{Anh:Satz1} ~\\
Dies ist ein Satz mit einem Label und einem Text. ..... allerdings befinden wir uns jetzt im Anhang
\end{sat1}
\end{shaded*}

\setcounter{section}{1}
\setcounter{def1}{0}
\begin{shaded*}
\begin{sat1}[hier steht die richtige Nummer, hyperref springt aber zum vorherigen Satz] \label{Anh:Satz1:richtigeNummer} ~\\
Dies ist ein Satz mit einem Label und einem Text. ..... allerdings befinden wir uns jetzt im Anhang
\end{sat1}
\end{shaded*}

\end{document}

Vielen Dank
Chrisgreeen


P.s. lasst euch bitte nicht von meinen ganzen packages stören :)

DADABBI

Beitrag von DADABBI »

Gib dem Anhang einen vernünftigen Namen, also einen, der eine Bezug zum Inhalt hat. Setze davor ein \appendix. Lass das wenig sinnvolle \setcounter{section}{1} weg.

Räum außerdem deine Dokumentpräambel auf. Du hast das veraltete Pakete wie scrpage2 oder caption3 (das außerdem laut [d]caption[/d]-Anleitung eigentlich nur die Standardklassen unterstützte) und wenig sinnvolle Paketkombinationen wie sowohl framed als auch mdframed.

Überlege die außerdem Konzepte für die Nummerierung, die auch dem Leser dienen. Jedenfalls wäre die Nummer 1.0.1 in einem Abschnitt, der die Nummer 4 trägt, kaum nachvollziehbar. Ebenso, wenn es diese Nummer gleich zweimal gibt. Wie soll der Leser dann wisse, welches 1.0.1 das richtige ist. Teil der schlechten Idee ist vermutlich schon, die Sätze/Definitionen in Abhängigkeit der Unterabschnitte statt nur der Abschnitte zu nummerieren.

Das Problem mit hyperref ist hier also ein gutes Indiz für ein tiefer gehendes, weil auch den Leser betreffendes, konzeptionelles Problem.

chrisgreeen
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: So 27. Dez 2015, 22:26

Beitrag von chrisgreeen »

Warum sollte ich die packages scrpage2 oder caption3 ersetzten?
Also das ist eine ernsthafte Frage.
Es funktioniert ja so, was erhalte ich für einen Vorteil?
Genauso welcher Vorteil bringt es mir den Anhang über \appendix zu erzeugen?


Zudem finde ich auch, dass es sehr wohl sinn macht, dass die Sätze im Hauptteil und im Anhang die gleiche Nummern haben, wenn ich den Beweis in den Anhang verlagere. Daher finde ich nicht dass hier ein konzeptionelles Problem vorliegt.


Trotzdem danke schonmal für deine Hilfe

chrisgreeen
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: So 27. Dez 2015, 22:26

Beitrag von chrisgreeen »

Anyway fixed it. Empfehle ich aber keinem.
Habe praktisch einfach eine neue Definition mit neuem Counter gemacht und somit das gewünschte Ergebnis erzeugt. In meinem Fall reicht das jedoch vollkommen aus.

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4267
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »


Antworten