Seite 1 von 1

Inhaltsverzeichnis, Überschriften und chem. Formeln

Verfasst: Fr 29. Jan 2016, 08:39
von tm16
Hallo,

ich bin gerade am Schreiben meiner Dissertation und habe ein problem mit dem Inhaltsverzeichnis. Da die Überschriften auch chemische Formeln enthalten, die zum Teil sehr lang sind, sieht das Inhaltsverzeichnis dementsprechend bescheiden aus...
Wie kann ich im Inhaltsverzeichnis einen Umbruch erzwingen, der aber nicht bei den eigentlichen Kapitel- und Abschnittsüberschriften erscheint? Am gezeigten Bsp wäre das vor der Formel.

Ich habe mir auch überlegt, ob ich das ganze nicht mit einem Alternativtext im Inhaltsverzeichnis, also \section[Alternativtext]{langer Text} machen soll, das ganze funktioniert allerdings nicht (vllt. wegen hyperref?)
\documentclass[11pt,DIV10,a4paper,headings=normal,parskip=half+,oneside,listof=totoc,bibliography=totocnumbered]{scrreprt}
\usepackage{lmodern}
\usepackage{chemmacros}
\usepackage{amsmath}
\usepackage{chemgreek}
\usepackage{chemformula}
\usepackage{chemnum}
\usepackage[ngerman]{babel}
\usepackage{textcomp}           
\usepackage[T1]{fontenc}  
\usepackage[utf8]{inputenc}   
\usepackage[unicode=true,pdfusetitle,
 bookmarks=true,bookmarksnumbered=false,bookmarksopen=false,
 breaklinks=true,pdfborder={0 0 1},backref=false,colorlinks=true,linkcolor=black,filecolor=black,citecolor=black,urlcolor=black]
 {hyperref}

\setcounter{secnumdepth}{4}  
\setcounter{tocdepth}{4}    

\begin{document}

\tableofcontents

\newpage

\chapter{Kapitel 1}
\section{Die Synthese der Verbindung XYZ}
\section{Methode 1}
\subsubsection{%
\texorpdfstring{Die ultraplasmathermische Untersuchung von \ch{[XY(dpp)3(BH4)]I4} (\cmpd{[XY(dpp)3(BH4)]I4})}
{% 
Die ultraplasmathermische Untersuchung von XY
}%
}

\end{document}
Bin dankbar für jeden Lösungsvorschlag oder Hinweise auf Fehler meinerseits.

Verfasst: Fr 29. Jan 2016, 10:08
von Noch so einer
Dein Beispiel funktioniert mit aktuellen TeX Live leider nicht. Ich vermute in der Implementierung von \cmpd eine Inkompatibilität mit aktuellem LaTeX3. Ohne diese Anweisung funktioniert jedoch das optionale Argument von \subsubsection sehr wohl:
\documentclass[11pt,DIV10,a4paper,headings=normal,parskip=half+,oneside,listof=totoc,bibliography=totocnumbered]{scrreprt}
\usepackage{lmodern}
\usepackage{chemmacros}
\usepackage{amsmath}
\usepackage{chemgreek}
\usepackage{chemformula}
\usepackage{chemnum}
\usepackage[ngerman]{babel}
\usepackage{textcomp}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[unicode=true,pdfusetitle,
bookmarks=true,bookmarksnumbered=false,bookmarksopen=false,
breaklinks=true,pdfborder={0 0 1},backref=false,colorlinks=true,linkcolor=black,filecolor=black,citecolor=black,urlcolor=black]
{hyperref}

\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{4}

\begin{document}

\tableofcontents

\chapter{Kapitel 1}
\section{Die Synthese der Verbindung XYZ}
\section{Methode 1}
\subsubsection[Die ultraplasmathermische Untersuchung von XY]{%
\texorpdfstring{Die ultraplasmathermische Untersuchung von \ch{[XY(dpp)3(BH4)]I4}}
{%
Die ultraplasmathermische Untersuchung von XY
}%
}

\subsubsection[Die ultraplasmathermische Untersuchung von\protect\\\ch{[XY(dpp)3(BH4)]I4}]{%
\texorpdfstring{Die ultraplasmathermische Untersuchung von \ch{[XY(dpp)3(BH4)]I4}}
{%
Die ultraplasmathermische Untersuchung von XY
}%
}
\end{document}

Verfasst: Fr 29. Jan 2016, 10:46
von tm16
Danke. Das Beispiel läuft auch bei mir durch.
Setze ich \cmpd mit in den Alternativtext kommt zwar der übliche "token not allowed in a pdf string", das lässt sich jedoch duch \texorpdfstring im [Alternativtext] ebenfalls beheben.

Problem gelöst. Nochmals danke

Verfasst: Fr 29. Jan 2016, 13:16
von Besserwisser
Mit Package: expl3 2016/01/03 v6358 L3 programming layer (loader) ging es noch. Mit Package: expl3 2016/01/19 v6377 L3 programming layer (loader) gibt es dagegen die Fehlermeldung:
! Undefined control sequence.
\chemnum_expandable_get_compound_property:nn ...n 
                                                  {g__chemnum_compound_#1_pr...

Verfasst: Fr 29. Jan 2016, 13:30
von Noch so einer
Clemens scheint gerade dabei zu sein, entsprechende Updates für seine Pakete zu erstellen. Für exsheets gibt es bereits ein Update auf CTAN:
Announcement text:
----------------------------------------------------------------------
Fix missed adaption to change expl3 code (\prop_get:Nn => \prop_item:Nn)
----------------------------------------------------------------------
Wer nicht warten kann, kann sich mit:
\ExplSyntaxOn
\let \prop_get:cn \prop_item:cn
\ExplSyntaxOff
in der Dokumentpräambel behelfen.