PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : subsubsection umdefinieren



chiefrosi
15-04-2009, 11:29
Hallo,

für ein Paper das ich gerade schreibe ist es vorgeschrieben, dass eine subsubsection folgendermaßen auszusehen hat: Schriftgröße wie der normale text (10 pt), fett, mit einem Punkt beendet und vor allem soll der Text danach in derselben Ziele weitergehen, also z. B.

1.1.1 Überschrift. Und jetzt geht der Text weiter

In dem mitgelieferten Stylefile ist das leider nicht definiert (keine Ahnung warum). Kann mir jemand sagen, wie ich die subsubsection so umdefinieren kann, dass obiges Format eingehalten wird?

Danke,
Tobias

mechanicus
15-04-2009, 11:32
Hallo,

das hängt von deiner Dokumentenklasse ab.

Gruß
Marco

chiefrosi
15-04-2009, 11:40
Also das ist für den header vorgeschrieben


\documentclass[10pt,times,twocolumn, a4paper]{article}
\usepackage{latex8}

wobei in latex8.sty hauptsächlich Abstände definiert werden. Da werden auch die Überschriften neu definiert, allerdings eben nicht die subsubsection:


% correct heading spacing and type
\def\section{\@startsection {section}{1}{\z@}
{14pt plus 2pt minus 2pt}{14pt plus 2pt minus 2pt} {\large\bf}}
\def\subsection{\@startsection {subsection}{2}{\z@}
{13pt plus 2pt minus 2pt}{13pt plus 2pt minus 2pt} {\elvbf}}

mechanicus
15-04-2009, 12:11
Hallo,


\documentclass[12pt,ngerman]{article}
\usepackage{babel}
\usepackage{blindtext}
\usepackage{ifthen}
\makeatletter
\renewcommand\subsubsection{\@startsection{subsubs ection}{3}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{-1em}%
{\normalfont\normalsize\bfseries}}

\let\Subsubsection=\subsubsection
\renewcommand{\subsubsection}[2][]{%
\ifthenelse{\equal{#1}{}}{%
\Subsubsection[#2]{#2.}}{%
\Subsubsection[#1]{#2.}}
}
\makeatother
\begin{document}
\tableofcontents
\section{foo}
\subsection{foobar}
\subsubsection[foo]{foobarfoo}
\blindtext
\subsubsection{foobarfoo}
\blindtext
\end{document}

Gruß
Marco

PS:
Sieht jemand, warum ich mich gerade hier verrenne:

\ifx #1\@empty
\Subsubsection[#2]{#2.}
\else
\Subsubsection[#1]{#2.}
\fi

chiefrosi
15-04-2009, 13:29
Super! Danke!

mechanicus
15-04-2009, 14:04
Sieht jemand, warum ich mich gerade hier verrenne:

\ifx #1\@empty
\Subsubsection[#2]{#2.}
\else
\Subsubsection[#1]{#2.}
\fi
Wenn ich folgenden Code nutze, dann funktioniert es :confused:

\documentclass[12pt,ngerman]{article}
\usepackage{babel}
\usepackage{blindtext}
\makeatletter
\renewcommand\subsubsection{\@startsection{subsubs ection}{3}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{-1em}%
{\normalfont\normalsize\bfseries}}

\let\Subsubsection=\subsubsection
\renewcommand{\subsubsection}[2][]{%
\ifx \@empty#1\@empty
\Subsubsection[#2]{#2.}
\else
\Subsubsection[#1]{#2.}
\fi
}
\makeatother
\begin{document}
\tableofcontents
\section{foo}
\subsection{foobar}
\subsubsection[foo]{foobarfoo}
\blindtext
\subsubsection{foobarfoo}
\blindtext
\end{document}

Es bleibt die Frage, warum 2 \@empty?

Gruß
Marco

voss
15-04-2009, 14:15
Wenn ich folgenden Code nutze, dann funktioniert es :confused:


\let\Subsubsection=\subsubsection
\renewcommand{\subsubsection}[2][]{%
\ifx \@empty#1\@empty
\Subsubsection[#2]{#2.}
\else
\Subsubsection[#1]{#2.}
\fi
}
\makeatother




\renewcommand{\subsubsection}[2][]{%
\def\@temp{#1}
\ifx\@temp\@empty\Subsubsection[#2]{#2.}%
\else\Subsubsection[#1]{#2.}\fi}


Herbert

chiefrosi
15-04-2009, 14:57
Kann mir jemand sagen, wie man selber auf sowas kommt, gibts da ein schönes eBook? Ich bin eigentlich im Programmieren nicht ganz kenntnislos, aber ohne Anleitung hat man da ja keine Chance.

Gruß,
Tobias

Stefan_K
15-04-2009, 20:04
Hallo Tobias,

beispielsweise wird \ifx in TeX by Topic (http://www.eijkhout.net/tbt/) von Victor Eijkhout besprochen, in meiner Ausgabe in 13.2.3. Seite 125, samt einem Beispiel für die Anwendung zum String-Vergleich. Ein Beispiel in 11.9.1. Unknown number of arguments weist den Parameter #1 wie oben erst einem temporären Makro zu, bevor mit \ifx verglichen wird. Das Buch ist frei online als pdf erhältlich.

Mehr online verfügbare Bücher und Dokumente zu diesem Thema: plain TeX (http://texblog.net/latex-link-archive/plain-tex/).

Viele Grüße,

Stefan