Chapter Nummerierung

Inhalt, Abbildungen, Tabellen, Quellcodes und andere Verzeichnisse


gming
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Do 17. Mär 2022, 12:50

Chapter Nummerierung

Beitrag von gming »

Hallo liebe alle,

ich habe eine vorgegebene Dokumentenklasse, welche ich adaptieren kann. jene heißt thesisclass und ist unten angehängt. Diese wird im Hauptdokument dann über
\documentclass{thesisclass}
adressiert. Ich habe das Problem, dass irgendwo wahrscheinlich unter Chapter captions bzw. Formatierung gregelt wird, dass das Chapter keine Aufzählung erhält. Ich möchte aber aufgrund einer besseren Übersicht jeweils die Kapitel mit 1,2,3 und die Sections dann mit 1.1,1.2... versehen. Wäre dies in dieser Dokumentenklasse einfach änderbar?

Liebe Grüße
gming
\NeedsTeXFormat{LaTeX2e}										% We do need LaTeX2e
\ProvidesClass{thesisclass}
\LoadClass[a4paper,11pt,titlepage,openany,oneside]{scrbook}	% Class based on scrbook
% IM Style: Add openany,oneside to avoid blank pages after every chapter

%\RequirePackage{ngerman}										% New german orthography



%% -------------------------------
%% |          Packages           |
%% -------------------------------

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc} % Input in ISO 8859-1 (Latin1)

\usepackage{ae}               % Almost european, virtual T1-Font
\usepackage[pdftex]{graphicx}
\usepackage{vmargin}          % Adjust margins in a simple way
\usepackage{fancyhdr}         % Define simple headings
\usepackage{subfigure}
\usepackage{url}
\usepackage[absolute,overlay]{textpos}
\usepackage{tikz}
\usepackage{algorithm}		  % Code-Listings
\usepackage{algorithmic}	  % Code-Listings
% see http://www.ctan.org/tex-archive/macros/latex/contrib/algorithm2e/algorithm2e.pdf
% for more sophisticated algorithm listings

\usepackage[raiselinks=true,
						bookmarks=true,
						bookmarksopenlevel=1,
						bookmarksopen=true,
						bookmarksnumbered=true,
						hyperindex=true,
						plainpages=false,
						pdfpagelabels=true,
						pdfborder={0 0 0.5},
						colorlinks=false,						
						linkbordercolor={0 0.61 0.50},   
						citebordercolor={0 0.61 0.50}]{hyperref}  %{0.57 0.74 0.57}
						
%% IM Packages
\usepackage{setspace} % 1.5 line spacing
\onehalfspacing

%\usepackage{natbib} % Bibliography style

%% --- End of Packages ---



%% -------------------------------
%% |        Declarations         |
%% -------------------------------
\DeclareGraphicsExtensions{.svg}
%% --- End of Declarations ---



