GEX thesis source code, full text, references

ctuth-templates.tex 6.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. %!TEX ROOT = ctutest.tex
  2. \ProvidesExplFile{ctuth-templates.tex}%
  3. {2015/11/15}{0.1 t1511151022}%MY TIMESTAMP HERE {0.1}
  4. {"Templates"\space part\space of\space the\space class\space ctuthesis}
  5. % The titlepage, includes doctype, faculty, department, title, author,
  6. % and some auxiliary information at the bottom
  7. \ctutemplateset{titlepage}{
  8. \thispagestyle { empty }
  9. \noindent
  10. \vbox to \textheight{%
  11. % The titlepage goes all way up to the header (taking one \baselineskip of the head)
  12. \vspace*{\dimexpr-\baselineskip-\headsep}
  13. \vss%
  14. {\noindent\leavevmode\color{ctubluerule}\vrule width 11pt\hspace*{11pt}}
  15. % The main vbox of the titlepage is larger by (bls + heasep) up and (footskip) down
  16. \vbox to \dimexpr\textheight + \baselineskip + \headsep + \footskip{
  17. % Reduce hsize by the rule width and the sep
  18. \hsize\dimexpr\linewidth-17pt
  19. % No justification, sf bf font
  20. \raggedright \sffamily \bfseries
  21. \selectctulanguage{title}
  22. %
  23. % The document type
  24. {\ctufield[title]{doctype}\par}
  25. %
  26. \vspace*{3ex}
  27. %
  28. % A table containing: the CTU logo and name, faculty number, faculty and deparment name
  29. \begin{tabular}{@{}l@{\hspace*{1em}}l@{}}
  30. \Large\includegraphics[height=\dimexpr4\normalbaselineskip-1ex]{ctu_logo_black}
  31. &
  32. \Large\color{ctubluetext}\begin{tabular}[b]{@{}l@{}}\ctufield[title]{university-endl}\end{tabular}
  33. \\[3ex]
  34. % \begin{tabular}[c]{@{}l@{}}
  35. \raisebox{-8pt}{
  36. \color{ctubluetext}\fontsize{32.7}{32.7}\selectfont
  37. \setbox0\hbox{\smash{\ctufield{facultynum}}\vphantom{X}}
  38. \ifdim\wd0>2em \scalebox{0.9}[1]{\textls[-50]{\smash{\ctufield{facultynum}}\vphantom{X}}}\else\box0\fi
  39. }
  40. % \end{tabular}
  41. &
  42. \begin{tabular}[c]{@{}l@{}}\rlap{\ctufield[title]{faculty}}\\[2pt]\ctufield[title]{department}\end{tabular}
  43. \end{tabular}\par
  44. %
  45. \vspace{8ex plus 1fill}
  46. %
  47. % The title, in two languages
  48. {\LARGE\color{ctubluetext}
  49. \ctufield[title]{title} \\[1.5ex]
  50. \Large\ctufield[second]{title}
  51. \par}
  52. %
  53. \vspace{3ex}
  54. %
  55. {\Large\color{ctubluetext}
  56. \ctufield[title]{subtitle}
  57. \par}
  58. %
  59. \vspace*{8ex}
  60. %
  61. % The author
  62. {\Large
  63. \ctufield{author}
  64. \par}
  65. %
  66. \vspace{0pt plus 3fill}
  67. {
  68. % The "metadata": supervisor, field of study, month and year
  69. \parskip 1pt
  70. \ctuiffield*{supervisor}{\supervisorname :~{\frenchspacing\ctufield{supervisor}}\par}{}
  71. \ctuiffield*{supervisor-specialist}{\supervisorspecialistname :~{\frenchspacing\ctufield{supervisor-specialist}}\par}{}
  72. \ctuiffield*[title]{fieldofstudy}{\fieldofstudyname :~\ctufield[title]{fieldofstudy}\par}{}
  73. \ctuiffield*[title]{subfieldofstudy}{\subfieldofstudyname :~\ctufield[title]{subfieldofstudy}\par}{}
  74. \monthinlanguage*{title}~\ctufield{year}\par
  75. }
  76. }
  77. \vss
  78. % The titlepage goes all way down to the foot
  79. \vspace*{-\footskip}
  80. }
  81. \par
  82. }
  83. % This include the specification file, and does nothing more
  84. \ctutemplateset{include.specification}{
  85. \includepdf[pages=-]{\tl_use:c{ g_ctuthesis_field_specification-file_tl }}
  86. }
  87. % Includes the specification as a chapter
  88. \ctutemplateset{specification.as.chapter}{
  89. \cleardoublepage
  90. % If it is an appendix, it gets a number, if not, it does not
  91. \ifctu@app
  92. \refstepcounter{chapter}
  93. \phantomsection
  94. \addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}\specificationname}
  95. \else
  96. \phantomsection
  97. \addcontentsline{toc}{chapter}{\specificationname}
  98. \fi
  99. \ctutemplate{include.specification}
  100. }
  101. \ctutemplateset{twocolumn.abstract.in.titlelanguage}{
  102. \selectctulanguage{title}
  103. \chapter{\abstractname}\noindent
  104. \ctufield[title]{abstract}\par
  105. { \raggedright
  106. \paragraph{\keywordsname :}
  107. \ctufield[title]{keywords}
  108. \paragraph{\supervisorname :}
  109. \ctuiffield*{supervisor}{
  110. \ctufield{supervisor}
  111. \ctuiffield*{supervisor-address}{
  112. \\
  113. \ctufield{supervisor-address}
  114. }{}
  115. }{}
  116. \par }
  117. }
  118. \ctutemplateset{twocolumn.abstract.in.secondlanguage}{
  119. \selectctulanguage{second}
  120. \chapter{\abstractname}\noindent
  121. \ctufield[second]{abstract}\par
  122. { \raggedright
  123. \paragraph{\keywordsname :}
  124. \ctufield[second]{keywords}
  125. \paragraph{\titletranslationname :}
  126. \ctufield[second]{title}
  127. \ctuiffield*[second]{subtitle}{
  128. \ --- \ \ctufield[second]{subtitle}
  129. } { }
  130. \par }
  131. }
  132. \ctutemplateset{twocolumn.tableofcontents}{
  133. \selectctulanguage{main}
  134. \tableofcontents
  135. }
  136. \ctutemplateset{twocolumn.thanks}{
  137. \selectctulanguage{title}
  138. \chapter{\thanksname}\noindent
  139. \ctufield{thanks}
  140. }
  141. \ctutemplateset{twocolumn.declaration}{
  142. \selectctulanguage{title}
  143. \chapter{\declarationname}\noindent
  144. \ctufield{declaration}
  145. }
  146. \ctutemplateset{twocolumn.listoffigures}{
  147. \selectctulanguage{main}
  148. \listoffigures
  149. }
  150. \ctutemplateset{twocolumn.listoftables}{
  151. \selectctulanguage{main}
  152. \listoftables
  153. }
  154. \ctutemplateset{twocolumn.glossaries}{
  155. \selectctulanguage{main}
  156. % \printglossary[style=index]
  157. \printglossary[style=mcolindex]
  158. }
  159. % Abstract template includes the Acknowledgements, Declaration and two Abstracts
  160. % the abstracts are accompanied by the keywords and possibly other information
  161. \ctutemplateset{maketitle.twocolumn.default}{
  162. \begin{twocolumnfrontmatterpage}
  163. \ctutemplate{twocolumn.declaration}
  164. \newpage
  165. \ctutemplate{twocolumn.thanks}
  166. \clearpage
  167. \ctutemplate{twocolumn.abstract.in.titlelanguage}
  168. %\newpage %CHANGED!!
  169. \vspace{1cm} % ADDED!
  170. \ctutemplate{twocolumn.abstract.in.secondlanguage}
  171. \clearpage
  172. \ctutemplate{twocolumn.tableofcontents}
  173. % The "loft" template is included only if at least one of the lists is enabled
  174. \bool_if:nTF {
  175. \ctuthesis_if_switch_p:n { front-list-of-figures }
  176. || \ctuthesis_if_switch_p:n { front-list-of-tables }
  177. } {
  178. \clearpage
  179. \ctutemplate{twocolumn.loft}
  180. } { }
  181. \end{twocolumnfrontmatterpage}
  182. }
  183. % Lists of Figures and Tables
  184. \ctutemplateset{twocolumn.loft}{
  185. \ctuifswitch { front-list-of-figures } { \ctutemplate{twocolumn.listoffigures} } { }
  186. %CHANGED removed the LoT
  187. \newpage
  188. \ctuifswitch { front-list-of-tables } { \ctutemplate{twocolumn.listoftables} } { }
  189. \ctutemplate{twocolumn.glossaries}
  190. }
  191. % The maketitle command (moreorless): roman page numbering
  192. \ctutemplateset{maketitle}{
  193. \frontmatter
  194. % Start with the titlepage
  195. \ctutemplate{titlepage}
  196. % title verso is empty (the star makes it completely empty in our template)
  197. \cleardoublepage*
  198. % If the specification has to be in front, include it. It it's one page only,
  199. % the verso is left empty
  200. \ctuifswitch{front-specification}{
  201. \ctutemplate{include.specification}
  202. \cleardoublepage*
  203. } { }
  204. % The abstract and alike
  205. \ctutemplate{maketitle.twocolumn.default}
  206. \def\thepage{}
  207. % Start the mainmatter
  208. \mainmatter
  209. }
  210. % Minor change to \mainmatter: we add the star to \cleardoublepage
  211. \DeclareDocumentCommand \mainmatter { } {
  212. \cleardoublepage*
  213. \@mainmattertrue
  214. \pagenumbering{arabic}
  215. \pagestyle{headings}
  216. }
  217. % \maketitle command itself just calls the maketitle template
  218. \DeclareDocumentCommand \maketitle { } {
  219. \ctutemplate{maketitle}
  220. }
  221. \endinput