Konflikt in ntheorem mit thref und todonotes

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Konflikt in ntheorem mit thref und todonotes

Konflikt in ntheorem mit thref und todonotes

von Caldo » Sa 21. Jun 2014, 20:27

Hallo,
ich habe ein sehr sehr spezielles Problem und versucht aus dem riesigem TeX-File alle unnötigen Zeilen zu löschen für ein schönes Minibeispiel.

Die Sache ist folgende: Ich nutze das Paket ntheorem. Und das ist auch gut. Weiter nutze ich zum Referenzieren auf meine Sätze und Lemmata etc. den Befehl \thref. Das hat den Vorteil, dass automatisch auch der Umgebungsname mit eingefügt wird.
Weiter mache ich folgendes: In jeder Umgebung (zB. in einem Lemma) wird per Paket "todonotes" eine Randnotiz gemacht, in der ein Counter-Wert geschrieben wird. Ich könnte erklären wieso ich das mache aber der Text wäre länger als der gesamte Post bisher... Und mit dem Problem hat es ja nichts zu tun.

Das Problem ist nun folgendes (Beispiel wie im Minibeispiel):
Habe ich 2 Lemmata und verweise im zweiten via \thref auf das erste, dann erzeugt TeX doch nur die Referenz "0.1" statt "Lemma 0.1".
Dieser Fehler kommt irgendwie wegen der Randnotiz, denn lasse ich diese nicht erzeugen (einfach im Minibeispiel die eine Zeile mit einkommentieren), so läuft alles einwandfrei und Tex erzeugt "Lemma 0.1"...

Könnt ihr mir irgendwie helfen. Ich verstehe nicht, was da schief gehen kann...

Minibeispiel:
\documentclass{scrartcl}

\usepackage{todonotes}
\usepackage{hyperref}
\usepackage{amsmath}
\usepackage[hyperref,thref,thmmarks,amsmath]{ntheorem}

\newcounter{myCounter}

\makeatletter
\renewtheoremstyle{plain}%
{\item[\hskip\labelsep \theorem@headerfont ##1\ ##2\!\! \theorem@separator]\stepcounter{myCounter}\label{my\arabic{myCounter}}\dhsafnum}%
{\item[\hskip\labelsep \theorem@headerfont ##1\ ##2\ \normalfont{(##3)}\bfseries\theorem@separator]}
\makeatother

\newtheorem{lemma}{Lemma}[section]
\newcommand{\note}[1]{\todo[noline]{#1}}
\newcommand\dhsafnum{\note{\arabic{section}.\arabic{myCounter}}}

%%  Das hier einkommentieren, dann funktioniert alles:
%\let\dhsafnum=\empty

\begin{document}
	\begin{lemma}
		Testdefinition.
	\end{lemma}
	
	\begin{lemma}
		Wie in \thref{my1} gesehen gilt...
	\end{lemma}
\end{document}
[/code]

Nach oben