%% -------------------------------
%% |         New commands        |
%% -------------------------------
\newcommand{\changefont}[3]{\fontfamily{#1} \fontseries{#2} \fontshape{#3} \selectfont}
%\renewcommand*{\headfont}{\slshape}
%\newcommand{\captionfont}{}
\newcommand{\chapterheadfont}{}
\newcommand{\blankpage}{
 \clearpage{\pagestyle{empty}\cleardoublepage}
}
%% --- End of New Commands ---



%% -------------------------------
%% |      Globale Settings       |
%% -------------------------------
\setcounter{secnumdepth}{3} % Numbering also for \subsubsections
\setcounter{tocdepth}{3}    % Register \subsubsections in content directory

\setpapersize{A4}
\setmarginsrb{3cm}{1cm}{3cm}{1cm}{6mm}{7mm}{5mm}{15mm}

\parindent 0cm                     % Do not indent beginning of paragraph
\parskip1.5ex plus0.5ex minus0.5ex % Margin between paragraphs
%% --- End of global Settings ---



%% -------------------------------
%% |          Headings           |
%% -------------------------------
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{\thechapter.\ #1}{}}
\fancyhf{}
%\fancyhead[LE,RO]{{\headfont\thepage}}						% Left/right header for even/odd pages
%\fancyhead[LO]{\headfont\nouppercase{\rightmark}}	% Header for left page (odd)
%\fancyhead[RE]{\headfont\nouppercase{\leftmark}}	% Header for right page (even)
\fancyhead[R]{\headfont\nouppercase{\rightmark}}   % Header for onesided Version
\fancyfoot[C]{\thepage}
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\footrulewidth}{0pt}
\fancypagestyle{plain}{%
\fancyhf{}													% No Header and Footer fields
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
\fancyfoot[C]{\thepage}
}
%% --- End of Headings ---



%% -------------------------------
%% |      Style of captions      |
%% -------------------------------
\renewcommand{\chaptername}{}

\renewcommand{\section}{%
\@startsection{section}%
{1}		% Structure level
{0mm}	% Indention
{2ex plus 1ex minus 1ex}			% Pre-Margin
{0.5ex plus 0.5ex minus 0.5ex}		% Post-Margin
{\chapterheadfont\Large\bfseries}	% Style
}
\renewcommand{\subsection}{%
\@startsection{subsection}%
{2}		% Structure level
{0mm}	% Indention
{1.5ex plus 1ex minus 0.5ex}		% Pre-Margin
{0.3ex plus 0.3ex minus 0.3ex}		% Post-Margin
{\chapterheadfont\large\bfseries}	% Style
}
\renewcommand{\subsubsection}{%
\@startsection{subsubsection}%
{3}		% Structure level
{0mm}	% Indention
{1.5ex plus 1ex minus 0.5ex}			% Pre-Margin
{0.2ex plus 0.2ex minus 0.2ex}			% Post-Margin
{\chapterheadfont\normalsize\bfseries}	% Style
}
\renewcommand{\paragraph}{%
\@startsection{paragraph}%
{4}		% Structure level
{0mm}	% Indention
{1.3ex plus 1ex minus 0.3ex}			% Pre-Margin
{0.2ex plus 0.2ex minus 0.2ex}			% Post-Margin
{\chapterheadfont\normalsize\bfseries}	% Style
}
\renewcommand{\subparagraph}{%
\@startsection{subparagraph}%
{5}		% Structure level
{0mm}	% Indention
{1ex plus 1ex minus 0.2ex}				% Pre-Margin
{0.1ex plus 0.1ex minus 0.1ex}			% Post-Margin
{\chapterheadfont\normalsize\bfseries}	% Style
}
%% --- End of captions style ---



%% ---------------------------------
%% |   Style of chapter captions   |
%% ---------------------------------
\newlength{\chapnolen}
\newlength{\chapparlen}
\newsavebox{\chapno}
\renewcommand{\@makechapterhead}[1]{
 % \vspace*{0.2\textheight}
 % \vskip 15\p@
  {\parindent \z@ \raggedright \normalfont
    \ifnum \c@secnumdepth >\m@ne
      \if@mainmatter
        \savebox{\chapno}{\chapterheadfont\huge\bfseries \thechapter.}
        \settowidth{\chapnolen}{\usebox{\chapno}}
        \parbox[t]{\chapnolen}{\usebox{\chapno}}\nobreak\leavevmode
      \fi
    \fi
    \interlinepenalty\@MM
    \setlength{\chapparlen}{\textwidth}
    \addtolength{\chapparlen}{-1.0\chapnolen}
    \addtolength{\chapparlen}{-2ex}
    \leavevmode\nobreak
    \parbox[t]{\chapparlen}{\raggedright\chapterheadfont\huge \bfseries #1\par\nobreak}
    \vskip 30\p@
  }}

\renewcommand{\@makeschapterhead}[1]{
  \vspace*{50\p@}
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \chapterheadfont \huge \bfseries  #1\par\nobreak
    \vskip 40\p@
  }
}
%% --- End of chapter captions style ---



%% ---------------------------------
%% |  Style of content directory   |
%% ---------------------------------
\let\oldtableofcontents\tableofcontents
\renewcommand{\tableofcontents}{{\pdfbookmark{\contentsname}{\contentsname}\chapterheadfont\oldtableofcontents}}
\let\@olddottedtocline\@dottedtocline
\renewcommand{\@dottedtocline}[5]{\@olddottedtocline{#1}{#2}{#3}{#4}{\chapterheadfont #5}}
%% --- End of content directory style ---


%% ----------------------------------
%% |  Style of appendix numbering   |
%% ----------------------------------
 \renewcommand\appendix{\par 
   \setcounter{section}{0}% 
   \setcounter{subsection}{0}% 
   \setcounter{figure}{0}%
   \renewcommand\thesection{\Alph{section}}% 
   \renewcommand\thefigure{\Alph{section}.\arabic{figure}} 
   \renewcommand\thetable{\Alph{section}.\arabic{table}}}
%% --- End of appenix numbering style ---


%% **** END OF CLASS ****

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Re: Chapter Nummerierung

Beitrag von KOMA »

Ich kann diese Klasse insgesamt nicht empfehlen. Sie lädt zwar die KOMA-Script-Klasse scrbook macht dann aber viele Dinge, die man mit einer KOMA-Script-Klasse nicht tun sollte:
  • Seitenformat ist bei KOMA-Script eigentliche eine Option für das Paket typearea wird hier aber als (zudem überflüssig) Klassenoption gesetzt.
  • Die Verwendung von fancyhdr mit KOMA-Script wird nicht empfohlen und führt zu einer Warnung, in der auch einige der Gründe und eine Alternative genannt sind.
  • Die Definition von \blankpage ist sehr fragwürdig und dank \cleardoubleemptypage auch komplett überflüssig.
  • Das Setzen von \parindent und \parskip an Stelle der Verwendung von \setparsizes (odr Option parskip kann nicht empfohlen werden.
  • Die Umdefinierung von \section etc. kann nicht empfohlen werden. KOMA-Script hat dafür \setkomafont, \RedeclareSectionCommand etc.
  • Die Umdefinierung von \@makechapterhead ist fehlerhaft kann so nicht empfohlen werden und wird außerdem in zukünftigen Versionen von KOMA-Script auch nicht mehr funktionieren. Bereits ab Version 3.36 wird es eine entsprechende Warnung geben. Entsprechendes gilt auch für \@makeschapterhead. Zu Alternativen siehe den vorherigen Punkt.
  • Die Umdefinierung von \tableofcontents kann so nicht empfohlen werden. Ich empfehle die Verwendung u. a. von \BeforeTOCHead.
  • Die Umdefinierung von \appendix lässt vermuten, dass da jemand nicht gelesen hat, wie man Anhänge korrekt setzt. In jedem Fall beschädigt sie Features von KOMA-Script und kann daher nicht empfohlen werden.
Unabhängig von KOMA-Script, ist ebenfalls fragwüdrig:
  • Das Paket ae war vor weit über einem Jahrzehnt einmal ein Workaround dafür, dass Computer Modern nicht in T1-Codierung verfügbar war. Inzwischen gibt es aber lmodern. Daher sollte man die Krücke ae schon lange nicht mehr verwenden.
  • \usepackage[utf8]{inputenc} ist schon seit April 2018 überflüssig und würde bei solch alten LaTeX-Versionen außerdem die Verwendung von LuaLaTeX verhindern. Überhaupt ist die Codierung eine Eigenschaft des Dokuments und nicht der Klasse und hat daher eigentlich in einer Klasse nichts verloren.
  • Das Paket graphicx lädt man besser ohne Option pdftex. Das Paket (bzw. das zugehörige graphics.cfg) wählt das passende Backend dann selbst, statt eines vorzugeben, das zwingend PDFLaTeX voraussetzt.
  • vmargin ist IMHO eines der schlechteren Pakete zur Randeinstellung. geometry kann das besser.
  • subfigure ist seit Jahrzehnten veraltet und sollte zumindest für neue Dokumente nicht mehr verwendet werden. Alternativen werden unter dem Link genannt.
  • Das Laden von url dürfte überflüssig sein. Das Paket wird später von hyperref ohnehin geladen. Es zusätzlich explizit zu laden ist nur in bestimmen Fällen notwendig, von denen ich hier keinen erkennen kann.
  • Zwar ist natbib auskommentiert. Wenn es das aber nicht wäre, würde es zu spät geladen. Bis auf wenige dokumentierte Ausnahmen, sollte man hyperref nämlich als letztes Paket laden – unbedingt auch nach natbib.
  • Diese unsäglich dumme Verkürzung von \usefont namens \changefont stirbt leider nicht aus.
Bitte mach auch denjenigen, der die Klasse verteilt auf die genannten Mängel aufmerksam. Wenn er Hilfe bei der Korrektur benötigt, kann er sich gerne an mich wenden.

Aus dem Code der Klasse geht IMHO nicht hervor, warum bei Dir Kapitel nicht nummeriert werden. Wenn ich den gezeigten Code auf gut Glück zu einem vollständigen Beispiel erweitere:
\begin{filecontents}{thesisclass.cls}
% PLEASE DON'T USE THIS CODE. IT IS NOT RECOMMENDED AT ALL!
\NeedsTeXFormat{LaTeX2e}										% We do need LaTeX2e
\ProvidesClass{thesisclass}
\LoadClass[a4paper,11pt,titlepage,openany,oneside]{scrbook}	% Class based on scrbook
% IM Style: Add openany,oneside to avoid blank pages after every chapter

%\RequirePackage{ngerman}										% New german orthography



%% -------------------------------
%% |          Packages           |
%% -------------------------------

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc} % Input in ISO 8859-1 (Latin1)

\usepackage{ae}               % Almost european, virtual T1-Font
\usepackage[pdftex]{graphicx}
\usepackage{vmargin}          % Adjust margins in a simple way
\usepackage{fancyhdr}         % Define simple headings
\usepackage{subfigure}
\usepackage{url}
\usepackage[absolute,overlay]{textpos}
\usepackage{tikz}
\usepackage{algorithm}		  % Code-Listings
\usepackage{algorithmic}	  % Code-Listings
% see http://www.ctan.org/tex-archive/macros/latex/contrib/algorithm2e/algorithm2e.pdf
% for more sophisticated algorithm listings

\usepackage[raiselinks=true,
						bookmarks=true,
						bookmarksopenlevel=1,
						bookmarksopen=true,
						bookmarksnumbered=true,
						hyperindex=true,
						plainpages=false,
						pdfpagelabels=true,
						pdfborder={0 0 0.5},
						colorlinks=false,						
						linkbordercolor={0 0.61 0.50},   
						citebordercolor={0 0.61 0.50}]{hyperref}  %{0.57 0.74 0.57}
						
%% IM Packages
\usepackage{setspace} % 1.5 line spacing
\onehalfspacing

%\usepackage{natbib} % Bibliography style

%% --- End of Packages ---



%% -------------------------------
%% |        Declarations         |
%% -------------------------------
\DeclareGraphicsExtensions{.svg}
%% --- End of Declarations ---



%% -------------------------------
%% |         New commands        |
%% -------------------------------
\newcommand{\changefont}[3]{\fontfamily{#1} \fontseries{#2} \fontshape{#3} \selectfont}
%\renewcommand*{\headfont}{\slshape}
%\newcommand{\captionfont}{}
\newcommand{\chapterheadfont}{}
\newcommand{\blankpage}{
 \clearpage{\pagestyle{empty}\cleardoublepage}
}
%% --- End of New Commands ---



%% -------------------------------
%% |      Globale Settings       |
%% -------------------------------
\setcounter{secnumdepth}{3} % Numbering also for \subsubsections
\setcounter{tocdepth}{3}    % Register \subsubsections in content directory

\setpapersize{A4}
\setmarginsrb{3cm}{1cm}{3cm}{1cm}{6mm}{7mm}{5mm}{15mm}

\parindent 0cm                     % Do not indent beginning of paragraph
\parskip1.5ex plus0.5ex minus0.5ex % Margin between paragraphs
%% --- End of global Settings ---



%% -------------------------------
%% |          Headings           |
%% -------------------------------
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{\thechapter.\ #1}{}}
\fancyhf{}
%\fancyhead[LE,RO]{{\headfont\thepage}}						% Left/right header for even/odd pages
%\fancyhead[LO]{\headfont\nouppercase{\rightmark}}	% Header for left page (odd)
%\fancyhead[RE]{\headfont\nouppercase{\leftmark}}	% Header for right page (even)
\fancyhead[R]{\headfont\nouppercase{\rightmark}}   % Header for onesided Version
\fancyfoot[C]{\thepage}
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\footrulewidth}{0pt}
\fancypagestyle{plain}{%
\fancyhf{}													% No Header and Footer fields
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
\fancyfoot[C]{\thepage}
}
%% --- End of Headings ---



%% -------------------------------
%% |      Style of captions      |
%% -------------------------------
\renewcommand{\chaptername}{}

\renewcommand{\section}{%
\@startsection{section}%
{1}		% Structure level
{0mm}	% Indention
{2ex plus 1ex minus 1ex}			% Pre-Margin
{0.5ex plus 0.5ex minus 0.5ex}		% Post-Margin
{\chapterheadfont\Large\bfseries}	% Style
}
\renewcommand{\subsection}{%
\@startsection{subsection}%
{2}		% Structure level
{0mm}	% Indention
{1.5ex plus 1ex minus 0.5ex}		% Pre-Margin
{0.3ex plus 0.3ex minus 0.3ex}		% Post-Margin
{\chapterheadfont\large\bfseries}	% Style
}
\renewcommand{\subsubsection}{%
\@startsection{subsubsection}%
{3}		% Structure level
{0mm}	% Indention
{1.5ex plus 1ex minus 0.5ex}			% Pre-Margin
{0.2ex plus 0.2ex minus 0.2ex}			% Post-Margin
{\chapterheadfont\normalsize\bfseries}	% Style
}
\renewcommand{\paragraph}{%
\@startsection{paragraph}%
{4}		% Structure level
{0mm}	% Indention
{1.3ex plus 1ex minus 0.3ex}			% Pre-Margin
{0.2ex plus 0.2ex minus 0.2ex}			% Post-Margin
{\chapterheadfont\normalsize\bfseries}	% Style
}
\renewcommand{\subparagraph}{%
\@startsection{subparagraph}%
{5}		% Structure level
{0mm}	% Indention
{1ex plus 1ex minus 0.2ex}				% Pre-Margin
{0.1ex plus 0.1ex minus 0.1ex}			% Post-Margin
{\chapterheadfont\normalsize\bfseries}	% Style
}
%% --- End of captions style ---



%% ---------------------------------
%% |   Style of chapter captions   |
%% ---------------------------------
\newlength{\chapnolen}
\newlength{\chapparlen}
\newsavebox{\chapno}
\renewcommand{\@makechapterhead}[1]{
 % \vspace*{0.2\textheight}
 % \vskip 15\p@
  {\parindent \z@ \raggedright \normalfont
    \ifnum \c@secnumdepth >\m@ne
      \if@mainmatter
        \savebox{\chapno}{\chapterheadfont\huge\bfseries \thechapter.}
        \settowidth{\chapnolen}{\usebox{\chapno}}
        \parbox[t]{\chapnolen}{\usebox{\chapno}}\nobreak\leavevmode
      \fi
    \fi
    \interlinepenalty\@MM
    \setlength{\chapparlen}{\textwidth}
    \addtolength{\chapparlen}{-1.0\chapnolen}
    \addtolength{\chapparlen}{-2ex}
    \leavevmode\nobreak
    \parbox[t]{\chapparlen}{\raggedright\chapterheadfont\huge \bfseries #1\par\nobreak}
    \vskip 30\p@
  }}

\renewcommand{\@makeschapterhead}[1]{
  \vspace*{50\p@}
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \chapterheadfont \huge \bfseries  #1\par\nobreak
    \vskip 40\p@
  }
}
%% --- End of chapter captions style ---



%% ---------------------------------
%% |  Style of content directory   |
%% ---------------------------------
\let\oldtableofcontents\tableofcontents
\renewcommand{\tableofcontents}{{\pdfbookmark{\contentsname}{\contentsname}\chapterheadfont\oldtableofcontents}}
\let\@olddottedtocline\@dottedtocline
\renewcommand{\@dottedtocline}[5]{\@olddottedtocline{#1}{#2}{#3}{#4}{\chapterheadfont #5}}
%% --- End of content directory style ---


%% ----------------------------------
%% |  Style of appendix numbering   |
%% ----------------------------------
 \renewcommand\appendix{\par 
   \setcounter{section}{0}% 
   \setcounter{subsection}{0}% 
   \setcounter{figure}{0}%
   \renewcommand\thesection{\Alph{section}}% 
   \renewcommand\thefigure{\Alph{section}.\arabic{figure}} 
   \renewcommand\thetable{\Alph{section}.\arabic{table}}}
%% --- End of appenix numbering style ---


%% **** END OF CLASS ****
\end{filecontents}
\documentclass{thesisclass}
\usepackage{blindtext}
\begin{document}
\blinddocument
\end{document}
wird jedenfalls das Kapitel nummeriert und auch die Abschnittsnummer ist abhängig von der Kapitelnummer.

Eventuell verwendest Du \frontmatter aber nie \mainmatter? Falls dem so ist, lies diese Anweisungen bitte in der KOMA-Script-Anleitung nach. Genaueres könnte man ggf. an Hand eines Minimalbeispiels sagen.

gming
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Do 17. Mär 2022, 12:50

Re: Chapter Nummerierung

Beitrag von gming »

Hallo Koma,

danke danke für die vielen Anregungen. Ich werde jene gerne an den Autor weitergeben, ich habe dankenswerter weise meinen Fehler gefunden - es war nie \mainmatter aktiviert worden, habe ich leider nicht gewusst danke dir!

Liebe Grüße

Antworten