Hallo,

ich hatte in einer anderen Frage zusätzliche Informationen zu subsections in den \tableofcontens einfügen wollen. Dafür hat saputello eine sehr gute Lösung gefunden.

Nun würde ich diese Zusatzinfo auch gerne zusätzlich (bzw. anstatt im TOC) im Header anfügen. Ich verwende AnnArbor.

Meine Idee war, in der Kopfzeile hinter \insertsubsectionhead einfach den von saputello definierten Befehl \additionalinfoof{\thesection.\thesubsection} einzufügen. Leider funktioniert dies nicht. Hat jemand eine Idee, wie ich die Zusatzinfo in die Kopfzeile, hinter den Namen der subsection bekomme?

Open in Online-Editor
\documentclass[12pt]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{refcount}% Wenn man die auskommentierte Zeile mit \getrefnumber verwenden will.

\usetheme{AnnArbor}

\makeatletter
\newcommand*{\additionalinfoof}[1]{%
  \expandafter\ifx\csname additionalinfo@#1\endcsname\relax\else
    \expandafter\ifx\csname additionalinfo@#1\endcsname\@empty\else
      : \@nameuse{additionalinfo@#1}%
  \fi\fi
}
\newcommand*{\additionalinfo}[2][\thesection.\thesubsection]{%
  \@namedef{additionalinfo@#1}{#2}%
}
\makeatother

\usepackage{xpatch}
\makeatletter
\xpatchcmd\beamer@subsectionintoc{#3}{#3\additionalinfoof{#1.#2}}{}{\FailED}
\makeatother

\setbeamertemplate{headline}% Definition aus beamerouterthemeinfolines.sty geändert
{
  \leavevmode%
  \hbox{%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.65ex,dp=1.5ex,right]{section in head/foot}%
    \usebeamerfont{section in head/foot}\insertsectionhead\hspace*{2ex}
  \end{beamercolorbox}%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.65ex,dp=1.5ex,left]{subsection in head/foot}%
    \usebeamerfont{subsection in head/foot}\hspace*{2ex}\insertsubsectionhead\additionalinfoof{\thesection.\thesubsection}
  \end{beamercolorbox}}%
  \vskip0pt%
}

\begin{document}

\section{Thema A}

\begin{frame}
  \frametitle{Gesamtübersicht zum Thema A}
  \tableofcontents
\end{frame}

\subsection{Unterthema 1}
\begin{frame}
  \frametitle{Übersicht zu Unterthema 1}
  \additionalinfo{siehe Buch S. 8 und Paper XYZ}
  \tableofcontents[subsectionstyle=show/shaded]
\end{frame}
\begin{frame}
  \frametitle{Inhalt1}
  Inhalt1
\end{frame}
\begin{frame}
  \frametitle{Inhalt2}
  Inhalt2
\end{frame}

\subsection{Unterthema 2}
\begin{frame}
  \frametitle{Übersicht zu Unterthema 2}
  \additionalinfo{siehe Buch S. 95ff}
  \tableofcontents[subsectionstyle=show/shaded]
\end{frame}
\begin{frame}
  \frametitle{Inhalt1}
  Inhalt1
\end{frame}
\begin{frame}
  \frametitle{Inhalt2}
  Inhalt2
\end{frame}

\end{document}

gefragt 01 Sep '15, 08:28

tom75's gravatar image

tom75
1.9k1445
Akzeptiert: 83%

bearbeitet 06 Feb, 14:48


Man muss das additionalinfo-Feld global definieren, also

Open in Online-Editor
\newcommand*{\additionalinfo}[2][\thesection.\thesubsection]{%
  \global\@namedef{additionalinfo@#1}{#2}%
}

Dann funktioniert es ohne weiteres zutun.

Open in Online-Editor
\documentclass[12pt]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{refcount}% Wenn man die auskommentierte Zeile mit \getrefnumber verwenden will.

\usetheme{AnnArbor}

\makeatletter
\newcommand*{\additionalinfoof}[1]{%
  \expandafter\ifx\csname additionalinfo@#1\endcsname\relax\else
    \expandafter\ifx\csname additionalinfo@#1\endcsname\@empty\else
      : \@nameuse{additionalinfo@#1}%
  \fi\fi
}
\newcommand*{\additionalinfo}[2][\thesection.\thesubsection]{%
  \global\@namedef{additionalinfo@#1}{#2}%
}
\makeatother

\usepackage{xpatch}
\makeatletter
\xpatchcmd\beamer@subsectionintoc{#3}{#3\additionalinfoof{#1.#2}}{}{\FailED}
\makeatother

\setbeamertemplate{headline}% Definition aus beamerouterthemeinfolines.sty geändert
{
  \leavevmode%
  \hbox{%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.65ex,dp=1.5ex,right]{section in head/foot}%
    \usebeamerfont{section in head/foot}\insertsectionhead\hspace*{2ex}
  \end{beamercolorbox}%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.65ex,dp=1.5ex,left]{subsection in head/foot}%
    \usebeamerfont{subsection in head/foot}\hspace*{2ex}\insertsubsectionhead\additionalinfoof{\thesection.\thesubsection}
  \end{beamercolorbox}}%
  \vskip0pt%
}

\begin{document}

\section{Thema A}

\begin{frame}
  \frametitle{Gesamtübersicht zum Thema A}
  \tableofcontents
\end{frame}

\subsection{Unterthema 1}
\begin{frame}
  \frametitle{Übersicht zu Unterthema 1}
  \additionalinfo{siehe Buch S. 8 und Paper XYZ}
  \tableofcontents[subsectionstyle=show/shaded]
\end{frame}
\begin{frame}
  \frametitle{Inhalt1}
  Inhalt1
\end{frame}
\begin{frame}
  \frametitle{Inhalt2}
  Inhalt2
\end{frame}

\subsection{Unterthema 2}
\begin{frame}
  \frametitle{Übersicht zu Unterthema 2}
  \additionalinfo{siehe Buch S. 95ff}
  \tableofcontents[subsectionstyle=show/shaded]
\end{frame}
\begin{frame}
  \frametitle{Inhalt1}
  Inhalt1
\end{frame}
\begin{frame}
  \frametitle{Inhalt2}
  Inhalt2
\end{frame}

\end{document}

alt text

Permanenter link

beantwortet 09 Jul, 05:53

Henri's gravatar image

Henri
10.0k31730

@Henri Vielen Dank für die Lösung!

(13 Sep, 06:27) tom75
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×94
×4

Frage gestellt: 01 Sep '15, 08:28

Frage wurde angeschaut: 1,062 Mal

Zuletzt aktualisiert: 13 Sep, 06:27