Guest User

masterthesis_cls

a guest
Jun 3rd, 2022
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.02 KB | None | 0 0
  1. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2. % Masters/Doctoral Thesis
  3. % Class File
  4. % Version 1.6 (27/8/17)
  5. %
  6. % This class was downloaded from:
  7. % http://www.LaTeXTemplates.com
  8. %
  9. % Authors:
  10. % Johannes Böttcher
  11. %
  12. % Notes:
  13. % 1) This class file defines the structure and layout of the template file (main.tex).
  14. % 2) It has been written in such a way that under most circumstances you should not need
  15. % to edit it; updating it to a newer version will be harder. If you do make changes, please change the name of
  16. % the file and add comments to make your changes more visible.
  17. %
  18. % Class license:
  19. % LPPL v1.3c (http://www.latex-project.org/lppl)
  20. %
  21. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  22.  
  23. %----------------------------------------------------------------------------------------
  24. % CLASS DEFINITION AND PARAMETERS
  25. %----------------------------------------------------------------------------------------
  26.  
  27. \NeedsTeXFormat{LaTeX2e}[1996/12/01]
  28. \newcommand{\classname}{MastersDoctoralThesis}
  29. \ProvidesClass{\classname}[2016/11/22 v1.5 LaTeXTemplates.com]
  30. \providecommand{\baseclass}{book}
  31. \RequirePackage{etoolbox}
  32. \RequirePackage{xparse}
  33. \newbool{nolistspace}
  34. \newbool{chapteroneline}
  35. \newbool{listtoc}
  36. \newbool{toctoc}
  37. \newbool{parskip}
  38. \newbool{hyperrefsupport}
  39. \booltrue{hyperrefsupport}
  40. \newbool{headsepline}
  41. \newbool{consistentlayout}
  42.  
  43. \DeclareOption{nohyperref}{\boolfalse{hyperrefsupport}}
  44. \DeclareOption{nolistspacing}{\booltrue{nolistspace}}
  45. \DeclareOption{liststotoc}{\booltrue{listtoc}}
  46. \DeclareOption{chapterinoneline}{\booltrue{chapteroneline}}
  47. \DeclareOption{toctotoc}{\booltrue{toctoc}}
  48. \DeclareOption{parskip}{\booltrue{parskip}}
  49. \DeclareOption{headsepline}{\booltrue{headsepline}}
  50. \DeclareOption{consistentlayout}{\booltrue{consistentlayout}}
  51. \DeclareOption*{\PassOptionsToClass{\CurrentOption}{\baseclass}}
  52.  
  53. \ProcessOptions\relax
  54.  
  55. \LoadClass{\baseclass}
  56.  
  57. % Simple interface for the user to customize the chapter titles
  58. \ProvideDocumentCommand{\abovechapterskip}{}{\vspace*{20pt}}
  59. \ProvideDocumentCommand{\chapterbelowskip}{}{\vspace*{40pt}}
  60. \ProvideDocumentCommand{\chapterinbetweenskip}{}{\vspace*{20pt}}
  61. \ProvideDocumentCommand{\autodot}{}{}
  62. \ProvideDocumentCommand{\mdtChapapp}{}{}
  63. \ProvideDocumentCommand{\chapteralign}{}{\raggedright}
  64. \ProvideDocumentCommand{\chapterfont}{}{\Huge\bfseries}
  65. \ProvideDocumentCommand{\chapterprefixfont}{}{\LARGE\bfseries}
  66. \DeclareDocumentCommand{\@makechapterhead}{ m }{%
  67. \abovechapterskip
  68. {\parindent \z@ \chapteralign \normalfont
  69. \ifnum \c@secnumdepth >\m@ne
  70. \if@mainmatter
  71. \ifbool{chapteroneline}{%
  72. \chapterfont \mdtChapapp\thechapter\autodot\enspace
  73. }{%
  74. \chapterprefixfont \@chapapp\space \thechapter
  75. \par\nobreak
  76. \chapterinbetweenskip
  77. }%
  78. \fi
  79. \fi
  80. \interlinepenalty\@M%
  81. \chapterfont #1\par\nobreak
  82. \chapterbelowskip
  83. }
  84. \thispagestyle{\chapter@p@gestyle}
  85. }
  86. \def\@makeschapterhead#1{%
  87. \abovechapterskip
  88. {\parindent \z@ \chapteralign
  89. \normalfont
  90. \interlinepenalty\@M
  91. \chapterfont #1\par\nobreak
  92. \chapterbelowskip
  93. }
  94. \thispagestyle{\chapter@p@gestyle}
  95. }
  96.  
  97.  
  98. % Addchap provides unnumbered chapters with an entry in the table of contents as well as an updated header
  99. \ProvideDocumentCommand{\addchap}{ s o m }{%
  100. \chapter*{#3}%
  101. \markboth{}{}%
  102. \IfBooleanTF{#1}{%
  103. }{%
  104. \IfNoValueTF{#2}{%
  105. \addchaptertocentry{#3}%
  106. \markboth{\MakeMarkcase{#3}}{\MakeMarkcase{#3}}%
  107. }{%
  108. \addchaptertocentry{#2}%
  109. \markboth{\MakeMarkcase{#2}}{\MakeMarkcase{#2}}%
  110. }%
  111. }%
  112. }%
  113.  
  114. \ProvideDocumentCommand{\addsec}{ s o m }{%
  115. \section*{#3}%
  116. \markright{}%
  117. \IfBooleanTF{#1}{%
  118. }{%
  119. \IfNoValueTF{#2}{%
  120. \addcontentsline{toc}{section}{#3}%
  121. \markright{\MakeMarkcase{#3}}%%
  122. }{%
  123. \addcontentsline{toc}{section}{#2}%
  124. \markright{\MakeMarkcase{#2}}%
  125. }%
  126. }%
  127. }%
  128.  
  129. %----------------------------------------------------------------------------------------
  130. % CLASS OPTIONS
  131. %----------------------------------------------------------------------------------------
  132.  
  133. \ifbool{parskip}{\RequirePackage{parskip}} % If the parskip option is passed to the class, require the parskip package
  134.  
  135.  
  136. \ifbool{listtoc}{% If the liststotoc option has been passed to the class, add the lists to the table of contents
  137. \patchcmd{\listoftables}{\@starttoc{lot}}{%
  138. \addchaptertocentry{\listtablename}\@starttoc{lot}%
  139. }{}{}%
  140. \patchcmd{\listoffigures}{\@starttoc{lof}}{%
  141. \addchaptertocentry{\listfigurename}\@starttoc{lof}%
  142. }{}{}%
  143. }
  144.  
  145. \ifbool{toctoc}{% If the toctotoc options has been passed to the class, add the table of contents to the table of contents
  146. \patchcmd{\tableofcontents}{\@starttoc{toc}%
  147. }{%
  148. \addchaptertocentry{\contentsname}\@starttoc{toc}}{}{}%
  149. }
  150.  
  151. \patchcmd{\tableofcontents}{\MakeUppercase}{\MakeMarkcase}{}{}
  152. \patchcmd{\tableofcontents}{\MakeUppercase}{\MakeMarkcase}{}{}
  153. \patchcmd{\listoffigures}{\MakeUppercase}{\MakeMarkcase}{}{}
  154. \patchcmd{\listoffigures}{\MakeUppercase}{\MakeMarkcase}{}{}
  155. \patchcmd{\listoftables}{\MakeUppercase}{\MakeMarkcase}{}{}
  156. \patchcmd{\listoftables}{\MakeUppercase}{\MakeMarkcase}{}{}
  157.  
  158. % If the option `nolistspacing' is given, the spacing in the different lists is reduced to single spacing. This option is only useful, if the spacing of the document has been changed to onehalfspacing or doublespacing.
  159. \ifbool{nolistspace}{
  160. \patchcmd{\listoffigures}{%
  161. \@starttoc{lof}
  162. }{%
  163. \begingroup%
  164. \singlespace\@starttoc{lof}\endgroup%
  165. }{}{}%
  166. \patchcmd{\listoftables}{%
  167. \@starttoc{lot}
  168. }{%
  169. \begingroup%
  170. \singlespace\@starttoc{lot}\endgroup%
  171. }{}{}%
  172. \patchcmd{\tableofcontents}{%
  173. \@starttoc{toc}
  174. }{%
  175. \begingroup%
  176. \singlespace\@starttoc{toc}\endgroup%
  177. }{}{}%
  178. }{}
  179.  
  180.  
  181. %----------------------------------------------------------------------------------------
  182. % REQUIRED PACKAGES
  183. %----------------------------------------------------------------------------------------
  184.  
  185. \RequirePackage[english]{babel} % Required for automatically changing names of document elements to languages besides english
  186.  
  187. \RequirePackage{scrbase} % Required for handling language-dependent names of sections/document elements
  188.  
  189. \RequirePackage{scrhack} % Loads fixes for various packages
  190.  
  191. \RequirePackage{setspace} % Required for changing line spacing
  192.  
  193. \RequirePackage{longtable} % Required for tables that span multiple pages (used in the symbols, abbreviations and physical constants pages)
  194.  
  195. \RequirePackage{siunitx} % Required for \SI commands
  196.  
  197. \RequirePackage{graphicx} % Required to include images
  198. \graphicspath{{Figures/}{./}} % Specifies where to look for included images
  199.  
  200. \RequirePackage{booktabs} % Required for better table rules
  201.  
  202. \RequirePackage{caption} % Required for customising the captions
  203. %\captionsetup{justification=centerlast,font=small,labelfont=sc,margin=50pt}
  204. \captionsetup{font=small,labelfont=sc,margin=50pt}
  205.  
  206. %----------------------------------------------------------------------------------------
  207. % DEFINE CUSTOM THESIS INFORMATION COMMANDS
  208. %----------------------------------------------------------------------------------------
  209.  
  210. \NewDocumentCommand{\thesistitle} { o m }{%
  211. \IfValueTF{#1}{\def\shorttitle{#1}}{\def\shorttitle{#2}}%
  212. \def\@title{#2}%
  213. \def\ttitle{#2}%
  214. }
  215. \DeclareDocumentCommand{\author}{m}{\newcommand{\authorname}{#1}\renewcommand{\@author}{#1}}
  216. \NewDocumentCommand{\supervisor}{m}{\newcommand{\supname}{#1}}
  217. \NewDocumentCommand{\examiner}{m}{\newcommand{\examname}{#1}}
  218. \NewDocumentCommand{\degree}{m}{\newcommand{\degreename}{#1}}
  219. \NewDocumentCommand{\addresses}{m}{\newcommand{\addressname}{#1}}
  220. \NewDocumentCommand{\university}{m}{\newcommand{\univname}{#1}}
  221. \NewDocumentCommand{\department}{m}{\newcommand{\deptname}{#1}}
  222. \NewDocumentCommand{\group}{m}{\newcommand{\groupname}{#1}}
  223. \NewDocumentCommand{\faculty}{m}{\newcommand{\facname}{#1}}
  224. \NewDocumentCommand{\subject}{m}{\newcommand{\subjectname}{#1}}
  225. \NewDocumentCommand{\keywords}{m}{\newcommand{\keywordnames}{#1}}
  226.  
  227. \newcommand{\checktoopen}{% New command to move content to the next page which prints to the next odd page if twosided mode is active
  228. \if@openright\cleardoublepage\else\clearpage\fi
  229. \ifdef{\phantomsection}{\phantomsection}{}% The \phantomsection command is necessary for hyperref to jump to the correct page
  230. }
  231.  
  232. \NewDocumentCommand{\bhrule}{}{\typeout{--------------------}}
  233. \NewDocumentCommand{\tttypeout}{m}{\bhrule\typeout{\space #1}\bhrule}
  234.  
  235. \newcommand{\HRule}{\rule{.9\linewidth}{.6pt}} % New command to make the lines in the title page
  236. \newcommand{\decoRule}{\rule{.8\textwidth}{.4pt}} % New command for a rule to be used under figures
  237.  
  238. \setcounter{tocdepth}{3} % The depth to which the document sections are printed to the table of contents
  239. \ProvideDocumentCommand{\addchaptertocentry}{ m }{%
  240. \addcontentsline{toc}{chapter}{#1}%
  241. }
  242.  
  243. %----------------------------------------------------------------------------------------
  244. % COLOURS
  245. %----------------------------------------------------------------------------------------
  246.  
  247. \usepackage{xcolor} % Required for specifying custom colours
  248.  
  249. \colorlet{mdtRed}{red!50!black}
  250.  
  251. %----------------------------------------------------------------------------------------
  252. % MARGINS
  253. %----------------------------------------------------------------------------------------
  254.  
  255. \RequirePackage{geometry}
  256. \geometry{
  257. headheight=4ex,
  258. includehead,
  259. includefoot
  260. }
  261.  
  262. \raggedbottom
  263.  
  264. %----------------------------------------------------------------------------------------
  265. % PENALTIES
  266. %----------------------------------------------------------------------------------------
  267.  
  268. \doublehyphendemerits=10000 % No consecutive line hyphens
  269. \brokenpenalty=10000 % No broken words across columns/pages
  270. \widowpenalty=9999 % Almost no widows at bottom of page
  271. \clubpenalty=9999 % Almost no orphans at top of page
  272. \interfootnotelinepenalty=9999 % Almost never break footnotes
  273.  
  274. %----------------------------------------------------------------------------------------
  275. % HEADERS AND FOOTERS
  276. %----------------------------------------------------------------------------------------
  277.  
  278. \RequirePackage[markcase=used]{scrlayer-scrpage}
  279. \providepairofpagestyles{thesisSimple}{%
  280. \clearpairofpagestyles%
  281. \automark[chapter]{chapter}
  282. \ihead{\headmark}% Inner header
  283. \ohead[\pagemark]{\pagemark}% Outer header
  284. }
  285. \ifoot{}% Inner footer
  286. \ofoot{}% Outer footer
  287. \pagestyle{thesisSimple}
  288. \providepairofpagestyles[thesisSimple]{thesis}{%
  289. \automark*[section]{}%
  290. }
  291. \providepairofpagestyles[thesisSimple]{review}{%
  292. \ofoot[\shorttitle/\authorname]{\shorttitle/\authorname}
  293. \ifoot[\today]{\today}
  294. }
  295. \pagestyle{thesis}
  296. \ifbool{headsepline}{\KOMAoption{headsepline}{true}}{}
  297. \PreventPackageFromLoading[\ClassError{\classname}{Package `fancyhdr' is
  298. incompatible\MessageBreak with this class}{The pagesyles are defined
  299. using package `scrlayer-scrpage', please consult the\MessageBreak
  300. KOMA-script documentation for details.}]{fancyhdr}
  301.  
  302.  
  303. \newcommand{\blank@p@gestyle}{empty}
  304. \newcommand{\chapter@p@gestyle}{plain}
  305. \NewDocumentCommand{\blankpagestyle}{ m }{%
  306. \ClassWarning{\classname}{\string\blankpagestyle\space is
  307. obsolete,\MessageBreak use \string\setblankpagestyle \space instead}\renewcommand{\blank@p@gestyle}{}{#1}
  308. }
  309. \NewDocumentCommand{\setblankpagestyle}{ m }{\renewcommand{\blank@p@gestyle}{#1}}
  310. \NewDocumentCommand{\setchapterpagestyle}{ m }{\renewcommand{\chapter@p@gestyle}{#1}}
  311.  
  312. \DeclareDocumentCommand\cleardoublepage{}{\clearpage\if@twoside \ifodd\c@page\else
  313. \hbox{}
  314. \thispagestyle{\blank@p@gestyle}
  315. \newpage
  316. \if@twocolumn\hbox{}\newpage\fi\fi\fi%
  317. }
  318.  
  319. %----------------------------------------------------------------------------------------
  320. % ABBREVIATIONS PAGE DESIGN
  321. %----------------------------------------------------------------------------------------
  322.  
  323. \newcommand{\abbrevname}{List of Abbreviations}
  324. \providecaptionname{english,british,american}{\abbrevname}{List of Abbreviations}
  325. \providecaptionname{ngerman,german,austrian,naustrian}{\abbrevname}{Abk\"urzungsverzeichnis}
  326. \NewDocumentEnvironment{abbreviations}{ m }{%
  327. \ifbool{nolistspace}{\begingroup\singlespacing}{}
  328. \ifbool{listtoc}{\addchap{\abbrevname}}{\addchap*{\abbrevname}}
  329. \begin{longtable}{#1}
  330. }{%
  331. \end{longtable}
  332. \addtocounter{table}{-1}% Don't count this table as one of the document tables
  333. \ifbool{nolistspace}{\endgroup}{}
  334. }
  335.  
  336. %----------------------------------------------------------------------------------------
  337. % ABSTRACT PAGE DESIGN
  338. %----------------------------------------------------------------------------------------
  339.  
  340. \DeclareDocumentCommand{\abstractauthorfont}{}{}
  341. \DeclareDocumentCommand{\abstracttitlefont}{}{}
  342. %\newcommand{\byname}{by}
  343. \newcommand{\abstractname}{R\'{e}sum\'{e}}
  344. \providecaptionname{german,ngerman,austrian,naustrian}{\byname}{von}
  345. \providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}{\byname}{by}
  346. \ifbool{consistentlayout}{
  347. \DeclareDocumentEnvironment{abstract_french}{ O{} }{%
  348. \addchap*{R\'{e}sum\'{e}}%
  349. {\chapteralign\normalsize\abstractauthorfont \authorname \par}% Author name
  350. \vspace{\baselineskip}
  351. {\chapteralign\parbox{.7\linewidth}{\chapteralign\normalsize\itshape\abstracttitlefont\@title}\par}% Thesis title
  352. \bigskip\noindent\ignorespaces
  353. }%
  354. {}%end alt-abstract
  355. }{%
  356. \DeclareDocumentEnvironment{abstract_french}{ O{\null\vfill} }{
  357. \checktoopen
  358. \tttypeout{R\'{e}sum\'{e}}
  359. #1%added to be able to have abstract more than one page long
  360. \thispagestyle{plain}
  361. \begin{center}
  362. {\normalsize \MakeUppercase{\univname} \par}% University name in capitals
  363. \bigskip
  364. {\huge\textit{R\'{e}sum\'{e}} \par}
  365. \bigskip
  366. %{\normalsize \facname \par}% Faculty name
  367. %{\normalsize \deptname \par}% Department name
  368. \bigskip
  369. %{\normalsize \degreename\par}% Degree name
  370. \bigskip
  371. {\normalsize\bfseries \@title\footnote{Cette th\`{e}se est bas\'ee sur, ou contient des documents non-publics du consortium Euclid ou des r\'esultats qui n'ont pas encore \'et\'e approuv\'es par le consortium Euclid.} \par}% Thesis title
  372. \medskip
  373. {\normalsize par \authorname \par}% Author name
  374. \bigskip
  375. \end{center}
  376. }
  377. {
  378. \vfill\null
  379. }
  380. }
  381.  
  382. \DeclareDocumentEnvironment{extraAbstract}{ O{\null\vfill} }{
  383. \checktoopen
  384. \tttypeout{\abstractname}
  385. #1%added to be able to have abstract more than one page long
  386. \thispagestyle{empty}
  387. \begin{center}
  388. {\normalsize \MakeUppercase{\univname} \par}% University name in capitals
  389. \bigskip
  390. {\huge\textit{\abstractname} \par}
  391. \bigskip
  392. {\normalsize \facname \par}% Faculty name
  393. {\normalsize \deptname \par}% Department name
  394. \bigskip
  395. {\normalsize \degreename\par}% Degree name
  396. \bigskip
  397. {\normalsize\bfseries \@title \par}% Thesis title
  398. \medskip
  399. {\normalsize \byname{} \authorname \par}% Author name
  400. \bigskip
  401. \end{center}
  402. }
  403. {
  404. \vfill\Null
  405. }
  406.  
  407.  
  408.  
  409. %Abstract English
  410.  
  411. \DeclareDocumentCommand{\abstractauthorfont}{}{}
  412. \DeclareDocumentCommand{\abstracttitlefont}{}{}
  413. %\newcommand{\byname}{by}
  414. %\newcommand{\abstractname}{Abstract}
  415. \providecaptionname{german,ngerman,austrian,naustrian}{\byname}{von}
  416. \providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}{\byname}{by}
  417. \ifbool{consistentlayout}{
  418. \DeclareDocumentEnvironment{abstract}{ O{} }{%
  419. \addchap*{\abstractname}%
  420. {\chapteralign\normalsize\abstractauthorfont \authorname \par}% Author name
  421. \vspace{\baselineskip}
  422. {\chapteralign\parbox{.7\linewidth}{\chapteralign\normalsize\itshape\abstracttitlefont\@title}\par}% Thesis title
  423. \bigskip\noindent\ignorespaces
  424. }%
  425. {}%end alt-abstract
  426. }{%
  427. \DeclareDocumentEnvironment{abstract}{ O{\null\vfill} }{
  428. \checktoopen
  429. \tttypeout{\abstractname}
  430. #1%added to be able to have abstract more than one page long
  431. \thispagestyle{plain}
  432. \begin{center}
  433. {\normalsize \MakeUppercase{\univname} \par}% University name in capitals
  434. \bigskip
  435. {\huge\textit{\abstractname} \par}
  436. \bigskip
  437. %{\normalsize \facname \par}% Faculty name
  438. %{\normalsize \deptname \par}% Department name
  439. \bigskip
  440. %{\normalsize \degreename\par}% Degree name
  441. \bigskip
  442. {\normalsize\bfseries Study of the dark components of the Universe\\ with the Euclid mission\footnote{This thesis is based on, or
  443. contains non-public Euclid Consortium material or results that have
  444. not yet been endorsed by the Euclid Consortium.} \par}% Thesis title
  445. \medskip
  446. {\normalsize \byname{} \authorname \par}% Author name
  447. \bigskip
  448. \end{center}
  449. }
  450. {
  451. \vfill\null
  452. }
  453. }
  454.  
  455. \DeclareDocumentEnvironment{extraAbstract}{ O{\null\vfill} }{
  456. \checktoopen
  457. \tttypeout{\abstractname}
  458. #1%added to be able to have abstract more than one page long
  459. \thispagestyle{empty}
  460. \begin{center}
  461. {\normalsize \MakeUppercase{\univname} \par}% University name in capitals
  462. \bigskip
  463. {\huge\textit{\abstractname} \par}
  464. \bigskip
  465. {\normalsize \facname \par}% Faculty name
  466. {\normalsize \deptname \par}% Department name
  467. \bigskip
  468. {\normalsize \degreename\par}% Degree name
  469. \bigskip
  470. {\normalsize\bfseries \@title \par}% Thesis title
  471. \medskip
  472. {\normalsize \byname{} \authorname \par}% Author name
  473. \bigskip
  474. \end{center}
  475. }
  476. {
  477. \vfill\null
  478. }
  479.  
  480. %----------------------------------------------------------------------------------------
  481. % ACKNOWLEDGEMENTS PAGE DESIGN
  482. %----------------------------------------------------------------------------------------
  483.  
  484. \usepackage{xcolor}
  485. \colorlet{mdtRed}{red!50!black}
  486. \newcommand{\acknowledgementname}{Acknowledgements}
  487. \providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish} {\acknowledgementname}{Acknowledgements} % Acknowledgement text for English countries
  488. \providecaptionname{german,ngerman,austrian,naustrian}{\acknowledgementname}{Danksagung} % Acknowledgement text for Germanic countries
  489.  
  490. \ifbool{consistentlayout}{
  491. \DeclareDocumentEnvironment{acknowledgements}{}{%
  492. \tttypeout{\acknowledgementname}
  493. \addchap*{\acknowledgementname}
  494. }
  495. }
  496. {
  497. \DeclareDocumentEnvironment{acknowledgements}{}{%
  498. \checktoopen
  499. \tttypeout{\acknowledgementname}
  500. \thispagestyle{plain}
  501. \begin{center}{\huge\textit{\acknowledgementname}\par}\end{center}
  502. }
  503. {
  504. \vfil\vfil\null
  505. }
  506. }
  507.  
  508. %----------------------------------------------------------------------------------------
  509. % DECLARATION PAGE DESIGN
  510. %----------------------------------------------------------------------------------------
  511.  
  512. \newcommand{\authorshipname}{Declaration of Authorship}
  513. \providecaptionname{american,australian,british,canadian,english,newzealand,UKenglish,USenglish}{\authorshipname}{Declaration of Authorship} % Declaration of Authorship text for English countries
  514. \providecaptionname{german,ngerman,austrian,naustrian}{\authorshipname}{Eidesstattliche Erkl\"arung} % Declaration of Authorship text for Germanic countries
  515.  
  516. \ifbool{consistentlayout}{
  517. \DeclareDocumentEnvironment{declaration}{}{
  518. \addchap*{\authorshipname}
  519. }{}%
  520. }{
  521. \DeclareDocumentEnvironment{declaration}{}{
  522. \checktoopen
  523. \tttypeout{\authorshipname}
  524. \thispagestyle{plain}
  525. \null\vfil
  526. {\noindent\huge\bfseries\authorshipname\par\vspace{10pt}}
  527. }{}
  528. }
  529.  
  530. %----------------------------------------------------------------------------------------
  531. % DEDICATION PAGE DESIGN
  532. %----------------------------------------------------------------------------------------
  533.  
  534. \ifbool{consistentlayout}{
  535. \DeclareDocumentCommand{\dedicatory}{
  536. m O{\vspace*{.7\textheight} } }{
  537. \checktoopen\tttypeout{Dedicatory}
  538. \markboth{}{}
  539. #2
  540. {\hfill\parbox{.4\textwidth}{\flushright#1\par}}
  541. }
  542. }{
  543. \newcommand\dedicatory[1]{
  544. \checktoopen
  545. \tttypeout{Dedicatory}
  546. \null\vfil
  547. \thispagestyle{plain}
  548. \begin{center}{\Large\slshape #1}\end{center}
  549. \vfil\null
  550. }
  551. }
  552.  
  553.  
  554. %----------------------------------------------------------------------------------------
  555. % PHYSICAL CONSTANTS PAGE DESIGN
  556. %----------------------------------------------------------------------------------------
  557.  
  558. \newcommand{\constantsname}{Physical Constants}
  559. \providecaptionname{english,british,american}{\constantsname}{Physical Constants}
  560. \providecaptionname{ngerman,german,austrian,naustrian}{\constantsname}{Physikalische Konstanten}
  561.  
  562. \NewDocumentEnvironment{constants}{ m }{%
  563. \ifbool{nolistspace}{\begingroup\singlespacing}{}
  564. \ifbool{listtoc}{\addchap{\constantsname}}{\addchap*{\constantsname}}
  565. \begin{longtable}{#1}
  566. }{%
  567. \end{longtable}
  568. \addtocounter{table}{-1}% Don't count this table as one of the document tables
  569. \ifbool{nolistspace}{\endgroup}{}
  570. }
  571.  
  572. %----------------------------------------------------------------------------------------
  573. % SYMBOLS PAGE DESIGN
  574. %----------------------------------------------------------------------------------------
  575.  
  576. \newcommand{\symbolsname}{List of Symbols}
  577. \providecaptionname{english,british,american}{\symbolsname}{List of Symbols}
  578. \providecaptionname{ngerman,german,austrian,naustrian}{\symbolsname}{Symbolverzeichnis}
  579.  
  580. \NewDocumentEnvironment{symbols}{ m }{%
  581. \ifbool{nolistspace}{\begingroup\singlespacing}{}
  582. \ifbool{listtoc}{\addchap{\symbolsname}}{\addchap*{\symbolsname}}
  583. \begin{longtable}{#1}
  584. }{%
  585. \end{longtable}
  586. \addtocounter{table}{-1}% Don't count this table as one of the document tables
  587. \ifbool{nolistspace}{\endgroup}{}
  588. }
  589.  
  590. %----------------------------------------------------------------------------------------
  591.  
  592. \ifbool{hyperrefsupport}{% If the nohyperref class option has not been specified
  593. \AtEndPreamble{\RequirePackage{hyperref}
  594. \hypersetup{pdfpagemode={UseOutlines},
  595. bookmarksopen=true,
  596. bookmarksopenlevel=0,
  597. hypertexnames=true,
  598. colorlinks=true,% Set to false to disable coloring links
  599. citecolor=red,% The color of citations
  600. linkcolor=mdtRed,% The color of references to document elements (sections, figures, etc)
  601. urlcolor=mdtRed,% The color of hyperlinks (URLs)
  602. pdfstartview={FitV},
  603. unicode,
  604. breaklinks=true,
  605. }
  606.  
  607. \pdfstringdefDisableCommands{% If there is an explicit linebreak in a section heading (or anything printed to the pdf-bookmarks), it is replaced by a space
  608. \let\\\space%
  609. }
  610. }
  611. }{%nothing
  612. }
  613.  
  614. %----------------------------------------------------------------------------------------
  615.  
  616. \endinput
  617. % lazyLizardTracer
  618.  
Advertisement
Add Comment
Please, Sign In to add comment