Nummerierte Sätze/Definitionen im Inhaltsverzeichnis Thema ist als GELÖST markiert

Schriftbild, Absätze und Auflistungen einstellen


fefi725

Nummerierte Sätze/Definitionen im Inhaltsverzeichnis

Beitrag von fefi725 »

Hi,
ich habe ein Problem mit dem folgenden Code:
Im Prinzip bin ich mit der Nummerierung schon ganz zufrieden. Nur würde ich gerne die blöden Klammern im Inhaltsverzeichnis weghaben bei den Definitionen, die keinen Namen haben. Und wie kann ich es realisieren, dass zB eine Bemerkung, die nummeriert ist nicht im Inhaltsverzeichnis auftaucht?
Kann man irgendwie auch Nummer und Bezeichnung im Inhaltsverzeichnis tauschen? Also Definition 1.1 anstatt 1.1 Definition?

Danke schon mal!
\documentclass[11pt,a4paper,openany,oneside]{scrbook}
\usepackage{ngerman}
\usepackage{textcomp}
\usepackage{latexsym}
\usepackage[latin9]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}

\newtheoremstyle{dotless}{}{}{\itshape}{}{\bfseries}{}{ }{}
\theoremstyle{dotless}

\newtheorem{thm}{Proposition}[chapter]
\newtheorem{defi}[thm]{Definition}
\newtheorem{sat}[thm]{Satz}
\newtheorem{bem}[thm]{Bemerkung}
\newtheorem*{bemo}{Bemerkung}
\newtheorem{lem}[thm]{Lemma}

\let\amsthmhead\thmhead
\let\amsswappedhead\swappedhead
\makeatletter
\renewcommand*\thmhead[3]{\amsthmhead{#1}{#2}{#3}
\@ifnotempty{#2}{\addcontentsline{toc}{section}{#2 #1 (#3)}}{}}
\renewcommand*\swappedhead[3]{\amsswappedhead{#1}{#2}{#3}
\@ifnotempty{#2}{\addcontentsline{toc}{section}{#2 #1 (#3)}}{}}
\makeatother

\begin{document}
\tableofcontents
\chapter{Erstes Kapitel}
Erstes Kapitel...

\begin{defi}[Körper]
Es sei $K$ eine Menge...
\end{defi}

\begin{bem}
Eine Bemerkung
\end{bem}

\begin{defi}
Eine namenlose Definition...
\end{defi}

\begin{bemo}
Eine Bemerkung ohne Nummer.
\end{bemo}

\begin{lem}
Lemma mit Nummer und im Inhaltsverzeichnis.
\end{lem}
\end{document}

rais
Forum-Guru
Forum-Guru
Beiträge: 413
Registriert: Di 21. Sep 2010, 00:37

Re: Nummerierte Sätze/Definitionen im Inhaltsverzeichnis

Beitrag von rais »

Hallo,
fefi725 hat geschrieben:Nur würde ich gerne die blöden Klammern im Inhaltsverzeichnis weghaben bei den Definitionen, die keinen Namen haben.
dann musst Du in Deiner \thmhead-Definition erst schauen, ob ein Name vergeben wurde (s.u. \ifx\relax#3\relax: ist #3 leer, wird \relax mit \relax verglichen (wahr))
fefi725 hat geschrieben: Und wie kann ich es realisieren, dass zB eine Bemerkung, die nummeriert ist nicht im Inhaltsverzeichnis auftaucht?
Dazu müsstest Du Deiner \thmhead-Definition beibringen, auch noch auf `Bemerkung' zu testen (s.u. \ifx\thmtxta\thmtxtb)
fefi725 hat geschrieben: Kann man irgendwie auch Nummer und Bezeichnung im Inhaltsverzeichnis tauschen? Also Definition 1.1 anstatt 1.1 Definition?
Dazu hättest Du nur bei den \addcontentsline... #1 mit #2 zu tauschen brauchen.
Hier mit angepasstem \thmhead (wann \swappedhead zum Einsatz kommt, hab ich nicht erkundet, aber wenn es zum Einsatz kommt, musst Du es wohl analog zu \thmhead adaptieren):
\documentclass[oneside]{scrbook}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsthm}

\newtheoremstyle{dotless}{}{}{\itshape}{}{\bfseries}{}{ }{}
\theoremstyle{dotless}

\newtheorem{thm}{Proposition}[chapter]
\newtheorem{defi}[thm]{Definition}
\newtheorem{sat}[thm]{Satz}
\newtheorem{bem}[thm]{Bemerkung}
\newtheorem*{bemo}{Bemerkung}
\newtheorem{lem}[thm]{Lemma}

\let\amsthmhead\thmhead
\let\amsswappedhead\swappedhead
\newcommand*\thmtxta{}
\newcommand*\thmtxtb{}
\makeatletter
\renewcommand*\thmhead[3]{%
  \amsthmhead{#1}{#2}{#3}
  \edef\thmtxta{Bemerkung}%
  \edef\thmtxtb{#1}%
  \@ifnotempty{#2}{%
    \ifx\thmtxta\thmtxtb
      \typeout{#1 #2 aus TOC ferngehalten...}%
    \else
      \ifx\relax#3\relax
        \addcontentsline{toc}{section}{#1 #2}%
      \else
        \addcontentsline{toc}{section}{#1 #2 (#3)}%
      \fi
    \fi
  }{}%
}
\renewcommand*\swappedhead[3]{\amsswappedhead{#1}{#2}{#3}
\@ifnotempty{#2}{\addcontentsline{toc}{section}{#2 #1 (#3)}}{}}
\makeatother

\begin{document}
\tableofcontents
\chapter{Erstes Kapitel}
Erstes Kapitel...

\begin{defi}[Körper]
Es sei $K$ eine Menge...
\end{defi}

\begin{bem}
Eine Bemerkung
\end{bem}

\begin{defi}
Eine namenlose Definition...
\end{defi}

\begin{bemo}
Eine Bemerkung ohne Nummer.
\end{bemo}

\begin{lem}
Lemma mit Nummer und im Inhaltsverzeichnis.
\end{lem}
\end{document}
MfG
Rainer
One of the joys of travel is visiting new towns and meeting new people---G.Khan (Robert Asprin, Another Fine Myth)

fefi725

Beitrag von fefi725 »

Vielen Dank, genau was ich gesucht habe!

Antworten