% ******************************************************************** % classicthesis.sty % % Copyright (C) 2017 André Miede and Ivo Pletikosić % % If you like the style then I would appreciate a postcard. My address % can be found in the file ClassicThesis.pdf. A collection of the % postcards I received so far is available online at % http://postcards.miede.de % % License: % This program is free software; you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by % the Free Software Foundation; either version 2 of the License, or % (at your option) any later version. % % This program is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. % % You should have received a copy of the GNU General Public License % along with this program; see the file COPYING. If not, write to % the Free Software Foundation, Inc., 59 Temple Place - Suite 330, % Boston, MA 02111-1307, USA. % % ******************************************************************** % Important: % % This style can also be used without the thesis template. % It works with LaTeX, PDFLaTeX, XeLaTeX and LuaLaTeX. % % ******************************************************************** \NeedsTeXFormat{LaTeX2e}%[2015/01/01] % fixed via latexrelease package, see below \ProvidesPackage{classicthesis}[2017/10/13 v4.4 Typographic style for a classic-looking thesis] \PassOptionsToPackage{latest}{latexrelease} % replacement for fixltx2e, \RequirePackage{latexrelease} % emulate newer kernel version if older is detected \RequirePackage{ifthen} % ******************************************************************** % Options % ******************************************************************** \RequirePackage{kvoptions} \SetupKeyvalOptions{family=ct, prefix=ct@} \DeclareBoolOption{drafting} % print version information on all pages \DeclareBoolOption{tocaligned} % the left column of the toc will be aligned (no indentation) \DeclareBoolOption{dottedtoc} % page numbers in ToC flushed right \DeclareBoolOption{listsseparated} % OBSOLETE; toggles the vertical space between lof/lot entries of different chapters \DeclareBoolOption{parts} % use part division \DeclareBoolOption{nochapters} % OBSOLETE - automatic check; disable all chapter-specific commands \DeclareBoolOption{eulerchapternumbers} % use AMS Euler for chapter font (otherwise Palatino) \DeclareBoolOption{linedheaders} % chaper headers will have line above and beneath \DeclareBoolOption{floatperchapter} % numbering per chapter for all floats (i.e., Figure 1.1) \DeclareBoolOption{manychapters} % additional space in ToC after chapter number (if two digits are needed) \DeclareBoolOption{listings} % load listings package and setup LoL \DeclareBoolOption{subfig} % setup for preloaded @subfig package \DeclareBoolOption{eulermath} % use awesome Euler fonts for mathematical formulae; only with pdflatex \DeclareBoolOption{beramono} % toggle a nice monospaced font (w/ bold) + pre-installed \DeclareBoolOption{minionpro} % setup for minion pro font; use minion pro small caps as well; only with pdflatex \DeclareBoolOption{minionprospacing} % OBSOLETE; use minion pro's textssc for letter spacing \DeclareBoolOption{pdfspacing} % OBSOLETE; use pdftex for letterspacing (via microtype) \DeclareBoolOption{a4paper} \DeclareBoolOption{a5paper} \DeclareBoolOption{letterpaper} \DeclareStringOption[a4]{paper} % paper size defaults to A4 \ProcessKeyvalOptions{ct} %%% seems that KOMA-Script gives preference to old-style paper options, thus first \ifthenelse{\boolean{ct@letterpaper}}{\renewcommand*{\ct@paper}{letter}}{} \ifthenelse{\boolean{ct@a5paper}}{\renewcommand*{\ct@paper}{a5}}{} \ifthenelse{\boolean{ct@a4paper}}{\renewcommand*{\ct@paper}{a4}}{} %%% then \ifthenelse{\equal{\ct@paper}{a4}}% {\setboolean{ct@a4paper}{true} \setboolean{ct@a5paper}{false} \setboolean{ct@letterpaper}{false}}% {} \ifthenelse{\equal{\ct@paper}{a5}}% {\setboolean{ct@a4paper}{false} \setboolean{ct@a5paper}{true} \setboolean{ct@letterpaper}{false}}% {} \ifthenelse{\equal{\ct@paper}{letter}}% {\setboolean{ct@a4paper}{false} \setboolean{ct@a5paper}{false} \setboolean{ct@letterpaper}{true}}% {} % subfig-related stuff \@ifpackageloaded{subfig}% {\setboolean{ct@subfig}{true}% }{\relax} \ifthenelse{\boolean{ct@subfig}}% {\PassOptionsToPackage{subfigure}{tocloft}% }{\relax}% % listings-related stuff \ifthenelse{\boolean{ct@listings}}% {\@ifpackageloaded{listings}% {\relax}{\RequirePackage{listings}}% }{\relax}% % fine-tuning if we do not use chapters \ifthenelse{\isundefined{\chapter}\OR\boolean{ct@nochapters}} { \PackageWarningNoLine{classicthesis}{Chapter sectioning command not present in this document class. % Deactivating options floatperchapter, linedheaders, manychapters, listsseparated, eulerchapternumbers and parts}% \setboolean{ct@linedheaders}{false}% \setboolean{ct@listsseparated}{false}% \setboolean{ct@eulerchapternumbers}{false}% \setboolean{ct@parts}{false}% %%%IVO: note that parts exist even when chapters are not defined! \setboolean{ct@manychapters}{false}% \setboolean{ct@floatperchapter}{false}% \setboolean{ct@nochapters}{true} }{\relax} % ******************************************************************** % PDF and XeLaTeX Stuff % ******************************************************************** \RequirePackage{ifpdf} \RequirePackage{ifxetex} \RequirePackage{ifluatex} \ifthenelse{\boolean{pdf}\OR\boolean{luatex}\OR\boolean{xetex}}% { \RequirePackage{hyperref} \pdfstringdefDisableCommands{\let\thepart=\relax} % no part numbers (i, ii, iii) in PDF outline IVO %\pdfstringdefDisableCommands{\renewcommand{\thepart}{\Roman{part}}} %%%IVO bring back Part numbers in PDF outline }{} % ******************************************************************** % Colors % ******************************************************************** \PassOptionsToPackage{dvipsnames}{xcolor} \RequirePackage{xcolor} % [dvipsnames] \definecolor{halfgray}{gray}{0.55} % chapter numbers will be semi transparent .5 .55 .6 .0 \definecolor{webgreen}{rgb}{0,.5,0} \definecolor{webbrown}{rgb}{.6,0,0} %\definecolor{Maroon}{cmyk}{0, 0.87, 0.68, 0.32} %\definecolor{RoyalBlue}{cmyk}{1, 0.50, 0, 0} %\definecolor{Black}{cmyk}{0, 0, 0, 0} % ******************************************************************** % Font Stuff % ******************************************************************** \ifthenelse{\boolean{xetex}\OR\boolean{luatex}} { % use fontspec and OpenType fonts with utf8 engines \RequirePackage{fontspec} \setmainfont[Ligatures=TeX,Numbers=OldStyle]{TeX Gyre Pagella} % Palatino clone \linespread{1.05} % a bit more for Palatino \ifthenelse{\boolean{ct@beramono}}% {\setmonofont[Scale=0.85]{DejaVu Sans Mono}} % like Bera; Scale=MatchLowercase {\setmonofont[Scale=1]{Latin Modern Mono}} \RequirePackage{unicode-math} \setmathfont{TeX Gyre Pagella Math} % font for the chapter numbers will be defined in the old way below % because there is no OpenType Euler font; this is how it should be done: %\newfontface\chapterNumber[Scale=7,Color=000000]{TeX Gyre Pagella Bold} } { % use Type 1 fonts with pdflatex \ifthenelse{\boolean{ct@minionpro}}% specialists: MinionPro {% % in order have Euler math fonts work with Minion, special option is needed \ifthenelse{\boolean{ct@eulermath}}% {% \PassOptionsToPackage{opticals,mathlf,onlytext}{MinionPro}% \RequirePackage{MinionPro} % opticals, fullfamily, osf }{% \PassOptionsToPackage{opticals,mathlf}{MinionPro}% \RequirePackage{MinionPro} % opticals, fullfamily, osf } }{ % default: Palatino \PassOptionsToPackage{osf,sc}{mathpazo}% \RequirePackage{mathpazo} % Palatino with real small caps and old style figures \linespread{1.05} % a bit more for Palatino } \ifthenelse{\boolean{ct@beramono}}% {\PassOptionsToPackage{scaled=0.85}{beramono}% \RequirePackage{beramono}% }{% \relax% % put your own suitable typewriter font here %\renewcommand{\ttdefault}{\rmdefault} } \ifthenelse{\boolean{ct@eulermath}}% {\PassOptionsToPackage{euler-digits}{eulervm}% \RequirePackage{eulervm}} % Euler math fonts {\relax} } \ifthenelse{\boolean{ct@eulerchapternumbers}}% font for the chapter numbers {\DeclareFixedFont{\chapterNumber}{U}{eur}{b}{n}{70}}% {\DeclareFixedFont{\chapterNumber}{T1}{pplj}{m}{n}{70}}% %{\newfont{\chapterNumber}{eurb10 scaled 7000}}% %{\newfont{\chapterNumber}{pplr9d scaled 7000}} % Euler eurb10 / Palatino OSF pplr9d / Palatino SC pplrc9d % Latin Modern cork-lmr10 / Minion MinionPro-Regular-osf-t1 % (MinionPro-SemiboldCapt-osf-t1 MinionPro-SemiboldDisp-osf-t1) \RequirePackage{microtype} % character protruding and other micro-typography stuff % [expansion=false] % ******************************************************************** % Textblock size %******************************************************* \@ifpackageloaded{typearea}% {\relax}{% \PassOptionsToPackage{headinclude,footinclude}{typearea} \RequirePackage{typearea}% } \ifthenelse{\boolean{ct@letterpaper}}% {% A4 \ifthenelse{\boolean{ct@minionpro}}% {% Minion gets some extra sizes \PackageInfo{classicthesis}{letter paper, MinionPro}% \areaset[current]{332pt}{634pt}% guessing from A4 values \setlength{\marginparwidth}{7.5em}% \setlength{\marginparsep}{2em}% }{% Palatino or other \PackageInfo{classicthesis}{letter paper, Palatino or other} \areaset[current]{356pt}{700pt} % guessing from A4 values \setlength{\marginparwidth}{7em}% \setlength{\marginparsep}{2em}% }% }{\relax} \ifthenelse{\boolean{ct@a5paper}}% {% A5 \ifthenelse{\boolean{ct@minionpro}}% {% Minion gets some extra sizes \PackageInfo{classicthesis}{A5 paper, MinionPro}% \areaset[current]{278pt}{556pt}% \setlength{\marginparwidth}{5em}% \setlength{\marginparsep}{1.25em}% }{% Palatino or other \PackageInfo{classicthesis}{A5 paper, Palatino or other}% \areaset[current]{288pt}{555pt}% \setlength{\marginparwidth}{4em}% \setlength{\marginparsep}{1.25em}% }% }{\relax} \ifthenelse{\boolean{ct@a4paper}}% {% A4 \ifthenelse{\boolean{ct@minionpro}}% {% Minion gets some extra sizes \PackageInfo{classicthesis}{A4 paper, MinionPro}% \areaset[current]{312pt}{684pt}% 609 + 33 + 42 head \the\footskip \setlength{\marginparwidth}{7.5em}% \setlength{\marginparsep}{2em}% }{% Palatino or other \PackageInfo{classicthesis}{A4 paper, Palatino or other} \areaset[current]{370pt}{750pt} % ~ 336 * factor 2 + 33 head + 42 \the\footskip % \areaset[current]{336pt}{750pt} % ~ 336 * factor 2 + 33 head + 42 \the\footskip % \areaset{336pt}{761pt} % 686 (factor 2.2) + 33 head + 42 head \the\footskip 10pt \setlength{\marginparwidth}{7em}% \setlength{\marginparsep}{2em}% }% }{\relax} % Here are some suggestions for the text widths and heights: % Palatino 10pt: 288--312pt | 609--657pt % Palatino 11pt: 312--336pt | 657--705pt % Palatino 12pt: 360--384pt | 768pt % Minion 10pt: 264--288pt | 561--609pt % Minion 11pt: 288--312pt | 609--657pt % Minion 12pt: 336pt | 672pt % Libertine 10pt: % Libertine 11pt: % Libertine 12pt: % kpfonts 10pt: % kpfonts 11pt: % kpfonts 12pt: % ******************************************************************** % Own Stuff % ******************************************************************** % Disable single lines at the start of a paragraph (Schusterjungen) \clubpenalty = 10000 % Disable single lines at the end of a paragraph (Hurenkinder) \widowpenalty = 10000 \displaywidowpenalty = 10000 % formulas % Graffiti as in GKP's book "Concrete Mathematics" % thanks to Lorenzo Pantieri and Enrico Gregorio \def\graffito@setup{% % \slshape\footnotesize% this was due to \slhape in above book \itshape\footnotesize\leavevmode\color{Black}% \parindent=0pt \lineskip=0pt \lineskiplimit=0pt % \tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300% \doublehyphendemerits=100000% \finalhyphendemerits=\doublehyphendemerits} %\DeclareRobustCommand{\graffito}[1]{\marginpar% % [\graffito@setup\raggedleft\hspace{0pt}{#1}]% % {\graffito@setup\raggedright\hspace{0pt}{#1}}} \let\oldmarginpar\marginpar \renewcommand{\marginpar}[2][]{% always add optional parameter, make it empty by default \if\relax\detokenize{#1}\relax% optional parameter empty, in all normal document calls \oldmarginpar[\graffito@setup\raggedleft\hspace{0pt}#2]{\graffito@setup\raggedright\hspace{0pt}#2}% \else%two parameters, let them use their styling \oldmarginpar[#1]{#2}% \fi% } % Enumeration environment with small caps \newenvironment{aenumerate} {\def\theenumi{\textsc{\alph{enumi}}}% \enumerate} {\endenumerate} % ******************************************************************** % Fancy Stuff % ******************************************************************** \RequirePackage{booktabs} % for better rules in tables \RequirePackage{textcase} % for \MakeTextUppercase %%% engine-dependent letterspacing: microtype for pdflatex, fontspec for xelatex and luatex \ifthenelse{\boolean{ct@minionpro}}{% MinionPro small caps \PackageInfo{classicthesis}{Using MinionPro's textssc for character spacing.} \DeclareRobustCommand{\spacedallcaps}[1]{\textssc{\MakeTextUppercase{#1}}} \DeclareRobustCommand{\spacedlowsmallcaps}[1]{\textssc{\MakeTextLowercase{#1}}} }{ % engine-based spacedallcaps and spacedlowsmallcaps \ifthenelse{\boolean{pdf}\OR\boolean{luatex}}{ % pdf will soon test true for both pdflatex and luatex; \AND\NOT\boolean{luatex} \PackageInfo{classicthesis}{Using pdftex/microtype for character spacing.% Make sure your pdftex is version 1.40 or higher.}% \microtypesetup{expansion=false} \DeclareRobustCommand{\spacedallcaps}[1]{\textls[160]{\MakeTextUppercase{#1}}} \DeclareRobustCommand{\spacedlowsmallcaps}[1]{\textls[80]{\scshape\MakeTextLowercase{#1}}} }{\relax} \ifthenelse{\boolean{xetex}}{ % use fontspec features; \OR\boolean{luatex} does not work well \DeclareRobustCommand{\spacedallcaps}[1]{{\addfontfeature{LetterSpace=18.0}\MakeTextUppercase{#1}}}% WordSpace=1.8 \DeclareRobustCommand{\spacedlowsmallcaps}[1]{{\addfontfeatures{LetterSpace=14.0}\scshape\MakeTextLowercase{#1}}}% WordSpace=1.8 }{\relax} \ifthenelse{\boolean{pdf}\OR\boolean{xetex}\OR\boolean{luatex}}% ever used? only dvi engines remain {\relax}{% \RequirePackage{soulutf8} % for letterspacing \sodef\allcapsspacing{\upshape}{0.15em}{0.65em}{0.6em}% \sodef\lowsmallcapsspacing{\scshape}{0.075em}{0.5em}{0.6em}% \DeclareRobustCommand{\spacedallcaps}[1]{\MakeTextUppercase{\allcapsspacing{#1}}}% \DeclareRobustCommand{\spacedlowsmallcaps}[1]{\MakeTextLowercase{\lowsmallcapsspacing{#1}}}%\protect }% } % ******************************************************************** % headlines % ******************************************************************** %\PassOptionsToPackage{automark}{scrpage2} \PassOptionsToPackage{automark}{scrlayer-scrpage} %\RequirePackage{scrpage2} % provides headers and footers (KOMA Script) \RequirePackage{scrlayer-scrpage} % provides headers and footers (KOMA Script) \clearpairofpagestyles %\setheadsepline{0pt} \let\MakeMarkcase\spacedlowsmallcaps \ifthenelse{\boolean{ct@nochapters}}% {\relax}% {\renewcommand{\chaptermark}[1]{\markboth{\spacedlowsmallcaps{#1}}{\spacedlowsmallcaps{#1}}}} \renewcommand{\sectionmark}[1]{\markright{\thesection\enspace\spacedlowsmallcaps{#1}}} \lehead{\mbox{\llap{\small\pagemark\kern2em}\headmark\hfil}} \rohead{\mbox{\hfil{\headmark}\rlap{\small\kern2em\pagemark}}} \renewcommand{\headfont}{\small} % \DeclareRobustCommand{\fixBothHeadlines}[2]{} % <--- ToDo % hack to get the content headlines right (thanks, Lorenzo!) \def\toc@heading{% \ifthenelse{\boolean{ct@nochapters}}% {\section*{\contentsname}}%nochapters {\chapter*{\contentsname}}%chapters \@mkboth{\spacedlowsmallcaps{\contentsname}}{\spacedlowsmallcaps{\contentsname}}} %%%IVO what does this do? % ******************************************************************** % layout of the chapter-, section-, subsection-, subsubsection-, % paragraph and description-headings % ******************************************************************** \RequirePackage[newparttoc]{titlesec} % newparttoc to write \part to .toc with \numberline \ifthenelse{\boolean{ct@nochapters}}{\relax}{\titleclass{\chapter}{top}} % thanks to Javier Bezos of titlesec \def\ttl@addcontentsline#1#2{% this is from titlesec.sty \addcontentsline{toc}{#1}{\ifttl@toclabel\ttl@a\fi{#2}}% write titles as a group inside {} \nobreak} % parts \ifthenelse{\boolean{ct@parts}}% {% \newcommand{\ctparttext}[1]{\renewcommand{\ctparttext@keep}{#1}} \def\ctparttext@keep{} % Thanks to Ivo \def\ctparttext@print{\ctparttext@keep \gdef\ctparttext@keep{}} \titleformat{\part}[display] {\normalfont\centering\large}% {\thispagestyle{empty}\partname~\MakeTextUppercase{\thepart}}{1em}% {\color{Maroon}\spacedallcaps}[\bigskip\normalfont\normalsize\color{Black}\begin{quote}\ctparttext@print\end{quote}] }{\relax} % chapters \ifthenelse{\boolean{ct@linedheaders}}% {% lines above and below, number right \titleformat{\chapter}[display]% {\relax}{\raggedleft{\color{halfgray}\chapterNumber\thechapter} \\ }{0pt}% {\titlerule\vspace*{.9\baselineskip}\raggedright\spacedallcaps}[\normalsize\vspace*{.8\baselineskip}\titlerule]% }{% something like Bringhurst \titleformat{\chapter}[display]% {\relax}{\mbox{}\oldmarginpar{\vspace*{-3\baselineskip}\color{halfgray}\chapterNumber\thechapter}}{0pt}% {\raggedright\spacedallcaps}[\normalsize\vspace*{.8\baselineskip}\titlerule]% } % sections \FloatBarrier \titleformat{\section} {\relax}{\textsc{\MakeTextLowercase{\thesection}}}{1em}{\spacedlowsmallcaps} % subsections \titleformat{\subsection} {\relax}{\textsc{\MakeTextLowercase{\thesubsection}}}{1em}{\normalsize\itshape} % subsubsections \titleformat{\subsubsection} {\relax}{\textsc{\MakeTextLowercase{\thesubsubsection}}}{1em}{\normalsize\itshape} % paragraphs \titleformat{\paragraph}[runin] {\normalfont\normalsize}{\theparagraph}{0pt}{\spacedlowsmallcaps} % descriptionlabels \renewcommand{\descriptionlabel}[1]{\hspace*{\labelsep}\spacedlowsmallcaps{#1}} % spacedlowsmallcaps textit textsc % spacing \ifthenelse{\boolean{ct@nochapters}}% {\relax}% {\titlespacing*{\chapter}{0pt}{1\baselineskip}{1.2\baselineskip}} \titlespacing*{\section}{0pt}{1.25\baselineskip}{1\baselineskip} \titlespacing*{\subsection}{0pt}{1.25\baselineskip}{1\baselineskip} \titlespacing*{\paragraph}{0pt}{1\baselineskip}{1\baselineskip} % ******************************************************************** % layout of the TOC, LOF and LOT (LOL-workaround see next section) % ******************************************************************** \PassOptionsToPackage{titles}{tocloft} \RequirePackage{tocloft} % avoid page numbers being right-aligned in fixed-size box \newlength{\newnumberwidth} \settowidth{\newnumberwidth}{999} % yields overfull hbox warnings for pages > 999 \cftsetpnumwidth{\newnumberwidth} % have the bib neatly positioned after the rest \newlength{\beforebibskip} \setlength{\beforebibskip}{0em} % space for more than nine chapters \newlength{\newchnumberwidth} \settowidth{\newchnumberwidth}{.} % <--- tweak here if more space required \ifthenelse{\boolean{ct@manychapters}}% <--- many chapters option {% \addtolength{\cftchapnumwidth}{\newchnumberwidth}% \addtolength{\cftsecnumwidth}{\newchnumberwidth} \addtolength{\cftsecindent}{\newchnumberwidth} \addtolength{\cftsubsecnumwidth}{\newchnumberwidth} \addtolength{\cftsubsecindent}{2\newchnumberwidth} \addtolength{\cftsubsubsecnumwidth}{\newchnumberwidth} }{\relax}% % pagenumbers right after the titles % parts \ifthenelse{\boolean{ct@parts}}% {% \renewcommand{\thepart}{\roman{part}}% \renewcommand{\cftpartpresnum}{\scshape}% \MakeTextLowercase \renewcommand{\cftpartaftersnum}{}% \renewcommand{\cftpartaftersnumb}{\spacedlowsmallcaps}% \setlength{\cftpartnumwidth}{\cftchapnumwidth} \renewcommand{\cftpartfont}{\color{Maroon}\normalfont}% \cftpagenumbersoff{part} \renewcommand{\cftpartpagefont}{\normalfont}% \ifthenelse{\boolean{ct@dottedtoc}}{\relax}% {% \renewcommand{\cftpartleader}{\hspace{1.5em}}% \renewcommand{\cftpartafterpnum}{\cftparfillskip}% }% \setlength{\cftbeforepartskip}{1em}% \setlength{\cftbeforechapskip}{.1em}% \setlength{\beforebibskip}{1.5\cftbeforepartskip}% }{\relax} % chapters \ifthenelse{\boolean{ct@nochapters}}% {\relax}% {% \renewcommand{\cftchappresnum}{\spacedlowsmallcaps}% \renewcommand{\cftchapaftersnumb}{\spacedlowsmallcaps}% \renewcommand{\cftchapfont}{\normalfont}% \renewcommand{\cftchappagefont}{\normalfont}% \ifthenelse{\boolean{ct@dottedtoc}}{\relax}% {% \renewcommand{\cftchapleader}{\hspace{1.5em}}% \renewcommand{\cftchapafterpnum}{\cftparfillskip}% } %\setlength{\cftbeforechapskip}{.1em}% } % sections \ifthenelse{\boolean{ct@nochapters}}% {% \setlength{\cftbeforesecskip}{.1em}% \setlength{\beforebibskip}{1em}% }% {\relax} \renewcommand{\cftsecpresnum}{\scshape\MakeTextLowercase}% \renewcommand{\cftsecfont}{\normalfont}% \renewcommand{\cftsecpagefont}{\normalfont}% \ifthenelse{\boolean{ct@dottedtoc}}{\relax}% {% \renewcommand{\cftsecleader}{\hspace{1.5em}}% \renewcommand{\cftsecafterpnum}{\cftparfillskip}% } \ifthenelse{\boolean{ct@tocaligned}}{\renewcommand{\cftsecindent}{0em}}{\relax} % subsections \renewcommand{\cftsubsecpresnum}{\scshape\MakeTextLowercase}% \renewcommand{\cftsubsecfont}{\normalfont}% \ifthenelse{\boolean{ct@dottedtoc}}{\relax}% {% \renewcommand{\cftsubsecleader}{\hspace{1.5em}}% \renewcommand{\cftsubsecafterpnum}{\cftparfillskip}% } \ifthenelse{\boolean{ct@tocaligned}}{\renewcommand{\cftsubsecindent}{0em}}{\relax} % subsubsections \renewcommand{\cftsubsubsecpresnum}{\scshape\MakeTextLowercase}% \renewcommand{\cftsubsubsecfont}{\normalfont}% \ifthenelse{\boolean{ct@dottedtoc}}{\relax}% {% \renewcommand{\cftsubsubsecleader}{\hspace{1.5em}}% \renewcommand{\cftsubsubsecafterpnum}{\cftparfillskip}% } \ifthenelse{\boolean{ct@tocaligned}}{\renewcommand{\cftsubsubsecindent}{0em}}{\relax} % figures \renewcommand{\cftfigpresnum}{\scshape\MakeTextLowercase}% \renewcommand{\cftfigfont}{\normalfont}% \ifthenelse{\boolean{ct@dottedtoc}}{\relax}% {% \renewcommand{\cftfigleader}{\hspace{1.5em}}% \renewcommand{\cftfigafterpnum}{\cftparfillskip}% } \renewcommand{\cftfigpresnum}{\figurename~}%Fig.~} \newlength{\figurelabelwidth} \settowidth{\figurelabelwidth}{\cftfigpresnum~999} \addtolength{\figurelabelwidth}{2.5em} \cftsetindents{figure}{0em}{\figurelabelwidth} % tables \renewcommand{\cfttabpresnum}{\scshape\MakeTextLowercase}% \renewcommand{\cfttabfont}{\normalfont}% \ifthenelse{\boolean{ct@dottedtoc}}{\relax}% {% \renewcommand{\cfttableader}{\hspace{1.5em}}% \renewcommand{\cfttabafterpnum}{\cftparfillskip}% } \renewcommand{\cfttabpresnum}{\tablename~}%Tab.~} \newlength{\tablelabelwidth} \settowidth{\tablelabelwidth}{\cfttabpresnum~999} \addtolength{\tablelabelwidth}{2.5em} %\cftsetindents{table}{0em}{\tablelabelwidth} \cftsetindents{table}{0em}{\figurelabelwidth} % listings \ifthenelse{\boolean{ct@listings}}% {% \newlistof{listings}{lol}{\lstlistlistingname}% \renewcommand{\cftlistingspresnum}{\scshape\MakeTextLowercase}% \renewcommand{\cftlistingsfont}{\normalfont}% \renewcommand{\cftlistingspresnum}{\lstlistingname~}% \renewcommand{\cftlistingspagefont}{\normalfont}% \ifthenelse{\boolean{ct@dottedtoc}}{\relax}% {% \renewcommand{\cftlistingsleader}{\hspace{1.5em}}% \renewcommand{\cftlistingsafterpnum}{\cftparfillskip}% } \newlength{\listingslabelwidth}% \settowidth{\listingslabelwidth}{\cftlistingspresnum~999}% \addtolength{\listingslabelwidth}{2.5em}% %\cftsetindents{listings}{0em}{\listingslabelwidth}% \cftsetindents{listings}{0em}{\figurelabelwidth}% \let\l@lstlisting\l@listings% \let\lstlistoflistings\listoflistings% }{\relax}% % dirty work-around to get the spacing after the toc/lot/lof-titles right \ifthenelse{\boolean{ct@parts}}% {% \AtBeginDocument{\addtocontents{toc}{\protect\vspace{-\cftbeforepartskip}}} }{% \ifthenelse{\boolean{ct@nochapters}}% {\relax}% {\AtBeginDocument{\addtocontents{toc}{\protect\vspace{-\cftbeforechapskip}}}} } \newcommand{\tocEntry}[1]{\protect\numberline {}{#1}}% %% remove the vertical space between lof/lot entries of different chapters \ifthenelse{\boolean{ct@listsseparated}}{% \PackageWarningNoLine{classicthesis}{Option "listsseparated" deprecated as of version 2.9.}% }{\relax} % \ifthenelse{\boolean{ct@listsseparated}}{% % \AtBeginDocument{% % \addtocontents{lof}{\protect\vspace{-\cftbeforechapskip}}% % \addtocontents{lot}{\protect\vspace{-\cftbeforechapskip}}% % \ifthenelse{\boolean{ct@listings}}% % {% % \addtocontents{lol}{\protect\vspace{-\cftbeforechapskip}}% % }{\relax}% % }% % }{% \DeclareRobustCommand*{\deactivateaddvspace}{\let\addvspace\@gobble}% \AtBeginDocument{% \addtocontents{lof}{\deactivateaddvspace}% \addtocontents{lot}{\deactivateaddvspace}% \ifthenelse{\boolean{ct@listings}}% {% \addtocontents{lol}{\deactivateaddvspace}% }{\relax}% }% % } % ******************************************************************** % footnotes setup % ******************************************************************** \ifdefined\deffootnote % KOMA-command, footnotemark not superscripted at the bottom \deffootnote{0em}{0em}{\thefootnotemark\hspace*{.5em}}% \message{Using KOMA-command "deffootnote" for footnote setup}% \else \PassOptionsToPackage{flushmargin}{footmisc}% \RequirePackage{footmisc}% \setlength{\footnotemargin}{-.5em}% \PackageWarningNoLine{classicthesis}{Using package "footmisc" with option % "flushmargin" for footnote setup (not 100\% the same as with KOMA)}% \fi % ******************************************************************** % Drafting Stuff % ******************************************************************** \RequirePackage{scrtime} % time access \newcommand{\finalVersionString}{\relax} \providecommand{\myVersion}{$\!\!$} % w/o classicthesis-config.tex \ifthenelse{\boolean{ct@drafting}}{% % \RequirePackage{draftwatermark}% % \SetWatermarkLightness{0.9} % \SetWatermarkScale{.5} % \SetWatermarkText{\today\ at \thistime} \PassOptionsToPackage{draft}{prelim2e} \RequirePackage{prelim2e} \renewcommand{\PrelimWords}{\relax} \renewcommand{\PrelimText}{\footnotesize[\,\today\ at \thistime\ -- \texttt{classicthesis}~\myVersion\,]} }{\renewcommand{\finalVersionString}{\emph{Final Version} as of \today\ (\texttt{classicthesis}~\myVersion).}} % ******************************************************************** % Caption numbering now w/o chapter number % ******************************************************************** \ifthenelse{\boolean{ct@floatperchapter}}{% \ifthenelse{\boolean{ct@listings}}{% \lstset{numberbychapter=true}}{\relax}% numberbychapter works in listings>=1.4 }{% \ifthenelse{\boolean{ct@listings}}{% \lstset{numberbychapter=false}}{\relax}% \RequirePackage{remreset}% \ifthenelse{\boolean{ct@nochapters}}% {\relax}{% \@removefromreset{table}{chapter} % requires remreset package }% \renewcommand{\thetable}{\arabic{table}}% \ifthenelse{\boolean{ct@nochapters}}% {\relax}{% \@removefromreset{figure}{chapter} % requires remreset package }% \renewcommand{\thefigure}{\arabic{figure}}% \ifthenelse{\boolean{ct@nochapters}}% {\relax}{% \@removefromreset{equation}{chapter} % requires remreset package }% \renewcommand{\theequation}{\arabic{equation}}% } % ******************************************************************** % Backward-compatibility % ******************************************************************** \let\myChapter\chapter \let\myPart\part \let\graffito\marginpar