Numerierung, chapter-Nr. soll entfallen, section-Nr. bleiben

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


KalleLx
Forum-Anfänger
Forum-Anfänger
Beiträge: 17
Registriert: Mo 3. Jan 2011, 18:43

Numerierung, chapter-Nr. soll entfallen, section-Nr. bleiben

Beitrag von KalleLx »

Hallo!

Ich möchte gern eine section oder subsection nutzen, bei der ausschließlich die zugegörige Nummer, und nicht die Nummer der übergeordneten Überschriften (also z.B. des chapters) dargestellt werden. Außerdem soll es möglich sein, dies nur in einem bestimmten Bereich des Dokumentes vorzusehen.

Hintergrund zur Erklärung ist folgender:
Ich möchte ein Dokument mit einer Reihe ausführlicher Beispiele erstellen. Diese sollen in umrahmt werden. Das habe ich halbwegs mit einer \fbox{\parbox}-Konstruktion hinbekommen. Das Dokument verfügt über eine eigene Nummerierungsstruktur. Innerhalb dieser Beispiele soll nun eine eigene Numerierung, sozusagen eine Unterstruktur, eingebettet werden, damit das Beispiel systematsch abgearbeitet werden kann. Ursprünglich hatte ich mit folgender Konstruktion gearbeitet:


\newcounter{Numerierung}
\setcounter{Numerierung}{\thesection}
\setcounter{section}{0}
Beispiel 1
\fbox{\parbox{\textwidth}{
%
\section{Aufgabe}
\section{Lösung}
\section{Ergebnis}
%
}}


Das funktionierte, solange vorher nur die oberste Überschrift, hier also section (z.B. bei scrartcl, nicht scrbook) vorgegeben war. Bei 1.1. Thema xy wird ja als Wrt "1.1" zurückgegeben und das Ganze funktioniert nicht mehr.

Ich hoffe mir kann jemand helfen. Bin auch für ganz neue Lösungsvorschläge offen

Als Hinweis, falls das relevant wird: Arbeite mit Xetex (zwingend)

Vielen Dank

Xenara
Forum-Meister
Forum-Meister
Beiträge: 682
Registriert: Mi 25. Nov 2009, 09:41

Beitrag von Xenara »

Hier ein Vorschlag mit einem etwas anderen Ansatz, bei dem man nicht am originalen section-Zähler drehen muss:
\documentclass{scrreprt} 
\usepackage[ngerman]{babel} 
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}	

\usepackage{blindtext} 
\usepackage{theorem}
\usepackage{titlesec}
\usepackage{framed}
\usepackage{xcolor}

%-----------
% Theorem-Umgebung "beispiel"
\theoremstyle{break}
\theoremheaderfont{\scshape\bfseries\large}
\newtheorem{beispiel}{Beispiel}
\theorempreskipamount0pt
\theorempostskipamount0pt
%-----------

%-----------
% Neue Überschrift "\example"
\titleclass{\example}{straight}[\chapter]
\newcounter{example}
\titleformat{\example}[hang]{\vspace{2ex}\rmfamily\bfseries\itshape}{\theexample}{.5em}{}
\titlespacing{\example}{0pt}{0cm}{1ex}% Titlespacing-Wert nach der Überschrift wird wegen Minipage ignoriert!!!
%-----------

%-----------
% Neue Umgebung "meinbeispiel"
\newenvironment{meinbeispiel}%
{%
	\setcounter{example}{0}% Zähler innerhalb der Umgebung auf 0 stellen!
	\colorlet{shadecolor}{gray!25}% Farbe der shaded-Box
	\begin{shaded}%
		\begin{beispiel}%
			\begin{minipage}[t]{\textwidth}%
				\vspace*{-2ex}% Abstände ausgleichen
}{%
			\end{minipage}%
		\end{beispiel}%
	\end{shaded}%
}
%-----------

\begin{document}

\chapter{Chapter}

\section{Section}
Ein bisschen Text.

\begin{meinbeispiel}
		\example{Aufgabe}
			Machen Sie das.
			
			\example{Lösung} 
			So gehts.
			
			\example{Ergebnis} 
			Das hätten Sie rausbekommen sollen.
			
			Noch etwas erklärenden Text.
\end{meinbeispiel}

\section{Section}
Ein bisschen Text, gefolgt von noch einem Beispiel.

\begin{meinbeispiel}
		\example{Aufgabe}
			Machen Sie das.
			
			\example{Lösung} 
			So gehts.
			
			\example{Ergebnis} 
			Das hätten Sie rausbekommen sollen.
			
			Noch etwas erklärenden Text.
\end{meinbeispiel}

\end{document}
Habs allerdings nur mit pdflatex getestet.

KalleLx
Forum-Anfänger
Forum-Anfänger
Beiträge: 17
Registriert: Mo 3. Jan 2011, 18:43

Beitrag von KalleLx »

Das funtioniert wunderbar, auch mit XeTeX. Vielen Dank erst mal dafür - das bringt mich schon ein ganzes Stück weiter!


Habe eben noch ein bißchen gebastelt, um innerhalb des Beispiels eine tiefergehende Numerierung zu erhalten, also z.B. 1.1 Aufgabenteil 1 und 1.2 Aufgabenzteil 2. Habe es aber auf die Schnelle nicht hinbekommen. Was ich in der Kürze der Zeit (viel steht mir im Augenblick leider nicht zur Verfügung) im Netz zum Thema \titleclass fand, erschloß sich mir diesbezüglich noch nicht.

Falls jemand die Geduld hat, mir die Recherchearbeit dazu abzunehmen oder es so weiß und mir sagt, würde ich mich sehr freuen. Ansonsten beschäftige ich mich damit tiefergehend, wenn ich mehr Zeit habe. So geht es erst mal!

Xenara
Forum-Meister
Forum-Meister
Beiträge: 682
Registriert: Mi 25. Nov 2009, 09:41

Beitrag von Xenara »

Ich kanns leider grad nicht testen, aber eine "subexample"-Überschrift müsste praktisch gleich gehen wie die "\example"-Überschrift, nur, dass der Counter der neuen Unterüberschrift auf dem Zähler "example" basiert.
Mit genau der gleichen Formatierung wie \example könnte es so gehen:
\titleclass{\subexample}{straight}[\example] 
\newcounter{subexample}[example]% Hier das optionale Argument von newcounter nutzen!
\titleformat{\subexample}[hang]{\vspace{2ex}\rmfamily\bfseries\itshape}{\theexample.\thesubexample}{.5em}{}% Hier beim Counter den vorhergehenden Counter von \example, \theexample noch dazuschreiben. Sollte dann "1.1" ausgeben.
\titlespacing{\subexample}{0pt}{0cm}{1ex}

Antworten