Ich nutze apa6. Aus apa6.cls und der Doku werde ich allerdings nicht schlau und kann daher nicht sagen, auf welcher Klasse wiederum apa6 basiert. KOMA scheint es nicht zu sein, da addkomafont nicht funktioniert.

Ich möchte in einem Teil meines Dokuments die subsections nicht fett und aber zentriert haben.

apa6 definiert laut cls-file die subsection so

\renewcommand{\subsection}{\@startsection{subsection}{2}{\z@}%
     {\b@level@two@skip}{\e@level@two@skip}%
     {\normalfont\normalsize\bfseries}}

Da passiert eine Menge TeX-Zeug von dem ich nichts verstehe. Daher denke ich, dass es ziemlich unsinnig wäre subsection einfach mit renewcommand umzudefinieren.

Wie kann ich das in diesem Minibeisiel am besten lösen?

\documentclass[man,a4paper,oneside,12pt]{apa6}

\usepackage{xltxtra} % lädt auch fontspec
\defaultfontfeatures{Mapping=tex-text}

% Überschriftennummerierung reaktivieren
\setcounter{secnumdepth}{3}

% Sprache
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

% Titelseite
\title{T}
\shorttitle{ST}
\author{A}

\begin{document}
\maketitle
\tableofcontents
\newpage
\section{Einleitung}
Test Text
\subsection{Sub sec}
Test Text

% AB hier soll \subsection umdefiniert werden

\appendix
\section{Eins}
\subsection{Interviewleitfaden}\label{leitfaden}
Leitfaden

\subsection{Interviewtranskription}\label{transkription}
Transkript

\subsection{Eidesstattliche Erklärung}
Eid

\end{document}

gefragt 31 Okt '13, 03:22

MoonKid's gravatar image

MoonKid
502122227
Akzeptiert-Rate: 33%

bearbeitet 31 Okt '13, 10:39

Thorsten's gravatar image

Thorsten
1.6k325


Du brauchst nur den folgenden code nach der Anweisung \appendix einzufügen:

\makeatletter 
\renewcommand{\subsection}{\@startsection{subsection}{5}{\z@}%
    {\b@level@two@skip}{\e@level@two@skip}%
    {\centering\normalfont\normalsize}} 
\makeatother

Im Vergleich zur "Normaldefinition" von \subsection fallen drei Unterschiede auf: \bfseries ist weg, und neu ist \centering da. Die dritte Neuerung ist die numbering level von subsections: Weil im Appendix-Bereich eines apa6-konformen Dokuments die section headers (und subsection, subsubsection headers) meines Wissens nach nicht nummeriert sein sollen, habe ich subsection eine numbering level von 5 ("subparagraph) zugewiesen -- subparagraphs werden nach apa6 schon gar nicht nummeriert.


Addendum, nach Erhalt von mehreren Kommentaren.

  • Das mit dem numbering level versteh ich nicht ganz. Wenn da 5 steht, bedeutet das doch, das die ersten 5 Level numeriert werden. Es müsste doch 0 stehen, damit nix numieriert wird.

Die LaTeX Logik ist da genau umgekehrt: Je niedriger die sectioning level, desto 'wichtiger' ist sie. So hat \part level -1, \chapter hat 0, \section hat 1, etc. Darum wird 2 im zweiten Argument von \@startsection angegeben in der Normaldefinition von \subsection in der apa6 Klasse.

Man könnte den gleichen Effekt, d.h. die Nicht-Nummerierung von subsections, auch durch die Anweisung \setcounter{secnumdepth}{0} erzielen. Weil wir aber sowieso schon am Ändern der Definition von \subsection waren, dachte ich mir es sei einfacher alles auf einmal zu erledigen...

  • ... Wenn sich in der apa6 Klasse irgendwas ändert, wird dieser Code nicht davon berührt. Dieser Code hebelt den APA6-Kram völlig aus und funktioniert unabhängig davon. Zukünftige Änderungen in apa6.cls werden davon nicht mehr berührt. ...

Ich hatte Deine Frage also tatsächlich so verstanden, dass Du eine Neudefinition von \subsection haben wolltest die eben nicht von etwaigen Änderungen in der apa6 Klasse berührt werden wird. Falls man wirklich an allen zukünftigen Änderungen einer Klasse mitmachen will, sollte man wohl von Anfang an keine eigenständigen Änderungen an den Definitionen vornehmen die von der Klasse bestimmt werden...

  • Gibt es nicth einen addkomafont Mechanismus?

Die apa6 Klasse entstand aus der viel älteren apa Klasse. Die letztere ist meines Wissens einiges älter als die Familie der Koma-Klassen... Die Makros der apa6 Klasse machen recht wenig gebrauch von anderen Paketen.

  • Oder lässt sich ein eigener mysubsection definieren, was "irgendwie"(wie?) auf den apa6-Code direkt zugreift. ... newcommand{MYsubsection}{subsectioncenteringnormalfontnormalsize #1}

Die Formatierungs-Anweisungen \centering\normalfont\normalsize sind ja die genau gleichen wie in meiner ursprünglichen Antwort, nicht?

Falls du bereit bist das sectsty Paket zu laden, könntest du (nach \appendix, selbstverständlich) den folgenden Befehl ausgeben:

    \subsectionfont{\centering\normalfont\normalsize}

Diese Anweisung wird übrigens etwaige zukünftige Stil-Änderungen der APA auch nicht automatisch mitvollziehen...

Permanenter link

beantwortet 31 Okt '13, 08:28

Mico's gravatar image

Mico
28513
Akzeptiert-Rate: 10%

bearbeitet 01 Nov '13, 08:28

Das mit dem numbering level versteh ich nicht ganz. Wenn da 5 steht, bedeutet das doch, das die ersten 5 Level numeriert werden. Es müsste doch 0 stehen, damit nix numieriert wird.

Und warum ist die Zeichenmenge der Kommentare so massiv beschränkt? ;)

(01 Nov '13, 01:12) MoonKid

Insgesamt ist dein Code nach meiner Auffassung aber nur ein Workaround und keine elegante Lösung. Wenn sich in der apa6 Klasse irgendwas ändert, wird dieser Code nicht davon berührt. Dieser Code hebelt den APA6-Kram völlig aus und funktioniert unabhängig davon. Zukünftige Änderungen in apa6.cls werden davon nicht mehr berührt.

Somit müsste ich bei jeder neuen Verwendung dieses Codes erstmal überprüfen, ob es mit der aktuellen Definition in apa6.cls noch übereinstimmt (abgesehen von den eigenen gewünschten Änderungen).

Verstehst du mein Problem?

(01 Nov '13, 01:13) MoonKid

Gibt es nicth einen addkomafont Mechanismus? Oder lässt sich ein eigener mysubsection definieren, was "irgendwie"(wie?) auf den apa6-Code direkt zugreift.

Pseudocode:

% zur Erinnerung der Ausschnit aus apa6.cls
\renewcommand{\subsection}{\@startsection{subsection}{2}{\z@}%
     {\b@level@two@skip}{\e@level@two@skip}%
     {\normalfont\normalsize\bfseries}}

% darauf aufbauend
\newcommand{\MYsubsection}{\subsection\centering\normalfont\normalsize #1}

Geinge sowas in der Art? Im Original-Code fehlt die Überschrift (#1). D.h. ich verstehe den Code gar nicht. ;)

(01 Nov '13, 01:19) MoonKid
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

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ügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×76
×57
×9

gestellte Frage: 31 Okt '13, 03:22

Frage wurde gesehen: 12,968 Mal

zuletzt geändert: 01 Nov '13, 08:28