PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Optionen für Definition anpassen



Janus
03-12-2013, 14:19
Hallo,

ich versuche gerade eine Umgebung für Definitionen anzupassen. Ich verwende das thmbox-Paket. Ich hätte gerne, dass über der Definition "Definition: Begriff" in fett steht ohne Nummerierung. Teilweise wurde ich im Netz fündig. Ich krieg es nur nicht hin, dass der zu definierende Begriff ebenfalls in fett und ohne Klammern da steht. Meine aktuelle Version:


\documentclass[11pt,ngerman,a4paper,]{report}
\usepackage[ngerman]{babel}
\usepackage{thmbox}
\newtheorem[S, bodystyle=\normalfont\noindent]{defi}{Definition:}
\renewcommand{\thedefi}{\hspace{-0.5em}}
\begin{document}
\begin{defi}[Begriff]
blablabla
\end{defi}
\end{document}

Setze ich titlestyle=\bfseries mit zu den Optionen wird der Begriff gar nicht mehr angezeigt...
Kann ich eigentlich auch irgendwie in \newtheorem festlegen, dass vor und hinter der Umgebung immer ein bestimmter Abstand zum restlichen Text besteht?

LG

esdd
03-12-2013, 16:12
Wenn die Änderungen für alle Theoremumgebungen gelten sollen, dann kannst du die Einstellungen einfach mit \thmboxoptions vornehmen:


\documentclass[11pt,ngerman,a4paper]{report}
\usepackage{babel}
\usepackage{thmbox}

\thmboxoptions{headstyle=\bfseries\boldmath#1~,tit lestyle=\bfseries\boldmath#1}
\newtheorem[S,bodystyle=\normalfont\noindent]{defi}{Definition:}

\begin{document}
\begin{defi}[Begriff]
blablabla
\end{defi}
\end{document}

Laut Doku müsste man die Optionen headstyle und titlestyle mit samt der jeweiligen Argumente (#1 bzw. bei headstyle noch #2 für die Nummer) auch im ersten optionalen Argument bei der Theormdefinition verwenden können, so dass die Anpassungen nur für die defi-Umgebung gelten. Das liefert zwar das gewünschte Ergebnis, bringt aber trotzdem eine Fehlermeldung des Paketes.

Mit dem folgenden Code kann man aber die Anpassungen auch ohne Fehlermeldungen nur für defi vornehmen:


\documentclass[11pt,ngerman,a4paper]{report}
\usepackage{babel}
\usepackage{thmbox}
\usepackage{etoolbox}

\newtheorem[S,bodystyle=\normalfont\noindent]{defi}{Definition:}
\AtBeginEnvironment{defi}{%
\thmboxoptions{headstyle=\bfseries\boldmath#1~,tit lestyle= \bfseries\boldmath#1}}

\newtheorem[S]{satz}{Satz}

\begin{document}
\begin{defi}[Begriff]
blablabla
\end{defi}
\begin{satz}[Ein Satz]
blablabla
\end{satz}
\end{document}

Mit den \AtBeginEnvironment und \AfterEndEnvironment aus dem Paket etoolbox kannst du auch Abstände vor und nach defi einfügen:


\usepackage{thmbox}
\usepackage{etoolbox}
\newtheorem[S,bodystyle=\normalfont\noindent]{defi}{Definition:}
\AtBeginEnvironment{defi}{%
\thmboxoptions{headstyle=\bfseries\boldmath#1~,tit lestyle=\bfseries\boldmath#1}%
\par\vspace{\baselineskip}}
\AfterEndEnvironment{defi}{%
\par\vspace{\baselineskip}}

Gruß
Elke

Janus
03-12-2013, 16:44
Super, danke - jetzt kompiliert es und sieht aus wie gewünscht :). Hätte aber noch eine Frage, da ich es nur von Kommentaren kenne: Welche Funktion haben die Prozentzeichen am Ende mancher Zeilen?

LG

Janus
03-12-2013, 17:17
Sehe grade, dass jetzt der Text nach der Umgebung eingerückt wird. Mit \noindent wird es zwar weniger eingerückt, aber immernoch ein bißchen. Kann man das unterdrücken?

esdd
03-12-2013, 18:25
Zu den Prozentzeichen am Zeilenende findest du zum Beispiel unter diesem Link (http://www.komascript.de/signifikanteLeerzeichen) Infos.

Die Einrückung bekommst du weg, wenn das \par am Ende der Umgebung weggelassen wird. Nimm dann also besser nur:


\AfterEndEnvironment{defi}{\vspace{\baselineskip}}

Gruß
Elke

Janus
03-12-2013, 20:13
Super, klappt. Danke für Deine Hilfe und Erklärungen.

LG