Seite 1 von 1

Verweis Endnote falsches Layout

Verfasst: Mo 30. Mär 2020, 15:00
von LaLaText
Hallo liebe Community,

ich bin dabei eine Arbeit zu schreiben, der vollständige Kopf meines Dokumentes mit Beispielsatz sieht folgendermaßen aus:

Code: Alles auswählen

\documentclass[12pt,a4paper, twoside]{article}
\usepackage[left=2.5cm,right=2.5cm,top=2.5cm,bottom=2.5cm]{geometry}
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage[utf8]{inputenc}
\usepackage{tocstyle}
\renewcommand{\thesection}{\arabic{section}.}
\renewcommand{\thesubsection}{\thesection\arabic{subsection}.}
\renewcommand{\thesubsubsection}{\thesubsection\arabic{subsubsection}.}
\newtocstyle[KOMAlike][leaders]{alldotted}{}
\usetocstyle{alldotted}
\usepackage{fancyhdr}
\pagestyle{fancy}
	\fancyhead{}
	\fancyhead [LE] {\nouppercase{\slshape \large \leftmark}} 
	\fancyhead [RO] {\nouppercase{\slshape \large \leftmark}}
	\fancyfoot{}
	\fancyfoot [LE, RO]{\thepage} 
	\usepackage[labelfont={bf,sf},font={small}, labelsep=period]{caption}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{textgreek}
\usepackage{textcomp}
\usepackage{longtable} 
\usepackage[british]{babel}
\usepackage{graphicx}
\usepackage{float}
\usepackage[super, comma, numbers, square, sort]{natbib}	
\usepackage{acronym}
\usepackage[onehalfspacing]{setspace}
\usepackage{chngcntr}
\counterwithin{figure}{section}
\counterwithin{table}{section}
\counterwithin{equation}{section}
\renewcommand{\thefigure}{\thesection\arabic{figure}}
\renewcommand{\thetable}{\thesection\arabic{table}}
\renewcommand{\theequation}{\thesection\arabic{equation}}
\usepackage[T1]{fontenc}
\usepackage{fp} 
\usepackage{tikz}
\usepackage{xcolor}
 \usepackage{paralist}
 \usepackage{subcaption}
\usepackage{hyperref} 
\usepackage{natbib}
\setcounter{tocdepth}{4}
\bibliographystyle{achemso}


\begin{document}
	Dies ist mein Text. \cite{Mes08}
	
\newpage
\bibliography{PhD_Endnote_Library}
\end{document}
Nun ist die Vorgabe, dass zusätzlich die Seite der Literatur im Verweis genannt wird, auf die sich "Dies ist mein Text" bezieht. Es sollte daher nach "Dies ist mein Text" hochgestellt [1, p. 329] erscheinen.

Dazu habe ich gefunden, dass man

Code: Alles auswählen

\usepackage{natbib}
\cite{Mes08}
ändern soll zu

Code: Alles auswählen

\usepackage[numbers,square]{natbib}
\cite[p. 329]{Mes08}
Leider funktioniert das bei mir nicht, da dann nur hochgestellt [1] erscheint und dahinter (nicht mehr in der eckigen Klammer und auch nicht hochgestellt) p.329 steht. Könnt ihr mir helfen, den Fehler in meinem Code zu finden?
Danke schon mal im Voraus!

Verfasst: Mo 30. Mär 2020, 15:59
von Gast
Zu deinem eigentlichen Problem kann ich leider nichts beitragen, da ich wie hier im Forum empfohlen biblatex verwende. Aber: tocstyle ist veraltet, warnt selbst vor seiner Verwendung und wird angeblich demnächst verschwinden. inputenc braucht man wohl auch nicht mehr, scheint aber auch weiterhin kein Problem zu sein. chngcntr ist wohl auch überflüssig, jedenfalls deute ich den Hinweis in der log-Datei so und in der Tat funktioniert es auch ohne. natbib lädst du mehrfach. Vielleicht ist das dein Problem. Irgendwo habe ich auch gelesen, dass es ein Problem geben kann, wenn man xcolor nach tikz lädt, weil es schon von tikz geladen wird. Auf jeden Fall soll man hyperref nach natbib laden. Wie das ist, wenn man natbib zweimal lädt, weiß ich nicht.

Verfasst: Mo 30. Mär 2020, 16:31
von LaLaText
Du hast recht, danke, ich habe das untere \usepackage{natbib} rausgenommen. Das hat aber nichts an dem Verweis geändert.

Wenn ich statt \usepackage[super, comma, numbers, square, sort]{natbib} nur \usepackage[numbers,square]{natbib} verwende, steht zwar [1, p. 329] da, aber leider nicht hochgestellt. \usepackage[super,numbers, square]{natbib} funktioniert leider auch nicht.
Weiß jemand, wie ich hochgestellt [1, p. 329] erzeugen kann?

Verfasst: Mi 1. Apr 2020, 13:19
von Gast
Normalerweise macht natbib das Hochstellen mit:

Code: Alles auswählen

\newcommand\NAT@citesuper[3]{\ifNAT@swa
\if*#2*\else#2\NAT@spacechar\fi
\unskip\kern\p@\textsuperscript{\NAT@@open#1\NAT@@close}%
   \if*#3*\else\NAT@spacechar#3\fi\else #1\fi\endgroup}
es ist also gewollt, dass die Seitenzahlen nicht mit hochgestellt werden. Ohne, dass ich jetzt tief in den Code hinein schauen will – wie gesagt verwende ich aus gutem Grund lieber biblatex – würde ich darauf tippen, dass etwas wie

Code: Alles auswählen

\makeatletter
\renewcommand\NAT@citesuper[3]{\ifNAT@swa
\if*#2*\else#2\NAT@spacechar\fi
\unskip\kern\p@\textsuperscript{\NAT@@open#1%
   \if*#3*\else\NAT@cmt#3\fi\else #1\fi\NAT@@close}\endgroup}
\makeatother
nach dem Laden von natbib das Problem lösen könnte. Ob das \NAT@cmt an der Stelle korrekt ist, weiß ich nicht sicher. Wirklich testen kann ich nicht, weil dein Code zum Testen nicht ausreicht. Die bib-Datei fehlt schlicht. Minimaler könnte er auch sein. Bitte beachte künftig die Minimalbeispiel- Anleitung etwas besser. Ich lasse die Frage deshalb auch noch offen.

Verfasst: Mi 1. Apr 2020, 15:25
von LaLaText
Der Vorschlag hat funktioniert, danke!