Sie sind hier

\DeclareNewSectionCommand Gliederungsebenenzähler automatisch hochzählen

Hallo zusammen!

Aufgrund einer zwingenden Formatierungsvorgabe meines Instituts habe ich mir einen eigenen SectionCommand erstellt.
Das klappt auch alles wunderbar bis auf die Tatsache, dass der Gliederungsebenenzähler für diesen SectionCommand nicht automatisch hochgezählt wird. Trotz der Zuhilfenahme der KOMA-Script Dokumentation und Google habe ich bisher nur eine manuelle Lösung mittels des \stepcounter{}-Befehls gefunden, den ich jedesmal wenn ich meinen eigenen SectionCommand im Dokument aufrufe händisch eintragen muss. Das muss/sollte doch auch einfacher und automatisch gehen???

Ich verwende KOMA-Script Version 3.21

  1. \documentclass[a4paper,12pt,oneside]{scrreprt}
  2. \listfiles
  3. \usepackage{blindtext}
  4.  
  5. \usepackage[ngerman]{babel}	
  6. \usepackage[utf8]{inputenc}
  7. \usepackage[T1]{fontenc}	
  8.  
  9. % Abstände vor/nach Überschriften
  10. \RedeclareSectionCommand[beforeskip=-0pt,afterskip=30pt,font=\large]{chapter}
  11. \RedeclareSectionCommand[beforeskip=-24pt,afterskip=12pt,font=\normalsize]{section}
  12. \RedeclareSectionCommand[beforeskip=-6pt,afterskip=6pt,font=\normalsize]{subsection}
  13.  
  14. \DeclareNewSectionCommand[style=section,
  15. beforeskip=-12pt,
  16. afterskip=12pt,
  17. font=\normalsize,
  18. indent=0mm,
  19. level=1,
  20. tocindent=1.5em,
  21. tocnumwidth=2.3em,
  22. counterwithin=chapter]{secdirectlyafterchap}
  23.  
  24. \begin{document}	
  25.  
  26. 	\tableofcontents
  27. 	\newpage
  28.  
  29. 	\chapter{Kapitel A}
  30. 	\secdirectlyafterchap{Unterkapitel A.a}
  31. %	\stepcounter{section}	
  32. 	\blindtext
  33. 	\subsection{Unterunterkapitel A.a.a}
  34. 	\section{Unterkapitel A.b}
  35.  
  36. \end{document}

Wenn ich den auskommentierten \stepcounter{section}-Befehl aktiviere funktioniert alles wunderbar. Allerdings müsste ich den halt jedesmal manuell eintragen, wenn ich \secdirectlyafterchap aufrufe.
Ich weiß, dass ist stöhnen auf hohem Niveau, aber wenn ich die Arbeitsweise von \DeclareNewSectionCommand richtig verstehe, dann müsste dieser Befehl doch mit den Optionen style und/oder level den Gliederungsebenenzähler von section übergeben bekommen. Dementsprechend muss es doch einen Möglichkeit geben ihn automatisch hochzuzählen.
Oder bin ich hier vollkommen auf dem Holzweg?

Gruß
Roman

Eventuell hast Du

Zu jeder Gliederungsanweisung gehört außerdem ein Zähler mit demselben Name , der bei
Bedarf von allen vier Befehlen mit \newcounter neu angelegt wird. Dasselbe gilt für die Ausgabe
des Zählers, \theName , ...

in der KOMA-Script Anleitung überlesen. Mit „vier Befehlen“ sind an der Stelle \DeclareNewSectionCommand und Co gemeint.

Mit Deinem Code definierst Du die neue Gliederungsanweisung \secdirectlyafterchap und damit den Zähler secdirectlyafterchap. Dieser wird bei Verwendung von \secdirectlyafterchap hochgezählt.

Die Option style kennt bisher nur die Werte part, chapter und section und bestimmt den grundsätzlichen Stil der Überschrift. Zum Beispiel stehen Überschriften, die mit  style=chapter definiert wurden, immer auf einer neuen Seite. Der Wert für style bestimmt auch, welche Eigenschaften für den Gliederungsbefehl gesetzt werden können oder sogar müssen. So muss beispielsweise der Schlüssel indent beim Stile section angegeben werden, der Stil chapter kennt diese Eigenschaft dagegen gar nicht.

Der Wert der Option level bestimmt dagegen, ob die Gliederungsebene im Dokument nummeriert wird oder nicht. Ist der für level angegebene Wert größer als der Zähler secnumdepth wird die Überschrift nicht nummeriert.

Leider verstehe ich auch nicht, worin sich bei Dir die Formatierung von \section und dem neuen Gliederungsbefehl unterscheiden sollen, wenn Du letzteren sowieso nur direkt nach Kapitelüberschriften verwenden willst. Wenn ich nichts übersehen habe, unterscheiden sie sich nur durch beforeskip. Solange wie dieser Abstand aber kleiner als afterskip von \chapter spielt er keine Rolle, wenn der Gliederungsbefehl direkt nach einer Kapitelüberschrift steht.

Danke für die schnelle Antwort! Ich habe zwar immer noch keine Lösung parat, aber jetzt habe ich wenigstens verstanden wo das eigentliche Problem liegt.

Eine Lösung zu finden ist aber auch nicht mehr notwendig. Denn natürlich hast du mit deinem letzten Absatz recht und die Neudeklaration von \secdirectlyafterchap ist überflüssig. Daran hatte ich in meinem "Wahn", die Formatvorgaben umzusetzen garnicht gedacht, bzw. der Ersteller der Formatvorgaben hat auch nicht daran gedacht, und ich habe einfach stumpf "abgeschrieben".

MiKTeX 2.9 64-Bit
KOMA-Script V3.21

Comments for "\DeclareNewSectionCommand Gliederungsebenenzähler automatisch hochzählen" abonnieren