From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/fithesis/style/mu/DESCRIPTION | 2 + macros/latex/contrib/fithesis/style/mu/Makefile | 19 + macros/latex/contrib/fithesis/style/mu/base.dtx | 1636 ++++++++++++++++++++ macros/latex/contrib/fithesis/style/mu/base.ins | 6 + macros/latex/contrib/fithesis/style/mu/econ.dtx | 344 ++++ macros/latex/contrib/fithesis/style/mu/econ.ins | 3 + macros/latex/contrib/fithesis/style/mu/fi.dtx | 134 ++ macros/latex/contrib/fithesis/style/mu/fi.ins | 3 + macros/latex/contrib/fithesis/style/mu/fsps.dtx | 173 +++ macros/latex/contrib/fithesis/style/mu/fsps.ins | 3 + macros/latex/contrib/fithesis/style/mu/fss.dtx | 75 + macros/latex/contrib/fithesis/style/mu/fss.ins | 3 + macros/latex/contrib/fithesis/style/mu/law.dtx | 97 ++ macros/latex/contrib/fithesis/style/mu/law.ins | 3 + macros/latex/contrib/fithesis/style/mu/med.dtx | 168 ++ macros/latex/contrib/fithesis/style/mu/med.ins | 3 + macros/latex/contrib/fithesis/style/mu/ped.dtx | 66 + macros/latex/contrib/fithesis/style/mu/ped.ins | 3 + macros/latex/contrib/fithesis/style/mu/phil.dtx | 123 ++ macros/latex/contrib/fithesis/style/mu/phil.ins | 3 + macros/latex/contrib/fithesis/style/mu/sci.dtx | 641 ++++++++ macros/latex/contrib/fithesis/style/mu/sci.ins | 3 + 22 files changed, 3511 insertions(+) create mode 100644 macros/latex/contrib/fithesis/style/mu/DESCRIPTION create mode 100644 macros/latex/contrib/fithesis/style/mu/Makefile create mode 100644 macros/latex/contrib/fithesis/style/mu/base.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/base.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/econ.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/econ.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/fi.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/fi.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/fsps.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/fsps.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/fss.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/fss.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/law.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/law.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/med.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/med.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/ped.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/ped.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/phil.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/phil.ins create mode 100644 macros/latex/contrib/fithesis/style/mu/sci.dtx create mode 100644 macros/latex/contrib/fithesis/style/mu/sci.ins (limited to 'macros/latex/contrib/fithesis/style/mu') diff --git a/macros/latex/contrib/fithesis/style/mu/DESCRIPTION b/macros/latex/contrib/fithesis/style/mu/DESCRIPTION new file mode 100644 index 0000000000..cabf32db3f --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/DESCRIPTION @@ -0,0 +1,2 @@ +This directory contains the style files of the Masaryk University +(Brno, Czech Republic). diff --git a/macros/latex/contrib/fithesis/style/mu/Makefile b/macros/latex/contrib/fithesis/style/mu/Makefile new file mode 100644 index 0000000000..6d43d8eab2 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/Makefile @@ -0,0 +1,19 @@ +LOGS=base.log fi.log sci.log phil.log ped.log fss.log law.log \ + econ.log med.log fsps.log +OUTPUT=fithesis-base.sty fithesis-1[012].clo fithesis-fi.sty \ + fithesis-sci.sty fithesis-phil.sty fithesis-ped.sty \ + fithesis-fss.sty fithesis-law.sty fithesis-econ.sty \ + fithesis-med.sty fithesis-fsps.sty + +# These targets create all the locale files. +all: explode +explode: $(LOGS) + +# This target creates the locale files from +# one DTX file. +%.log: %.ins %.dtx + xetex $< + +# This target removes all the locale files. +implode: + rm -f $(OUTPUT) $(LOGS) diff --git a/macros/latex/contrib/fithesis/style/mu/base.dtx b/macros/latex/contrib/fithesis/style/mu/base.dtx new file mode 100644 index 0000000000..2bf55b0e17 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/base.dtx @@ -0,0 +1,1636 @@ +% \iffalse +%<*base> +% \fi\file{style/mu/fithesis-base.sty}\label{sec:fithesis-mu-base} +% This is the base style file for theses written at the Masaryk +% University in Brno. When inheritance is enabled for style files, +% this file is always the second style file to be loaded right +% after \texttt{style/fithesis-base.sty}, regardless of the value +% of the |\thesis@style| macro. +% \begin{macrocode} +\ProvidesPackage{fithesis/style/mu/fithesis-base}[2017/06/02] +\NeedsTeXFormat{LaTeX2e} +% \end{macrocode} +% The file recognizes the following options: \begin{itemize} +% \item\texttt{10pt}, \texttt{11pt}, \texttt{12pt} -- Sets the +% type size to 10, 11 or 12 points respectively. +% \begin{macrocode} +\DeclareOption{10pt}{\def\thesis@ptsize{0}} +\DeclareOption{11pt}{\def\thesis@ptsize{1}} +\DeclareOption{12pt}{\def\thesis@ptsize{2}} +% \end{macrocode} +% \item\texttt{oneside}, \texttt{twoside} -- The document is +% going to be either single- or double-sided, respectively. In +% a double-sided document, headers, page numbering, margin +% notes and several other elements will be arranged based on +% the parity of the page. Blank pages will also be inserted +% prior the beginning of each chapter to ensure that it starts +% on a right-hand (odd-numbered) page. The +% \DescribeMacro{\ifthesis@twoside@}|\ifthesis@twoside@| +% conditional is set to either \texttt{false} or \texttt{true}, +% respectively. +% \begin{macrocode} +\newif\ifthesis@twoside@ +\DeclareOption{oneside}{% + \thesis@twoside@false\@twosidefalse\@mparswitchfalse} +\DeclareOption{twoside}{% + \thesis@twoside@true \@twosidetrue \@mparswitchtrue} +% \end{macrocode} +% \item\texttt{onecolumn}, \texttt{twocolumn} -- The document +% is going to be set in either a single column or in two +% columns, respectively. +% \begin{macrocode} +\DeclareOption{onecolumn}{\@twocolumnfalse} +\DeclareOption{twocolumn}{\@twocolumntrue} +% \end{macrocode} +% \item\texttt{draft}, \texttt{final} -- Overful lines either are +% or aren't marked within the document, respectively, and +% graphics either aren't or are inserted into the document, +% respectively. +% \begin{macrocode} +\DeclareOption{draft}{\setlength\overfullrule{5pt}} +\DeclareOption{final}{\setlength\overfullrule{0pt}} +% \end{macrocode} +% \item\texttt{palatino}, \texttt{nopalatino} -- The roman +% text font family and the math font family is going to be +% either set to Palatino or left untouched, respectively. The +% \DescribeMacro{\ifthesis@palatino@}|\ifthesis@|^^A +% \discretionary{}{}{}|palatino@| conditional is set to either +% \texttt{true} or \texttt{false}, respectively. The +% Palatino font is a part of the visual identity of the Faculty +% of Informatics at which the document class was created. +% \begin{macrocode} +\newif\ifthesis@palatino@ +\DeclareOption{palatino}{\thesis@palatino@true} +\DeclareOption{nopalatino}{\thesis@palatino@false} +% \end{macrocode} +% \item\texttt{color}, \texttt{monochrome} -- Certain +% typographical elements either are or aren't going to be +% typeset in color, respectively. The +% \DescribeMacro{\ifthesis@color@}|\ifthesis@color@| +% conditional is set to either \texttt{true} or \texttt{false}, +% respectively. +% \begin{macrocode} +\newif\ifthesis@color@ +\DeclareOption{monochrome}{\thesis@color@false} +\DeclareOption{color}{\thesis@color@true} +% \end{macrocode} +% \item\texttt{microtype}, \texttt{nomicrotype} -- The +% microtypographic extension of modern \TeX\ engines -- such as +% \hologo{pdfTeX}, \Hologo{XeTeX}, or \Hologo{LuaTeX} -- is or isn't +% going to be enabled, respectively. The +% \DescribeMacro{\ifthesis@microtype@}|\ifthesis@microtype@| +% conditional is set to either \texttt{true} or \texttt{false}, +% respectively. +% \begin{macrocode} +\newif\ifthesis@microtype@ +\DeclareOption{microtype}{\thesis@microtype@true} +\DeclareOption{nomicrotype}{\thesis@microtype@false} +% \end{macrocode} +% \item\texttt{table}, \texttt{oldtable} -- If the +% |\ifthesis@color@| conditional is \texttt{true}, then the +% definitions of the \texttt{tabular}, \texttt{tabularx}, and +% \texttt{tabu} commands either are or aren't going to be +% altered to better match the style, respectively. The +% \DescribeMacro{\ifthesis@newtable@}|\ifthesis@newtable@| +% conditional is set to either \texttt{true} or \texttt{false}, +% respectively. +% +% \begin{macrocode} +\newif\ifthesis@newtable@ +\DeclareOption{table}{\thesis@newtable@true} +\DeclareOption{oldtable}{\thesis@newtable@false} +% \end{macrocode} +% +% The choice of the option name is deliberate -- the +% redefinition of the table environments depends on the +% \textsf{xcolor} package, which needs to be loaded with the +% \texttt{table} option. Since so many other packages depend on +% the \textsf{xcolor} package and this style file is loaded at +% the very end of the preamble, there would either be a great +% chance of an option clash, or the option would have to be +% passed to the \textsf{xcolor} package before the preamble +% from the body of the \textsf{fithesis3} class thus breaking +% the encapsulation. Naming the option \texttt{table} forces +% the option to be processed by the \textsf{xcolor} package as +% well and it is therefore an elegant solution to the problem +% at hand. +% \item\texttt{lot}, \texttt{nolot} -- The \DescribeMacro{^^A +% \thesis@blocks@lot}|\thesis@blocks@lot| macro will be defined +% as either |\listoftables| or |\relax|, respectively. As a +% side effect, the |\listoftables| either is or isn't going to +% be included in the \DescribeMacro{\thesis@blocks@tables}^^A +% |\thesis@|\discretionary{}{}{}|blocks@tables| block, +% respectively. +% \begin{macrocode} +\DeclareOption{nolot}{\let\thesis@blocks@lot\relax} +\DeclareOption{lot}{\let\thesis@blocks@lot\listoftables} +% \end{macrocode} +% \item\texttt{lot}, \texttt{nolot} -- The \DescribeMacro{^^A +% \thesis@blocks@lof}|\thesis@blocks@lof| macro will be defined +% as either |\listoffigures| or |\relax|, respectively. As a +% side effect, the |\listoffigures| either is or isn't going to +% be included in the \DescribeMacro{\thesis@blocks@tables}^^A +% |\thesis@|\discretionary{}{}{}|blocks@tables| block, +% respectively. +% \begin{macrocode} +\DeclareOption{nolof}{\let\thesis@blocks@lof\relax} +\DeclareOption{lof}{\let\thesis@blocks@lof\listoffigures} +% \end{macrocode} +% \item\texttt{cover}, \texttt{nocover} -- The +% \DescribeMacro{\thesis@blocks@cover}|\thesis@blocks@cover| +% either is going to expand to either the thesis cover or +% produces no output, respectively. The +% \DescribeMacro{\ifthesis@cover@}|\ifthesis@cover@| +% conditional is set to \texttt{false} or \texttt{true}, +% respectively. +% \begin{macrocode} +\newif\ifthesis@cover@ +\DeclareOption{nocover}{\thesis@cover@false} +\DeclareOption{cover}{\thesis@cover@true} +% \end{macrocode} +% \item\texttt{digital}, \texttt{printed} -- These macrooptions +% set the options that are appropriate for either the printed or +% for the digital version of the document, respectively. The +% \DescribeMacro{\ifthesis@digital@}|\ifthesis@digital@| +% conditional is set to \texttt{true} or \texttt{false}, +% respectively. +% \begin{macrocode} +\newif\ifthesis@digital@ +\DeclareOption{digital}{% + \ExecuteOptions{color,cover}% + \thesis@digital@true} +\DeclareOption{printed}{% + \ExecuteOptions{monochrome,nocover}% + \thesis@digital@false} +% \end{macrocode} +% \end{itemize} +% These are the default options: +% \begin{macrocode} +\ExecuteOptions{% + printed,12pt,twoside,final,microtype,palatino,oldtable,lot,lof} +\ProcessOptions* +% \end{macrocode} +% The file uses English locale strings within the macros. +% \begin{macrocode} +\thesis@requireLocale{english} +% \end{macrocode} +% The file loads the following packages: \begin{itemize} +% \item\textsf{xcolor} -- Adds support for color manipulation. +% \item\textsf{ifxetex} -- Used to detect the \Hologo{XeTeX} +% engine. +% \item\textsf{ifluatex} -- Used to detect the \Hologo{LuaTeX} +% engine. +% \item\textsf{graphix} -- Adds support for the inclusion of +% graphics files. +% \item\textsf{pdfpages} -- Adds support for the injection of PDF +% documents into the resulting document, namely the thesis +% assignment. +% \item\textsf{hyperref} -- Adds support for the injection of +% metadata into the resulting PDF document. +% \item\textsf{keyval} -- Adds support for parsing +% comma-delimited lists of key-value pairs. +% \end{itemize} +% \begin{macrocode} +\thesis@require{xcolor} +\thesis@require{graphicx} +\thesis@require{pdfpages} +\thesis@require{keyval} +\thesis@require{ifxetex} +\thesis@require{ifluatex} +% \end{macrocode} +% If the |\thesis@microtype@| is set to true, then the +% \textsf{microtype} package gets loaded. +% \begin{macrocode} +\ifthesis@microtype@ + \thesis@require[final,babel]{microtype} +\fi +% \end{macrocode} +% Using the |\ifxetex| and |\ifluatex| conditionals, a compound +% \DescribeMacro{\ifthesis@xeluatex}|\ifthesis@xeluatex| +% conditional was constructed. This conditional can be used by +% subsequently loaded style files to test, whether either the +% \Hologo{XeTeX} or the \Hologo{LuaTeX} engine is being used. +% \begin{macrocode} +{\let\x\expandafter +\x\global\x\let\x\ifthesis@xeluatex\csname if% + \ifxetex true\else + \ifluatex\x\x\x t\x\x\x r\x\x\x u\x\x\x e% + \else f\x\x\x a\x\x\x l\x\x\x s\x\x\x e% + \fi + \fi\endcsname} +% \end{macrocode} +% The following packages get only loaded, when the document is +% being typeset using the \Hologo{XeTeX} or \Hologo{LuaTeX} +% engine: \begin{itemize} +% \item\textsf{fontspec} -- Allows the selection of +% system-installed fonts. +% \item\textsf{unicode-math} -- Allows the selection of +% system-installed mathematical fonts. +% \end{itemize} +% Under \Hologo{XeTeX} or \Hologo{LuaTeX}, the \textsf{TeX Gyre +% Pagella} and \textsf{TeX Gyre Pagella Math} are also selected as +% the main text and math fonts. +% \begin{macrocode} +\ifthesis@xeluatex + \ifthesis@palatino@ + \thesis@require{fontspec} + \thesis@require{unicode-math} + \setmainfont[Ligatures=TeX]{TeX Gyre Pagella} + \setmathfont[math-style=ISO,bold-style=ISO]{texgyrepagella-math.otf} + \fi +% \end{macrocode} +% The following packages get only loaded, when the document is not +% being typeset using the \Hologo{XeTeX} or \Hologo{LuaTeX} engine +% and the |\ifthesis@palatino@| conditional is \texttt{true}: +% \begin{itemize} +% \item\textsf{cmap} -- Places an explicit \texttt{ToUnicode} +% map in the resulting PDF file, allowing for the extraction of +% the text from the document. +% \item\textsf{mathpazo} -- Changes the default math font family +% to \texttt{mathpazo}. +% \item\textsf{tgpagella} -- Changes the default roman font +% family to \TeX\ Gyre Pagella. +% \item\textsf{lmodern} -- Changes the default sans-serif and +% monotype font faces to Latin Modern instead of the default +% Computer Modern font family. +% \item\textsf{fontenc} -- The font encoding is set to Cork. +% \end{itemize} +% \begin{macrocode} +\else + \ifthesis@palatino@ + \RequirePackage[resetfonts]{cmap} + \thesis@require{lmodern} + \thesis@require{mathpazo} + \thesis@require{tgpagella} + \RequirePackage[T1]{fontenc} + \fi +\fi +% \end{macrocode} +% If the |\thesis@newtable@| conditional is \texttt{true}, then +% some of the dimensions associated with tables are modified in +% preparation for the coloring of the table cells. The following +% packages are also loaded: +% \begin{itemize} +% \item\textsf{tabularx} -- Provides the \texttt{tabularx} +% environment, which enables the typesetting of tables with +% flexible-width columns. +% \item\textsf{tabu} -- Provides the \texttt{tabu} environment, +% which enables the typesetting of complex tables. +% \item\textsf{booktabs} -- A package, which allows the creation +% of publication-quality tables in \LaTeX. +% \end{itemize} +% \begin{macrocode} +\let\thesis@newtable@old\tabular +\let\endthesis@newtable@old\endtabular +\ifthesis@newtable@ + % Load the packages. + \thesis@require{tabularx} + \thesis@require{tabu} + \thesis@require{booktabs} + % Adjust the measurements. + \setlength{\aboverulesep}{0pt} + \setlength{\belowrulesep}{0pt} + \setlength{\extrarowheight}{.75ex} +% \end{macrocode} +% When both the |\thesis@newtable@| and |\thesis@color@| conditionals are +% \texttt{true}, then the \texttt{tabular} and \texttt{tabularx} +% environments are redefined to better match the style of the given +% faculty. +% +% The \DescribeMacro{\thesis@newtable@old}|\thesis@newtable@old| +% and \DescribeMacro{\endthesis@newtable@old} +% |\endthesis@newtable@old| macros containing the original +% definition of the |tabular| environment are always defined and +% are available for subsequently loaded styles in case the +% typesetting of unaltered tables is required. Similarly, the +% \DescribeMacro{\thesis@newtable@oldx}|\thesis@newtable@oldx| and +% \DescribeMacro{\endthesis@newtable@oldx}|\endthesis@newtable@oldx| +% macros are defined for the |tabularx| environment and the +% \DescribeMacro{\thesis@newtable@oldtabu}|\thesis@newtable@oldtabu| +% and \DescribeMacro{\endthesis@newtable@oldtabu} +% |\endthesis@newtable@oldtabu| for the |tabu| environment. +% \begin{macrocode} + \ifthesis@color@ + % The redefinition of `tabular` + \renewenvironment{tabular}% + {\rowcolors{1}{thesis@color@tableOdd}% + {thesis@color@tableEven}% + \thesis@newtable@old}% + {\endthesis@newtable@old} + % The redefinition of `tabularx` + \let\thesis@newtable@oldx\tabularx + \let\endthesis@newtable@oldx\endtabularx + \renewenvironment{tabularx}% + {\rowcolors{1}{thesis@color@tableEven}% + {thesis@color@tableOdd}% + \thesis@newtable@oldx}% + {\endthesis@newtable@oldx} + % The redefinition of `tabu` + \let\thesis@newtable@oldtabu\tabu + \let\endthesis@newtable@oldtabu\endtabu + \renewenvironment{tabu}% + {\rowcolors{1}{thesis@color@tableEven}% + {thesis@color@tableOdd}% + \thesis@newtable@oldtabu}% + {\endthesis@newtable@oldtabu} + \fi +\fi +% \end{macrocode} +% \begin{macro}{\ifthesis@bibliography@} +% A new conditional, |\ifthesis@bibliography@|, is defined. This +% conditional is true, when |\thesis@bibFiles| expands to a +% non-empty token list. +% \begin{macrocode} +\newif\ifthesis@bibliography@ +\thesis@bibliography@false +\ifx\thesis@bibFiles\undefined\else + {\edef\@bibList{\thesis@bibFiles}% + \ifx\@bibList\empty\else + \global\thesis@bibliography@true + \fi} +\fi +% \end{macrocode} +% \end{macro} +% \begin{macro}{\thesis@bibliography@setup} +% The file defines the |\thesis@bibliography@setup|\marg{options} +% command, where \textit{options} is a comma-delimited list of +% key-value pairs as defined by the \textsf{keyval} package. The +% command can be invoked by the subsequently loaded style +% files to define the bibliography options. +% \begin{macrocode} +\def\thesis@bibliography@setup#1{% + \setkeys{thesis@bibliography}{#1}} +% \end{macrocode} +% \end{macro} +% The following key-value pairs are supported: +% \begin{enumerate} +% \item\marg{\texttt{style}=style} -- Stores \texttt{style} in +% \DescribeMacro{\thesis@bibliography@style}^^A +% |\thesis@bibliography@style|, unless it has already been +% defined (presumably by the user). +% \item\marg{\texttt{sorting}=mode} -- Stores \texttt{mode} in +% \DescribeMacro{\thesis@bibliography@sorting}^^A +% |\thesis@bibliography@sorting|, unless it has already been +% defined (presumably by the user). +% \end{enumerate} +% \begin{macrocode} +\define@key{thesis@bibliography}{style}{% + \ifx\thesis@bibliography@style\undefined + \def\thesis@bibliography@style{#1}% + \fi} +\define@key{thesis@bibliography}{sorting}{% + \ifx\thesis@bibliography@sorting\undefined + \def\thesis@bibliography@sorting{#1}% + \fi} +% \end{macrocode} +% \begin{macro}{\thesis@bibliography@load} +% When |\ifthesis@bibliography@| is true and +% |\ifthesis@bibliography@loaded@| is false, the +% |\thesis@bibliography@load| macro loads the \textsf{csquotes} and +% Bib\LaTeX\ packages with the bibliography databases specified in +% |\thesis@bibFiles|. The macro also sets the +% \DescribeMacro{\thesis@bibliography@loaded}^^A +% |\ifthesis@bibliography@loaded@| conditional to true. +% \begin{macrocode} +\newif\ifthesis@bibliography@loaded@ + \thesis@bibliography@loaded@false +\newif\ifthesis@bibliography@included@ + \thesis@bibliography@included@false +\def\thesis@bibliography@load{% + \ifthesis@bibliography@ + \ifthesis@bibliography@loaded@\else + \thesis@bibliography@loaded@true + % Load csquotes and BibLaTeX. + \thesis@require{csquotes} +% \end{macrocode} +% If |\thesis@bibliography@style| is undefined, the bibliography +% and citation styles default to |iso-numeric|. If +% |\thesis@bibliography@sorting| is undefined, the sorting scheme +% defaults to |none|. +% \begin{macrocode} + \thesis@bibliography@setup{ + style = iso-numeric, + sorting = none} + \thesis@require[ + backend=biber, + style=\thesis@bibliography@style, + sorting=\thesis@bibliography@sorting, + autolang=other, + sortlocale=auto]{biblatex} + % Load the bibliography databases. + {\edef\@bibList{\thesis@bibFiles}% + \def\@inject##1,{% + \def\@args{##1}\def\@relax{\relax}% + \ifx\@args\@relax\else + % Trim leading spaces. + \edef\@trimmed{\romannumeral-`\.##1}% + \addbibresource\@trimmed + \expandafter\@inject\fi}% + \expandafter\@inject\@bibList,\relax,}% +% \end{macrocode} +% \begin{macro}{\ifthesis@bibliography@included@} +% The |\ifthesis@bibliography@included@| conditional is true, when +% the user has manually included a bibliography into their +% document. The default value of the conditional is false and +% |\printbibliography| is patched to set the conditional to true on +% expansion. This enables the user to place the bibliography +% manually without it appearing in the autolayout. The original +% macro is stored in the +% \DescribeMacro{\thesis@printbibliography@old}^^A +% |\thesis@printbibliography@old| macro. +% \begin{macrocode} + \let\thesis@printbibliography@old\printbibliography + \def\printbibliography{% + \global\thesis@bibliography@included@true + \thesis@printbibliography@old} + \fi + \fi} +% \end{macrocode} +% \end{macro} ^^A The nested \ifthesis@bibliography@included@ def +% \end{macro} ^^A The \thesis@bibliography@load macro definition +% The \textsf{hyperref} package is configured to support both roman +% and arabic page numbering in one document and to decorate +% hyperlinks with an underline instead of a rectangular box. +% \begin{macrocode} +\thesis@require{hyperref} +\hypersetup{pdfborderstyle={/S/U/W 1}} % Less obtrusive borders +% \end{macrocode} +% Clubs and widows are set to be infinitely bad. +% \begin{macrocode} +\widowpenalty 10000 +\clubpenalty 10000 +% \end{macrocode} +% \begin{macro}{\thesis@color@setup} +% The file defines the |\thesis@color@setup|\marg{colors} command, +% where \textit{colors} is a comma-delimited list of key-value +% pairs as defined by the \textsf{keyval} package. The command can +% be invoked either by the subsequently loaded style files or by +% the user to define which colors will be used, when the +% \texttt{color} option is specified. +% \begin{macrocode} +\def\thesis@color@setup#1{% + \setkeys{thesis@color}{#1}} +% \end{macrocode} +% \end{macro} +% The following key-value pairs are supported: +% \begin{enumerate} +% \item\marg{\texttt{links}=color} -- Sets the color of hyperref +% links to \textit{color} and stores it under the name +% \texttt{thesis@color@links}. The default color of links is +% specified by the \textsf{hyperref} package. +% \item\marg{\texttt{tableOdd}=color} -- Stores the color of the +% odd rows of the redefined \texttt{tabular} and +% \texttt{tabularx} environments under the name +% \texttt{thesis@color@tableOdd}. +% \item\marg{\texttt{tableEven}=color} -- Stores the color of the +% even rows of the redefined \texttt{tabular} and +% \texttt{tabularx} environments under the name +% \texttt{thesis@color@tableEven}. +% \item\marg{\texttt{tableEmph}=color} -- Stores the color of an +% emphasized cell in a table user under the name +% \texttt{thesis@color@tableEmph}. This color is meant to be +% used manually by the user. +% \end{enumerate} +% \begin{macrocode} +\define@key{thesis@color}{links}{% + \definecolor{thesis@color@links}#1 + \hypersetup{linkbordercolor=thesis@color@links}} +\define@key{thesis@color}{tableOdd}{% + \definecolor{thesis@color@tableOdd}#1} +\define@key{thesis@color}{tableEven}{% + \definecolor{thesis@color@tableEven}#1} +\define@key{thesis@color}{tableEmph}{% + \definecolor{thesis@color@tableEmph}#1} +% \end{macrocode} +% The file defines several blocks to be used in the redefinitions +% of the |\thesis@blocks@preamble| and |\thesis@blocks@postamble| +% macros by the subsequently loaded style files. +% +% \begin{macro}{\thesis@blocks@coverMatter} +% The |\thesis@blocks@coverMatter| macro sets up the style +% of the cover and the title page of the thesis. This amounts +% to disabling the page numbering, so that hyperref links do not +% point to the cover page and the title page instead of the +% initial pages of the main matter. +% \begin{macrocode} +\def\thesis@blocks@coverMatter{% + \pagenumbering{gobble}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@frontMatter} +% The |\thesis@blocks@frontMatter| macro sets up the style +% of the front matter of the thesis. +% \begin{macrocode} +\def\thesis@blocks@frontMatter{% + \thesis@blocks@clear + \pagestyle{plain} + \parindent 1.5em + \setcounter{page}{1} + \pagenumbering{roman}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@clear} +% The |\thesis@blocks@clear| macro clears the current page. +% It also clears the next left-hand (even-numbered) page, when +% double-sided typesetting is enabled. +% \changes{v0.3.45}{2017/05/24}{\cs{thesis@blocks@clear} now only +% sets the pagestyle to |empty|, when there is a left-hand +% (even-numbered) page to clear. [VN]} +% \begin{macrocode} +% \begin{macrocode} +\def\thesis@blocks@clear{% + \ifthesis@twoside@ + \clearpage + \ifodd\value{page}\else% + \thispagestyle{empty}% + \hbox{}% + \newpage + \fi + \else + \newpage + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@clearRight} +% The |\thesis@blocks@clearRight| macro clears the current +% page. It also clears the next right-hand (odd-numbered) page, +% when double-sided typesetting is enabled. +% \begin{macrocode} +\def\thesis@blocks@clearRight{% + \ifthesis@twoside@ + \clearpage + \ifodd\value{page}% + \thispagestyle{empty}% + \hbox{}% + \newpage + \fi + \else + \newpage + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@facultyLogo@monochrome} +% The |\thesis@blocks@facultyLogo@monochrome|\oarg{options} +% macro typesets the |\thesis@logopath\thesis@facultyLogo| logo +% with the given \textit{options} passed to |\includegraphics|. +% \begin{macrocode} +\newcommand{\thesis@blocks@facultyLogo@monochrome}[1]% + [width=40mm]{{% + \edef\@path{\thesis@logopath\thesis@facultyLogo}% + \includegraphics[#1]{\@path}}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@facultyLogo@color} +% The |\thesis@blocks@facultyLogo@color|\oarg{options} +% macro typesets either the |\thesis@logopath\thesis@facultyLogo| +% logo, if the |\ifthesis|\discretionary{}{}{}|@color@| conditional +% is \texttt{false}, or the +% |\thesis@logopath\thesis@facultyLogo-color| logo +% otherwise with the given \textit{options} passed to +% |\includegraphics|. +% \begin{macrocode} +\newcommand{\thesis@blocks@facultyLogo@color}[1]% + [width=40mm]{{% + \edef\@path{\thesis@logopath\thesis@facultyLogo + \ifthesis@color@-color\fi}% + \includegraphics[#1]{\@path}}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@universityLogo@monochrome} +% The |\thesis@blocks@universityLogo@monochrome|\oarg{options} +% macro typesets the +% |\thesis@logopath\thesis@universityLogo| logo +% with the given \textit{options} passed to |\includegraphics|. +% \begin{macrocode} +\newcommand{\thesis@blocks@universityLogo@monochrome}[1]% + [width=40mm]{{% + \edef\@path{\thesis@logopath\thesis@universityLogo}% + \includegraphics[#1]{\@path}}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@universityLogo@color} +% The |\thesis@blocks@universityLogo@color|\oarg{options} +% macro typesets either the |\thesis@logopath\thesis@universityLogo| +% logo, if the |\ifthesis|\discretionary{}{}{}|@color@| conditional +% is \texttt{false}, or the +% |\thesis@logopath\thesis@universityLogo|\discretionary{}{}{}|-color| +% logo otherwise with the given \textit{options} passed to +% |\includegraphics|. +% \begin{macrocode} +\newcommand{\thesis@blocks@universityLogo@color}[1]% + [width=40mm]{{% + \edef\@path{\thesis@logopath\thesis@universityLogo + \ifthesis@color@-color\fi}% + \includegraphics[#1]{\@path}}} +% \end{macrocode} +% The |\thesis@department@name| and |\thesis@field@name| macros and +% their English counterparts provide a level of indirection that +% allows the subsequently loaded style files to parse the values of +% |\thesis@department| and |\thesis@field| (and their English +% counterparts) and map them to human-readable names, which will +% then be typeset. +% \begin{macrocode} +\let\thesis@department@name\thesis@department +\let\thesis@departmentEn@name\thesis@departmentEn +\let\thesis@field@name\thesis@field +\let\thesis@fieldEn@name\thesis@fieldEn +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@cover} +% The |\thesis@blocks@cover| macro typesets the thesis +% cover. It is composed of three macros: +% \begin{itemize} +% \item\DescribeMacro{\thesis@blocks@cover@header}^^A +% |\thesis@blocks@cover@header| -- The header of the cover +% page +% \item\DescribeMacro{\thesis@blocks@cover@content}^^A +% |\thesis@blocks@cover@content| -- The content of the cover +% page +% \item\DescribeMacro{\thesis@blocks@cover@footer}^^A +% |\thesis@blocks@cover@footer| -- The footer of the cover +% page +% \end{itemize} +% This allows the subsequently loaded style files to only redefine +% certain parts of the cover page. +% \begin{macrocode} +\def\thesis@blocks@cover{% + \ifthesis@cover@ + \thesis@blocks@clear + \begin{alwayssingle}% + \thispagestyle{empty}% + \begin{center}% + \thesis@blocks@cover@header + \thesis@blocks@facultyLogo@monochrome\\[0.4in]% + \let\footnotesize\small + \let\footnoterule\relax{}% + \thesis@blocks@cover@content + \par\vfill + \thesis@blocks@cover@footer + \end{center}% + \end{alwayssingle}% + \fi} +% \end{macrocode} +% The output of the |\thesis@blocks@cover@header| macro is +% controlled by the following conditionals: +% \begin{enumerate} +% \item|\ifthesis@blocks@cover@university@| -- This +% conditional expression determines, whether the university +% name is going to be included in the header of the cover. +% The default value of this conditional is \texttt{true}. +% \item|\ifthesis@blocks@cover@faculty@| -- This +% conditional expression determines, whether the faculty +% name is going to be included in the header of the cover. +% The default value of this conditional is \texttt{true}. +% \item|\ifthesis@blocks@cover@department@| -- This +% conditional expression determines, whether the department +% name is going to be included in the header of the cover. +% The default value of this conditional is \texttt{false}. +% \item|\ifthesis@blocks@cover@field@| -- This +% conditional expression determines, whether the field of +% study is going to be included in the header of the cover. +% The default value of this conditional is \texttt{false}. +% \end{enumerate} +% The sebsequently loaded style files can modify the value of these +% conditionals to alter the output of the +% |\thesis@blocks@cover@header| macro without altering its +% definition. +% \begin{macrocode} +\newif\ifthesis@blocks@cover@university@ +\thesis@blocks@cover@university@true +\newif\ifthesis@blocks@cover@faculty@ +\thesis@blocks@cover@faculty@true +\newif\ifthesis@blocks@cover@department@ +\thesis@blocks@cover@department@false +\newif\ifthesis@blocks@cover@field@ +\thesis@blocks@cover@field@false + +\def\thesis@blocks@cover@header{% + {\sc\ifthesis@blocks@cover@university@ + \thesis@titlePage@LARGE\thesis@@{universityName}\\% + \fi\ifthesis@blocks@cover@faculty@ + \thesis@titlePage@Large\thesis@@{facultyName}\\% + \fi\ifthesis@blocks@cover@department@ + \thesis@titlePage@large\thesis@department@name\\% + \fi} + \ifthesis@blocks@cover@field@ + {\thesis@titlePage@large\vskip 1em% + {\bf\thesis@@{fieldTitle}:} \thesis@field@name}% + \fi\vskip 2em} +\def\thesis@blocks@cover@content{% + {\thesis@titlePage@Huge\bf\thesis@TeXtitle\par\vfil}% + \vskip 0.8in% + {\thesis@titlePage@large\sc\thesis@@{typeName}}\\[0.3in]% + {\thesis@titlePage@Large\bf\thesis@author}} +\def\thesis@blocks@cover@footer{% + {\thesis@titlePage@large\thesis@place, \thesis@@{semester}}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\thesis@blocks@titlePage} +% The |\thesis@blocks@titlePage| macro typesets the thesis +% title page. It is composed of three macros: +% \begin{itemize} +% \item|\thesis@blocks@titlePage@header| -- The header of the +% cover page +% \item|\thesis@blocks@titlePage@content| -- The content of the +% cover page +% \item|\thesis@blocks@titlePage@footer| -- The footer of the +% cover page +% \end{itemize} +% This allows the subsequently loaded style files to only redefine +% certain parts of the title page. +% \begin{macrocode} +\def\thesis@blocks@titlePage{% + \thesis@blocks@clear + \begin{alwayssingle}% + \thispagestyle{empty}% + \begin{center}% + \thesis@blocks@titlePage@header + \thesis@blocks@facultyLogo@color\\[0.4in]% + \let\footnotesize\small + \let\footnoterule\relax{}% + \thesis@blocks@titlePage@content + \par\vfill + \thesis@blocks@titlePage@footer + \end{center}% + \end{alwayssingle}} +% \end{macrocode} +% The output of the |\thesis@blocks@titlePage@header| macro is +% controlled by the following conditionals: +% \begin{enumerate} +% \item|\ifthesis@blocks@titlePage@university@| -- This +% conditional expression determines, whether the university +% name is going to be included in the header of the title +% page. The default value of this conditional is +% \texttt{true}. +% \item|\ifthesis@blocks@titlePage@faculty@| -- This +% conditional expression determines, whether the faculty of +% study is going to be included in the header of the title +% page. The default value of this conditional is +% \texttt{true}. +% \item|\ifthesis@blocks@titlePage@department@| -- This +% conditional expression determines, whether the department +% name is going to be included in the header of the title +% page. The default value of this conditional is +% \texttt{false}. +% \item|\ifthesis@blocks@titlePage@field@| -- This +% conditional expression determines, whether the field of +% study is going to be included in the header of the title +% page. The default value of this conditional is +% \texttt{false}. +% \end{enumerate} +% The sebsequently loaded style files can modify the value of these +% conditionals to alter the output of the +% |\thesis@blocks@titlePage@header| macro without altering its +% definition. +% \begin{macrocode} +\newif\ifthesis@blocks@titlePage@university@ +\thesis@blocks@titlePage@university@true +\newif\ifthesis@blocks@titlePage@faculty@ +\thesis@blocks@titlePage@faculty@true +\newif\ifthesis@blocks@titlePage@department@ +\thesis@blocks@titlePage@department@false +\newif\ifthesis@blocks@titlePage@field@ +\thesis@blocks@titlePage@field@false + +\def\thesis@blocks@titlePage@header{% + {\sc\ifthesis@blocks@titlePage@university@ + \thesis@titlePage@LARGE\thesis@@{universityName}\\% + \fi\ifthesis@blocks@titlePage@faculty@ + \thesis@titlePage@Large\thesis@@{facultyName}\\% + \fi\ifthesis@blocks@titlePage@department@ + \thesis@titlePage@large\thesis@department@name\\% + \fi} + \ifthesis@blocks@titlePage@field@ + {\thesis@titlePage@large\vskip 1em% + {\bf\thesis@@{fieldTitle}:} \thesis@field@name}% + \fi\vskip 2em} +\let\thesis@blocks@titlePage@content=\thesis@blocks@cover@content +\let\thesis@blocks@titlePage@footer=\thesis@blocks@cover@footer +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@toc} +% The |\thesis@blocks@toc| macro typesets the table of contents. +% \begin{macrocode} +\def\thesis@blocks@toc{% + \thesis@blocks@clear + \tableofcontents} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@tables} +% The |\thesis@blocks@tables| macro typesets the table of +% contents and optionally the list of tables and the +% list of figures. +% \begin{macrocode} +\def\thesis@blocks@tables{% + \thesis@blocks@toc + \thesis@blocks@lot + \thesis@blocks@lof} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@declaration} +% The |\thesis@blocks@declaration| macro typesets the +% declaration text. +% \begin{macrocode} +\def\thesis@blocks@declaration{% + \thesis@blocks@clear + \begin{alwayssingle}% + \chapter*{\thesis@@{declarationTitle}}% + \thesis@declaration + \vskip 2cm% + \hfill\thesis@author + \end{alwayssingle}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@thanks} +% The |\thesis@blocks@thanks| macro typesets the +% acknowledgements, if the |\thesis@thanks| macro is +% defined. Otherwise, the macro produces no output. +% \begin{macrocode} +\def\thesis@blocks@thanks{% + \ifx\thesis@thanks\undefined\else + \thesis@blocks@clear + \begin{alwayssingle}% + \chapter*{\vspace*{\fill}\thesis@@{thanksTitle}}% + \leavevmode\thesis@thanks + \end{alwayssingle}% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@abstract} +% The |\thesis@blocks@abstract| macro typesets the +% abstract. +% \begin{macrocode} +\def\thesis@blocks@abstract{% + \begin{alwayssingle}% + % Start the new chapter without clearing the left page. + \clearpage + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@@{abstractTitle}}}% + \noindent\thesis@abstract + \par\vfil\null + \end{alwayssingle}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@abstractEn} +% The |\thesis@blocks@abstractEn| macro typesets the +% abstract in English. If the current locale is English, the +% macro produces no output. +% \changes{v0.3.46}{2017/06/02}{Simplified the definition of +% \cs{thesis@blocks@abstractEn} in +% \texttt{style/mu/fithesis-base.sty}. [VN]} +% \begin{macrocode} +\def\thesis@blocks@abstractEn{% + \ifthesis@english\else + {\thesis@selectLocale{english}% + \begin{alwayssingle}% + % Start the new chapter without clearing the left page. + \clearpage + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@english@abstractTitle}}% + \noindent\thesis@abstractEn + \par\vfil\null + \end{alwayssingle}}% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@keywords} +% The |\thesis@blocks@keywords| macro typesets the +% keywords. +% \begin{macrocode} +\def\thesis@blocks@keywords{% + \begin{alwayssingle}% + % Start the new chapter without clearing the left page. + \clearpage + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@@{keywordsTitle}}% + \noindent\thesis@TeXkeywords}% + \par\vfil\null + \end{alwayssingle}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@keywordsEn} +% The |\thesis@blocks@keywordsEn| macro typesets the +% keywords in English. If the current locale is English, the +% macro produces no output. +% \changes{v0.3.46}{2017/06/02}{Simplified the definition of +% \cs{thesis@blocks@keywordsEn} in +% \texttt{style/mu/fithesis-base.sty}. [VN]} +% \begin{macrocode} +\def\thesis@blocks@keywordsEn{% + \ifthesis@english\else + {\thesis@selectLocale{english}% + \begin{alwayssingle}% + % Start the new chapter without clearing the left page. + \clearpage + {\let\thesis@blocks@clear\relax% + \chapter*{\thesis@english@keywordsTitle}}% + \noindent\thesis@TeXkeywordsEn + \par\vfil\null + \end{alwayssingle}}% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@rewind} +% The |\thesis@rewind| macro rewinds the page numbers by either one +% or two pages, depending on whether one-side or two-side +% typesetting is enabled, respectively. +% \begin{macrocode} +\def\thesis@rewind{% + \addtocounter{page}{-\ifthesis@twoside@2\else1\fi}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@assignment} +% The |\thesis@blocks@assignment| macro produces a different output +% depending on the values of the |\thesis@assignmentFiles|. +% |\ifthesis@blocks@assignment@|, +% |\ifthesis@blocks@assignment@hideIfDigital@|, and +% |\ifthesis@digital| macros. +% +% The default value of the +% \DescribeMacro{\ifthesis@blocks@assignment@}^^A +% |\ifthesis@blocks@assignment@| and +% \DescribeMacro{\ifthesis@blocks@assignment@hideIfDigital}^^A +% |\ifthesis@blocks@assignment@hideIfDigital@| conditionals is +% \texttt{true}. +% \begin{macrocode} +\newif\ifthesis@blocks@assignment@ +\thesis@blocks@assignment@true +\newif\ifthesis@blocks@assignment@hideIfDigital@ +\thesis@blocks@assignment@hideIfDigital@true +\def\thesis@blocks@assignment{% +% \end{macrocode} +% If the |\ifthesis@blocks@assignment@| conditional is +% \textsf{true} and the |\thesis@assignmentFiles| macro is +% undefined, then typeset a placeholder page. +% \begin{macrocode} + \ifthesis@blocks@assignment@ + \ifx\thesis@assignmentFiles\undefined + % Rewind the pages and typeset a placeholder page. + \thesis@blocks@clear + \begin{alwayssingle}% + \thispagestyle{empty}\thesis@rewind + \noindent\textit{\thesis@@{assignment}}% + \end{alwayssingle}% + \else +% \end{macrocode} +% Locally define \DescribeMacro{\@inject}|\@inject| as our routine +% for injecting lists of PDF documents. +% \begin{macrocode} + {\edef\@pdfList{\thesis@assignmentFiles}% + \let\ea\expandafter + % Injects the specified PDF documents. + \def\@inject##1,{\thesis@blocks@clear + \def\@args{##1}\def\@relax{\relax}% + \ifx\@args\@relax\else + % Trim leading spaces. + \edef\@trimmed{\romannumeral-`\.##1}% + % Rewind the pages and include the PDF. + \thesis@rewind\includepdf[pages=-]\@trimmed + \ea\@inject\fi}% +% \end{macrocode} +% If the |\ifthesis@blocks@assignment@| conditional is +% \textsf{true} and the |\thesis@assignmentFiles| macro is neither +% undefined nor empty, then typeset a placeholder page, if the +% |\ifthesis@digital@| conditional is \textsf{true} and the +% |\ifthesis@blocks@assignmane@hideIfDigital@| conditional is +% \textsf{true} +% \begin{macrocode} + \ifx\@pdfList\empty\else + \ifthesis@digital@ + \ifthesis@blocks@assignment@hideIfDigital@ + \thesis@blocks@clear + \begin{alwayssingle}% + \thispagestyle{empty}\thesis@rewind + \noindent\textit{\thesis@@{assignment}}% + \end{alwayssingle}% +% \end{macrocode} +% If the |\ifthesis@blocks@assignment@| conditional is +% \textsf{true} and the |\thesis@assignmentFiles| macro is neither +% undefined nor empty, then inject the PDF documents specified in +% the |\thesis@assignmentFiles|, if the |\ifthesis@digital@| +% conditional is \textsf{false} or the +% |\ifthesis@blocks@assignment@hideIfDigital@| conditional is +% \textsf{false}. +% \begin{macrocode} + \else + \ea\@inject\@pdfList,\relax,% + \fi + \else + \ea\@inject\@pdfList,\relax,% + \fi + \fi}% + \fi + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@mainMatter} +% The |\thesis@blocks@mainMatter| macro sets up the style +% of the main matter of the thesis. +% \begin{macrocode} +\def\thesis@blocks@mainMatter{% + \thesis@blocks@clear + \setcounter{page}{1} + \pagenumbering{arabic} + \pagestyle{thesisheadings} + \parindent 1.5em\relax} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@bibEntry} +% The |\thesis@blocks@bibEntry| macro typesets a bibliographical +% entry. Along with the macros required by the locale file +% interface, the \textit{locale} files need to define the following +% strings: +% \begin{itemize} +% \item\texttt{bib@title} -- The title of the entire block +% \item\texttt{bib@pages} -- The abbreviation of pages used in +% the bibliographical entry +% \end{itemize} +% \begin{macrocode} +\def\thesis@blocks@bibEntry{% + \chapter*{\thesis@@{bib@title}} + \noindent\thesis@upper{author@tail}, \thesis@author@head. + \emph{\thesis@title}. \thesis@place: \thesis@@{universityName}, + \thesis@@{facultyName}, \thesis@department@name, \thesis@year. + \thesis@pages\ \thesis@@{bib@pages}. + \thesis@@{advisorTitle}: \thesis@advisor + \thesis@blocks@clearRight} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@bibliography} +% When |\ifthesis@bibliography@loaded@| is true and +% |\ifthesis@bibliography@included@| false, then the +% |\thesis@blocks@bibliography| macro typesets a bibliography via +% the Bib\LaTeX\ package. Otherwise, this macro produces no output. +% \begin{macrocode} +\def\thesis@blocks@bibliography{% + \ifthesis@bibliography@loaded@ + \ifthesis@bibliography@included@\else + \thesis@blocks@clear + {\emergencystretch=3em% + \printbibliography[heading=bibintoc]}% + \fi + \fi} +% \end{macrocode} +% \end{macro} +% The rest of the file comprises redefinitions of \LaTeX\ commands +% and private \texttt{rapport3} class macros altering the layout of +% the resulting document. Depending on the type size of 10, 11 or +% 12 points, either the \texttt{fithesis-10.clo}, +% \texttt{fithesis-11.clo} or \texttt{fithesis-12.clo} file is +% loaded from the |\thesis@stylepath| |mu| directory, respectively. +% \begin{macrocode} +% Table of contents will contain sectioning commands up to +% \subsection. +\setcounter{tocdepth}{2} + +% Sections up to \subsection will be numbered. +\setcounter{secnumdepth}{2} + +% Load the `fithesis-1*.clo` size option. +\input\thesis@stylepath mu/fithesis-1\thesis@ptsize.clo\relax + +% Define the running heading style. +\def\ps@thesisheadings{% + \def\chaptermark##1{% + \markright{% + \ifnum\c@secnumdepth >\m@ne + \thechapter.\ % + \fi ##1}} + \let\@oddfoot\@empty + \let\@oddhead\@empty + \def\@oddhead{% + \vbox{% + \hbox to \textwidth{% + \hfil{\sc\rightmark}}% + \vskip 4pt\hrule}} + \if@twoside + \def\@evenhead{% + \vbox{% + \hbox to \textwidth{% + {\sc\rightmark}% + \hfil} + \vskip 4pt\hrule}} + \else + \let\@evenhead\@oddhead + \fi + \def\@oddfoot{\hfil\PageFont\thepage} + \if@twoside + \def\@evenfoot{\PageFont\thepage\hfil}% + \else + \let\@evenfoot\@oddfoot + \fi + \let\@mkboth\markboth} + +% Redefine the style of the chapter headings. +\renewcommand*\chapter{% + \thesis@blocks@clear + \thispagestyle{plain}% + \global\@topnum\z@ + \@afterindentfalse + \secdef\@chapter\@schapter} + +% Redefine the style of part headings. +\renewcommand*\part{% + \thesis@blocks@clear + \if@twocolumn + \onecolumn + \@tempswatrue + \else + \@tempswafalse + \fi + \hbox{}\vfil + \secdef\@part\@spart} + +% A macro for temporary multicol -> singlecol switching. +\newif\if@restonecol +\def\alwayssingle{% + \@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn\fi} +\def\endalwayssingle{\if@restonecol\twocolumn\fi} + +% Disable uppercasing in PDF strings. +\pdfstringdefDisableCommands{% + \let\MakeUppercase\relax} + +% Set up the ToC entries appearance. +\renewcommand*\toc@font[1]{% + \ifcase #1\relax + \bfseries % \chapter (0) + \or + \slshape % \section (1) + \else + \rmfamily % \subsection (2), \subsubsection (3) + % \paragraph, \subparagraph (4) + \fi} + +% Set up the table of contents entries for sectioning commands. +\renewcommand*\l@part[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty{-\@highpenalty}% + \ifnum \c@tocdepth >0\relax + \addvspace{2.25em \@plus\p@}% + \else + \addvspace{1.0em \@plus\p@}% + \fi + \begingroup + \setlength\@tempdima{3em}% + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + {\leavevmode + \normalfont \bfseries #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par + \nobreak + \global\@nobreaktrue + \everypar{\global\@nobreakfalse\everypar{}}% + \endgroup + \fi} + +\renewcommand*\l@chapter[2]{% + \ifnum \c@tocdepth >0\relax + \addpenalty{-\@highpenalty}% + \addvspace{1.0em \@plus\p@}% + \setlength\@tempdima{1.5em}% + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode \bfseries + \advance\leftskip\@tempdima + \hskip -\leftskip + #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par + \penalty\@highpenalty + \endgroup + \else + \@dottedtocline{0}{0em}{1.5em}{#1}{#2} + \fi} + +\renewcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}} +\renewcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}} +\renewcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}} +\renewcommand*\l@paragraph{\@dottedtocline{4}{10.0em}{5.0em}} +\renewcommand*\l@subparagraph{\@dottedtocline{4}{12.0em}{6.0em}} +% \end{macrocode}\iffalse +% +% \fi\file{style/mu/fithesis-10.clo} +% This file is conditionally loaded by the +% \texttt{style/mu/base.sty} file to redefine the page geometry to +% match the type size of 10 points. +% \begin{macrocode} +%<*opt> +%<*10pt> +\ProvidesFile{fithesis/style/mu/fithesis-10.clo}[2016/05/15] + +\renewcommand{\normalsize}{\fontsize\@xpt{12}\selectfont +\abovedisplayskip 10\p@ plus2\p@ minus5\p@ +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip \z@ plus3\p@ +\belowdisplayshortskip 6\p@ plus3\p@ minus3\p@ +\let\@listi\@listI} + +\renewcommand{\small}{\fontsize\@ixpt{11}\selectfont +\abovedisplayskip 8.5\p@ plus3\p@ minus4\p@ +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip \z@ plus2\p@ +\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@ +\def\@listi{\leftmargin\leftmargini +\topsep 4\p@ plus2\p@ minus2\p@\parsep 2\p@ plus\p@ minus\p@ +\itemsep \parsep}} + +\renewcommand{\footnotesize}{\fontsize\@viiipt{9.5}\selectfont +\abovedisplayskip 6\p@ plus2\p@ minus4\p@ +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip \z@ plus\p@ +\belowdisplayshortskip 3\p@ plus\p@ minus2\p@ +\def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87 +\topsep 3\p@ plus\p@ minus\p@\parsep 2\p@ plus\p@ minus\p@ +\itemsep \parsep}} + +\renewcommand{\scriptsize}{\fontsize\@viipt{8pt}\selectfont} +\renewcommand{\tiny}{\fontsize\@vpt{6pt}\selectfont} +\renewcommand{\large}{\fontsize\@xiipt{14pt}\selectfont} +\renewcommand{\Large}{\fontsize\@xivpt{18pt}\selectfont} +\renewcommand{\LARGE}{\fontsize\@xviipt{22pt}\selectfont} +\renewcommand{\huge}{\fontsize\@xxpt{25pt}\selectfont} +\renewcommand{\Huge}{\fontsize\@xxvpt{30pt}\selectfont} + +% +% \end{macrocode} +% \file{style/mu/fithesis-11.clo} +% This file is conditionally loaded by the +% \texttt{style/mu/base.sty} file to redefine the page geometry to +% match the type size of 11 points. +% \begin{macrocode} +%<*11pt> +\ProvidesFile{fithesis/style/mu/fithesis-11.clo}[2016/05/15] + +\renewcommand{\normalsize}{\fontsize\@xipt{14}\selectfont +\abovedisplayskip 11\p@ plus3\p@ minus6\p@ +\belowdisplayskip \abovedisplayskip +\belowdisplayshortskip 6.5\p@ plus3.5\p@ minus3\p@ +% \abovedisplayshortskip \z@ plus3\@p +\let\@listi\@listI} + +\renewcommand{\small}{\fontsize\@xpt{12}\selectfont +\abovedisplayskip 10\p@ plus2\p@ minus5\p@ +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip \z@ plus3\p@ +\belowdisplayshortskip 6\p@ plus3\p@ minus3\p@ +\def\@listi{\leftmargin\leftmargini +\topsep 6\p@ plus2\p@ minus2\p@\parsep 3\p@ plus2\p@ minus\p@ +\itemsep \parsep}} + +\renewcommand{\footnotesize}{\fontsize\@ixpt{11}\selectfont +\abovedisplayskip 8\p@ plus2\p@ minus4\p@ +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip \z@ plus\p@ +\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@ +\def\@listi{\leftmargin\leftmargini +\topsep 4\p@ plus2\p@ minus2\p@\parsep 2\p@ plus\p@ minus\p@ +\itemsep \parsep}} + +\renewcommand{\scriptsize}{\fontsize\@viiipt{9.5pt}\selectfont} +\renewcommand{\tiny}{\fontsize\@vipt{7pt}\selectfont} +\renewcommand{\large}{\fontsize\@xiipt{14pt}\selectfont} +\renewcommand{\Large}{\fontsize\@xivpt{18pt}\selectfont} +\renewcommand{\LARGE}{\fontsize\@xviipt{22pt}\selectfont} +\renewcommand{\huge}{\fontsize\@xxpt{25pt}\selectfont} +\renewcommand{\Huge}{\fontsize\@xxvpt{30pt}\selectfont} + +% +% \end{macrocode} +% \file{style/mu/fithesis-12.clo} +% This file is conditionally loaded by the +% \texttt{style/mu/base.sty} file to redefine the page geometry to +% match the type size of 12 points. The type dimensions defined by +% the file are stored in the following macros as well: +% \begin{itemize} +% \item\DescribeMacro{\thesis@titlePage@normalsize}% +% |\thesis@titlePage@normalsize| -- Equivalent to |\normalsize| +% \item\DescribeMacro{\thesis@titlePage@small}% +% |\thesis@titlePage@small| -- Equivalent to |\small| +% \item\DescribeMacro{\thesis@titlePage@footnotesize}% +% |\thesis@titlePage@footnotesize| -- Equivalent to +% |\footnotesize| +% \item\DescribeMacro{\thesis@titlePage@scriptsize}% +% |\thesis@titlePage@scriptsize| -- Equivalent to |\scriptsize| +% \item\DescribeMacro{\thesis@titlePage@tiny}% +% |\thesis@titlePage@tiny| -- Equivalent to |\tiny| +% \item\DescribeMacro{\thesis@titlePage@large}% +% |\thesis@titlePage@large| -- Equivalent to |\large| +% \item\DescribeMacro{\thesis@titlePage@Large}% +% |\thesis@titlePage@Large| -- Equivalent to |\Large| +% \item\DescribeMacro{\thesis@titlePage@LARGE}% +% |\thesis@titlePage@LARGE| -- Equivalent to |\LARGE| +% \item\DescribeMacro{\thesis@titlePage@huge}% +% |\thesis@titlePage@huge| -- Equivalent to |\huge| +% \item\DescribeMacro{\thesis@titlePage@Huge}% +% |\thesis@titlePage@Huge| -- Equivalent to |\Huge| +% \end{itemize} +% These macros can be used to typeset elements whose size +% should remain constant regardless of the font size setting. +% \begin{macrocode} +%<*12pt> +\ProvidesFile{fithesis/style/mu/fithesis-12.clo}[2016/05/15] +% + +\def\thesis@titlePage@normalsize{\fontsize\@xiipt{14.5}% +\selectfont\abovedisplayskip 12\p@ plus3\p@ minus7\p@ +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip \z@ plus3\p@ +\belowdisplayshortskip 6.5\p@ plus3.5\p@ minus3\p@ +\let\@listi\@listI} + +\def\thesis@titlePage@small{\fontsize\@xipt{13.6}\selectfont +\abovedisplayskip 11\p@ plus3\p@ minus6\p@ +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip \z@ plus3\p@ +\belowdisplayshortskip 6.5\p@ plus3.5\p@ minus3\p@ +\def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87 +\parsep 4.5\p@ plus2\p@ minus\p@ + \itemsep \parsep + \topsep 9\p@ plus3\p@ minus5\p@}} + +\def\thesis@titlePage@footnotesize{\fontsize\@xpt{12}\selectfont +\abovedisplayskip 10\p@ plus2\p@ minus5\p@ +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip \z@ plus3\p@ +\belowdisplayshortskip 6\p@ plus3\p@ minus3\p@ +\def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87 +\topsep 6\p@ plus2\p@ minus2\p@\parsep 3\p@ plus2\p@ minus\p@ +\itemsep \parsep}} + +\def\thesis@titlePage@scriptsize{\fontsize\@viiipt{9.5pt}\selectfont} +\def\thesis@titlePage@tiny{\fontsize\@vipt{7pt}\selectfont} +\def\thesis@titlePage@large{\fontsize\@xivpt{18pt}\selectfont} +\def\thesis@titlePage@Large{\fontsize\@xviipt{22pt}\selectfont} +\def\thesis@titlePage@LARGE{\fontsize\@xxpt{25pt}\selectfont} +\def\thesis@titlePage@huge{\fontsize\@xxvpt{30pt}\selectfont} +\def\thesis@titlePage@Huge{\fontsize\@xxvpt{30pt}\selectfont} + +%<*12pt> +\renewcommand{\normalsize}{\thesis@titlePage@normalsize} +\renewcommand{\small}{\thesis@titlePage@small} +\renewcommand{\footnotesize}{\thesis@titlePage@footnotesize} +\renewcommand{\scriptsize}{\thesis@titlePage@scriptsize} +\renewcommand{\tiny}{\thesis@titlePage@tiny} +\renewcommand{\large}{\thesis@titlePage@large} +\renewcommand{\Large}{\thesis@titlePage@Large} +\renewcommand{\LARGE}{\thesis@titlePage@LARGE} +\renewcommand{\huge}{\thesis@titlePage@huge} +\renewcommand{\Huge}{\thesis@titlePage@Huge} +% +\let\@normalsize\normalsize +\normalsize + +\if@twoside + \oddsidemargin 0.75in + \evensidemargin 0.4in + \marginparwidth 0pt +\else + \oddsidemargin 0.75in + \evensidemargin 0.75in + \marginparwidth 0pt +\fi +\marginparsep 10pt + +\topmargin 0.4in + +\headheight 20pt +\headsep 10pt +\topskip 10pt +\footskip 30pt + +%<*10pt> +\textheight = 43\baselineskip +\advance\textheight by \topskip +\textwidth 5.0truein +\columnsep 10pt +\columnseprule 0pt + +\footnotesep 6.65pt +\skip\footins 9pt plus 4pt minus 2pt +\floatsep 12pt plus 2pt minus 2pt +\textfloatsep 20pt plus 2pt minus 4pt +\intextsep 12pt plus 2pt minus 2pt +\dblfloatsep 12pt plus 2pt minus 2pt +\dbltextfloatsep 20pt plus 2pt minus 4pt + +\@fptop 0pt plus 1fil +\@fpsep 8pt plus 2fil +\@fpbot 0pt plus 1fil +\@dblfptop 0pt plus 1fil +\@dblfpsep 8pt plus 2fil +\@dblfpbot 0pt plus 1fil +\marginparpush 5pt + +\parskip 0pt plus 1pt +\partopsep 2pt plus 1pt minus 1pt + +% +% +%<*11pt> +\textheight = 39\baselineskip +\advance\textheight by \topskip +\textwidth 5.0truein +\columnsep 10pt +\columnseprule 0pt + +\footnotesep 7.7pt +\skip\footins 10pt plus 4pt minus 2pt +\floatsep 12pt plus 2pt minus 2pt +\textfloatsep 20pt plus 2pt minus 4pt +\intextsep 12pt plus 2pt minus 2pt +\dblfloatsep 12pt plus 2pt minus 2pt +\dbltextfloatsep 20pt plus 2pt minus 4pt + +\@fptop 0pt plus 1fil +\@fpsep 8pt plus 2fil +\@fpbot 0pt plus 1fil +\@dblfptop 0pt plus 1fil +\@dblfpsep 8pt plus 2fil +\@dblfpbot 0pt plus 1fil +\marginparpush 5pt + +\parskip 0pt plus 0pt +\partopsep 3pt plus 1pt minus 2pt + +% +% +%<*12pt> +\textheight = 37\baselineskip +\advance\textheight by \topskip +\textwidth 5.0truein +\columnsep 10pt +\columnseprule 0pt + +\footnotesep 8.4pt +\skip\footins 10.8pt plus 4pt minus 2pt +\floatsep 14pt plus 2pt minus 4pt +\textfloatsep 20pt plus 2pt minus 4pt +\intextsep 14pt plus 4pt minus 4pt +\dblfloatsep 14pt plus 2pt minus 4pt +\dbltextfloatsep 20pt plus 2pt minus 4pt + +\@fptop 0pt plus 1fil +\@fpsep 10pt plus 2fil +\@fpbot 0pt plus 1fil +\@dblfptop 0pt plus 1fil +\@dblfpsep 10pt plus 2fil +\@dblfpbot 0pt plus 1fil +\marginparpush 7pt + +\parskip 0pt plus 0pt +\partopsep 3pt plus 2pt minus 2pt + +% +\@lowpenalty 51 +\@medpenalty 151 +\@highpenalty 301 +\@beginparpenalty -\@lowpenalty +\@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty + +\def\@makechapterhead#1{{% + \setlength\parindent{\z@}% + \setlength\parskip {\z@}% + \Large \ChapFont + \ifnum + \c@secnumdepth >\m@ne + \par\nobreak + \vskip 10\p@ + \thechapter{} \space + \fi #1\par + \nobreak + \vskip 20\p@}} + +\def\@makeschapterhead#1{{% + \setlength\parindent{\z@}% + \setlength\parskip {\z@}% + \Large \ChapFont #1\par + \nobreak + \vskip 20\p@}} + +\def\chapter{% + \clearpage + \thispagestyle{plain} + \global\@topnum\z@ + \@afterindentfalse + \secdef\@chapter\@schapter} + +\def\@chapter[#1]#2{% + \ifnum \c@secnumdepth + >\m@ne + \refstepcounter{chapter}% + \typeout{\@chapapp\space\thechapter.}% + \addcontentsline{toc}{chapter}{\protect + \numberline{\thechapter}\bfseries #1} + \else + \addcontentsline{toc}{chapter}{\bfseries #1} + \fi + \chaptermark{#1}% + \addtocontents{lof}% + {\protect\addvspace{4\p@}} + \addtocontents{lot}% + {\protect\addvspace{4\p@}} + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi +} + +\def\section{\@startsection{section}{1}{\z@}{% + -3.5ex plus-1ex minus-.2ex}{2.3ex plus.2ex}{% + \reset@font\large\bfseries}} +\def\subsection{\@startsection{subsection}{2}{\z@}{% + -3.25ex plus-1ex minus-.2ex}{1.5ex plus.2ex}{% + \reset@font\normalsize\bfseries}} +\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{% + -3.25ex plus-1ex minus-.2ex}{1.5ex plus.2ex}{% + \reset@font\normalsize}} +\def\paragraph{\@startsection{paragraph}{4}{\z@}{% + 3.25ex plus1ex minus.2ex}{-1em}{% + \reset@font\normalsize\bfseries}} +\def\subparagraph{\@startsection{subparagraph}{4}{\parindent}{% + 3.25ex plus1ex minus.2ex}{-1em}{% + \reset@font\normalsize\bfseries}} + +\leftmargini 2.5em +\leftmarginii 2.2em % > \labelsep + width of '(m)' +\leftmarginiii 1.87em % > \labelsep + width of 'vii.' +\leftmarginiv 1.7em % > \labelsep + width of 'M.' +\leftmarginv 1em +\leftmarginvi 1em + +\leftmargin\leftmargini +\labelsep .5em +\labelwidth\leftmargini\advance\labelwidth-\labelsep + +%<*10pt> +\def\@listI{\leftmargin\leftmargini \parsep 4\p@ plus2\p@ minus\p@ +\topsep 8\p@ plus2\p@ minus4\p@ +\itemsep 4\p@ plus2\p@ minus\p@} + +\let\@listi\@listI +\@listi + +\def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 4\p@ plus2\p@ minus\p@ + \parsep 2\p@ plus\p@ minus\p@ + \itemsep \parsep} + +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 2\p@ plus\p@ minus\p@ + \parsep \z@ \partopsep\p@ plus\z@ minus\p@ + \itemsep \topsep} + +\def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep} + +\def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep} + +\def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep} +% +% +%<*11pt> +\def\@listI{\leftmargin\leftmargini \parsep 4.5\p@ plus2\p@ minus\p@ +\topsep 9\p@ plus3\p@ minus5\p@ +\itemsep 4.5\p@ plus2\p@ minus\p@} + +\let\@listi\@listI +\@listi + +\def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 4.5\p@ plus2\p@ minus\p@ + \parsep 2\p@ plus\p@ minus\p@ + \itemsep \parsep} + +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 2\p@ plus\p@ minus\p@ + \parsep \z@ \partopsep \p@ plus\z@ minus\p@ + \itemsep \topsep} + +\def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep} + +\def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep} + +\def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep} +% +% +%<*12pt> +\def\@listI{\leftmargin\leftmargini \parsep 5\p@ plus2.5\p@ minus\p@ +\topsep 10\p@ plus4\p@ minus6\p@ +\itemsep 5\p@ plus2.5\p@ minus\p@} + +\let\@listi\@listI +\@listi + +\def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 5\p@ plus2.5\p@ minus\p@ + \parsep 2.5\p@ plus\p@ minus\p@ + \itemsep \parsep} + +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 2.5\p@ plus\p@ minus\p@ + \parsep \z@ \partopsep \p@ plus\z@ minus\p@ + \itemsep \topsep} + +\def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep} + +\def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep} + +\def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep} +% +% +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/base.ins b/macros/latex/contrib/fithesis/style/mu/base.ins new file mode 100644 index 0000000000..d73cfb271b --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/base.ins @@ -0,0 +1,6 @@ +\input ../../LICENSE +\generate{\file{fithesis-base.sty}{\from{base.dtx}{base}} + \file{fithesis-10.clo}{\from{base.dtx}{opt,10pt}} + \file{fithesis-11.clo}{\from{base.dtx}{opt,11pt}} + \file{fithesis-12.clo}{\from{base.dtx}{opt,12pt}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/econ.dtx b/macros/latex/contrib/fithesis/style/mu/econ.dtx new file mode 100644 index 0000000000..822cbd8621 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/econ.dtx @@ -0,0 +1,344 @@ +% \file{style/mu/fithesis-econ.sty} +% This is the style file for the theses written at the Faculty of +% Economics and Administration at the Masaryk University in Brno. +% It has been prepared in accordance with the formal requirements +% \changes{v0.3.46}{2017/06/02}{The documentation now points to the +% 2/2017 dean's directive for the Faculty of Economics and +% Administration, Masaryk University, Brno. [VN]} +% published at the website of the faculty\footnote{See \url{ht^^A +% tps://is.muni.cz/auth/do/econ/predpisy/smernice/prehled/6715^^A +% 9928/SmerniceDekana2017-c.2-o_zaverecnych_pracich_2017.pdf}}. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-econ}[2018/02/11] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{F27995}, + tableEmph={HTML}{E8B88B}, + tableOdd={HTML}{F5ECEB}, + tableEven={HTML}{EBD8D5}} +% \end{macrocode} +% The bibliography support is enabled. The |authoryear| citations +% are used and the bibliography is sorted by name, title, and year. +% \begin{macrocode} +\thesis@bibliography@setup{ + style=iso-authoryear, + sorting=nty} +\thesis@bibliography@load +% \end{macrocode} +% The file loads the following packages: +% \begin{itemize} +% \item\textsf{tikz} -- Used for dimension arithmetic. +% \item\textsf{geometry} -- Allows for modifications of the type +% area dimensions. +% \item\textsf{array} -- Enables |<{decl.}| and |>{decl.}| +% declarations in table preambles. +% \end{itemize} +% In addition to this, the type area width is set to +% 16\,cm in accordance with the formal requirements of the faculty. +% This leads to overfull lines and is against the good conscience +% of the author of this style. +% \begin{macrocode} +\thesis@require{tikz} +\thesis@require{geometry} +\thesis@require{array} +\geometry{top=25mm,bottom=20mm,left=25mm,right=25mm,includeheadfoot} +% \end{macrocode} +% \changes{v0.3.47}{2017/07/09}{Enabled the inclusion of the +% scanned assignment inside the digital version of the document +% in \texttt{style/mu/fithesis-econ.sty} in accordance with the +% formal requirements of the faculty. The patch was submitted by +% Jana Ratajská. [VN]} +% Enable the inclusion of the scanned assignment inside the digital +% version of the document. +% \begin{macrocode} +\thesis@blocks@assignment@hideIfDigital@false +% \end{macrocode} +% \begin{macro}{\thesis@blocks@cover} +% The |\thesis@blocks@cover| macro typesets the thesis +% cover. +% \begin{macrocode} +\def\thesis@blocks@cover{% + \ifthesis@cover@ + \thesis@blocks@clear + \begin{alwayssingle} + \thispagestyle{empty} + \begin{center} + {\sc\thesis@titlePage@LARGE\thesis@@{universityName}\\% + \thesis@titlePage@Large\thesis@@{facultyName}\\} + \vfill + {\bf\thesis@titlePage@Huge\thesis@@{typeName}} + \vfill + {\thesis@titlePage@large\thesis@place + \ \thesis@year\hfill\thesis@author} + \end{center} + \end{alwayssingle} + \fi} +% \end{macrocode} +% \end{macro} +% The style file configures the title page header to include the +% name of the field of study and redefines the title page content +% not to include the author's name and the title page footer +% to include both the author's and advisor's name, the year and +% place of the thesis defense in accordance with the formal +% requirements of the faculty. +% \begin{macrocode} +\thesis@blocks@titlePage@field@true +\def\thesis@blocks@titlePage@content{% + {\thesis@titlePage@Huge\bf\thesis@TeXtitle} + \ifthesis@english\else + {\\[0.1in]\thesis@titlePage@Large\bf\thesis@TeXtitleEn} + \fi {\\[0.3in]\thesis@titlePage@large\sc\thesis@@{typeName}\\}} +\def\thesis@blocks@titlePage@footer{% + {\thesis@titlePage@large + {% Calculate the width of the thesis author and advisor boxes + \let\@A\relax\newlength{\@A}\settowidth{\@A}{{% + \bf\thesis@@{advisorTitle}:}} + \let\@B\relax\newlength{\@B}\settowidth{\@B}{\thesis@advisor} + \let\@C\relax\newlength{\@C}\settowidth{\@C}{{% + \bf\thesis@@{authorTitle}:}} + \let\@D\relax\newlength{\@D}\settowidth{\@D}{\thesis@author} + \let\@left\relax\newlength{\@left}\pgfmathsetlength{\@left}{% + max(\@A,\@B)} + \let\@right\relax\newlength{\@right}\pgfmathsetlength{\@right}{% + max(\@C,\@D)} +% \end{macrocode} +% \changes{v0.3.49}{2018/02/11}{Removed an extraneous \cs{vskip} in +% the style files for the Masaryk University in Brno. [VN]} +% \begin{macrocode} + % Typeset the thesis author and advisor boxes + \begin{minipage}[t]{\@left} + {\bf\thesis@@{advisorTitle}:}\\\thesis@advisor + \end{minipage}\hfill\begin{minipage}[t]{\@right} + {\bf\thesis@@{authorTitle}:}\\\thesis@author + \end{minipage}}\\[4em]\thesis@place, \thesis@year}} +% \end{macrocode} +% \begin{macro}{\thesis@blocks@frontMatter} +% The |\thesis@blocks@frontMatter| macro sets up the style +% of the front matter of the thesis. The page numbering is arabic +% as per the formal requirements and it is hidden. In case of +% double-sided typesetting, the geometry is altered according to +% the requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@frontMatter{% + \thesis@blocks@clear + % In case of double-sided typesetting, change the geometry + \ifthesis@twoside@ + \newgeometry{top=25mm,bottom=20mm,left=35mm, + right=15mm, includeheadfoot} + \fi\pagestyle{empty} + \parindent 1.5em + \setcounter{page}{1} + \pagenumbering{arabic}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@mainMatter} +% The |\thesis@blocks@mainMatter| macro sets up the style +% of the main matter of the thesis. The page numbering doesn't +% reset at the beginning of the main thesis as per the formal +% requirements. +% \begin{macrocode} +\def\thesis@blocks@mainMatter{% + \thesis@blocks@clear + % In case of double-sided typesetting, change the geometry + \ifthesis@twoside@ + \newgeometry{top=25mm,bottom=20mm,left=35mm, + right=15mm, includeheadfoot} + \fi\pagestyle{thesisheadings} + \parindent 1.5em\relax} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@tables} +% The |\thesis@blocks@tables| macro optionally typesets the +% |\listoftables| and |\listoffigures|. +% \begin{macrocode} +\def\thesis@blocks@tables{% + \thesis@blocks@lot + \thesis@blocks@lof} +% \end{macrocode} +% \end{macro} +% If the |nolot| and |nolof| options haven't been specified, the +% |\thesis@blocks@lot| and |\thesis@blocks@lof| macros are +% redefined to create an entry in the table of contents. +% \begin{macrocode} +\ifx\thesis@blocks@lot\relax\else + \def\thesis@blocks@lot{% + \thesis@blocks@clear + \phantomsection + \addcontentsline{toc}{chapter}{\listtablename}% + \listoftables} +\fi + +\ifx\thesis@blocks@lof\relax\else + \def\thesis@blocks@lof{% + \thesis@blocks@clear + \phantomsection + \addcontentsline{toc}{chapter}{\listfigurename}% + \listoffigures} +\fi +% \end{macrocode} +% \begin{macro}{\thesis@blocks@declaration} +% The |\thesis@blocks@declaration| macro typesets the declaration +% text. Unlike the generic |\thesis@blocks@declaration| macro from +% the \texttt{style/mu/fithesis-sci.sty} file, this definition +% includes the date and a blank line for the author's signature, as +% per the requirements of the faculty. +% \changes{v0.3.46}{2017/06/02}{Redefined +% \cs{thesis@blocks@declaration} in +% \texttt{style/mu/fithesis-econ.sty} in accordance with the +% example documents. The patch was submitted by Jana Ratajská. +% [VN]} +% \begin{macrocode} +\def\thesis@blocks@declaration{% + \begin{alwayssingle}% + \thesis@blocks@clear + \leavevmode\vfill + % Start the new chapter without clearing any page. + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@@{declarationTitle}}}% + \thesis@declaration + \vskip 2cm% + {\let\@A\relax\newlength{\@A} + \settowidth{\@A}{\thesis@@{authorSignature}} + \setlength{\@A}{\@A+1cm} + \noindent\thesis@place, \thesis@@{formattedDate}\hfill + \begin{minipage}[t]{\@A}% + \centering\rule{\@A}{1pt}\\ + \thesis@@{authorSignature}\par + \end{minipage}} + \end{alwayssingle}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@abstract} +% \changes{v0.3.46}{2017/06/02}{Redefined +% \cs{thesis@blocks@abstract}, \cs{thesis@blocks@abstractEn}, +% \cs{thesis@blocks@keywords}, and \cs{thesis@blocks@keywordsEn} +% in \texttt{style/mu/fithesis-econ.sty} in accordance with the +% example documents. The patch was submitted by Jana Ratajská. +% [VN]} +% The |\thesis@blocks@abstract| macro typesets the +% abstract. This definition typesets the abstract on the same page. +% \begin{macrocode} +\def\thesis@blocks@abstract{% + \begin{alwayssingle}% + \vskip 40\p@ + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@@{abstractTitle}}}% + \noindent\thesis@abstract + \end{alwayssingle}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@abstractEn} +% The |\thesis@blocks@abstractEn| macro typesets the abstract in +% English. If the current locale is English, the macro produces no +% output. This macro typesets the abstract on the same page. +% \begin{macrocode} +\def\thesis@blocks@abstractEn{% + \ifthesis@english\else + {\thesis@selectLocale{english}% + \begin{alwayssingle}% + \vskip 20\p@ + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@english@abstractTitle}}% + \noindent\thesis@abstractEn + \end{alwayssingle}}% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@keywords} +% The |\thesis@blocks@keywords| macro typesets the keywords. This +% definition typesets the keywords on the same page. +% \begin{macrocode} +\def\thesis@blocks@keywords{% + \begin{alwayssingle}% + \vskip 40\p@ + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@@{keywordsTitle}}% + \noindent\thesis@TeXkeywords}% + \end{alwayssingle}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@keywordsEn} +% The |\thesis@blocks@keywordsEn| macro typesets the keywords in +% English. If the current locale is English, the macro produces no +% output. +% \begin{macrocode} +\def\thesis@blocks@keywordsEn{% + \ifthesis@english\else + {\thesis@selectLocale{english}% + \begin{alwayssingle}% + \vskip 20\p@ + {\let\thesis@blocks@clear\relax% + \chapter*{\thesis@english@keywordsTitle}}% + \noindent\thesis@TeXkeywordsEn + \end{alwayssingle}}% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@bibEntry} +% The |\thesis@blocks@bibEntry| macro typesets a bibliographical +% entry. Along with the macros required by the locale file +% interface, the locale files need to define the following macros: +% \begin{itemize} +% \item|\thesis@|\textit{locale}|@bib@author| -- The label of the +% author name entry +% \item|\thesis@|\textit{locale}|@bib@title| -- The label of the +% title name entry +% \item|\thesis@|\textit{locale}|@bib@titleEn| -- The label of the +% English title name entry (\cs{thesis@english@bib@titleEn} +% does not need to be defined) +% \item|\thesis@|\textit{locale}|@bib@department| -- The label of +% the department name entry +% \item|\thesis@|\textit{locale}|@bib@advisor| -- The label of +% the advisor name entry +% \item|\thesis@|\textit{locale}|@bib@year| -- The label of the +% year entry +% \end{itemize} +% \changes{v0.3.46}{2017/06/02}{Defined \cs{thesis@blocks@bibEntry} +% in \texttt{style/mu/fithesis-econ.sty} in accordance with the +% example documents. The patch was submitted by Jana Ratajská. +% [VN]} +% \begin{macrocode} +\def\thesis@blocks@bibEntry{% + \thesis@blocks@clear + \noindent\begin{thesis@newtable@old}{@{}>{\bfseries}ll@{}} + \thesis@@{bib@author}: & \thesis@author \\ + \thesis@@{bib@thesisTitle}: & \thesis@title \\ + \ifthesis@english\else + \thesis@@{bib@thesisTitleEn}: & \thesis@titleEn \\ + \fi + \thesis@@{bib@department}: & \thesis@department \\ + \thesis@@{bib@advisor}: & \thesis@advisor \\ + \thesis@@{bib@year}: & \thesis@year \\ + \end{thesis@newtable@old}} +% \end{macrocode} +% \end{macro} +% Note that there is no direct support for the seminar paper and +% thesis proposal types. If you would like to change the contents +% of the preamble and the postamble, you should modify the +% |\thesis@blocks@preamble| and |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble that are not defined +% within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@preamble{% + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@frontMatter + \thesis@blocks@titlePage + \thesis@blocks@assignment + \thesis@blocks@bibEntry + \thesis@blocks@abstract + \thesis@blocks@abstractEn + \thesis@blocks@keywords + \thesis@blocks@keywordsEn + \thesis@blocks@declaration + \thesis@blocks@thanks + \thesis@blocks@toc} +% \end{macrocode} +% All blocks within the autolayout postamble that are not defined +% within this file are defined in the \texttt{style/mu/base.sty} +% file. +% \begin{macrocode} +\def\thesis@blocks@postamble{% + \thesis@blocks@bibliography + \thesis@blocks@tables} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/econ.ins b/macros/latex/contrib/fithesis/style/mu/econ.ins new file mode 100644 index 0000000000..a6689764cf --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/econ.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-econ.sty}{\from{econ.dtx}{}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/fi.dtx b/macros/latex/contrib/fithesis/style/mu/fi.dtx new file mode 100644 index 0000000000..e1fc1e28c9 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/fi.dtx @@ -0,0 +1,134 @@ +% \file{style/mu/fithesis-fi.sty} +% This is the style file for the theses written at the Faculty of +% Informatics at the Masaryk University in Brno. It has been +% prepared in accordance with the formal requirements published at +% the website of the faculty\footnote{See +% \url{http://www.fi.muni.cz/docs/BP_DP_na_FI.pdf}}. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-fi}[2016/04/18] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{FFD451}, + tableEmph={HTML}{FFD451}, + tableOdd={HTML}{FFF9E5}, + tableEven={HTML}{FFECB3}} +% \end{macrocode} +% The bibliography support is enabled. The |numeric| citations are +% used and the bibliography is sorted in citation order. +% \begin{macrocode} +\thesis@bibliography@setup{ + style=iso-numeric, + sorting=none} +\thesis@bibliography@load +% \end{macrocode} +% In case of rigorous and doctoral theses, the style file hides the +% thesis assignment in accordance with the formal requirements of +% the faculty. +% \begin{macrocode} +\ifx\thesis@type\thesis@rigorous + \thesis@blocks@assignment@false +\else\ifx\thesis@type\thesis@doctoral + \thesis@blocks@assignment@false +\fi\fi +% \end{macrocode} +% \begin{macro}{\thesis@blocks@titlePage} +% The style file redefines the cover and title page footers to +% include the thesis advisor's name and signature in case of a +% rigorous thesis. Along with the macros required by the +% locale file interface, the locale files need to define the +% following strings: +% \begin{itemize} +% \item\texttt{advisorSignature} -- The label of the advisor +% signature field typeset in the case of rigorous theses +% \end{itemize} +% \begin{macrocode} +\def\thesis@blocks@advisor{% + {\thesis@titlePage@large\\[0.3in] + {\bf\thesis@@{advisorTitle}:} \thesis@advisor}} +\def\thesis@blocks@titlePage@content{% + {\thesis@titlePage@Huge\bf\thesis@TeXtitle\par\vfil}\vskip 0.8in + {\thesis@titlePage@large\sc\thesis@@{typeName}\\[0.3in]} + {\thesis@titlePage@Large\bf\thesis@author} + % If this is a rigorous thesis or a PhD thesis proposal, + % typeset the name of the thesis advisor. + \ifx\thesis@type\thesis@rigorous + \thesis@blocks@advisor + \else\ifx\thesis@type\thesis@proposal + \thesis@blocks@advisor + \fi\fi}% +\def\thesis@blocks@advisorSignature{% + \let\@A\relax\newlength{\@A} + \settowidth{\@A}{\thesis@@{advisorSignature}} + \setlength{\@A}{\@A+1cm} + \hfill\raisebox{-0.5em}{\parbox{\@A}{ + \centering + \rule{\@A}{1pt}\\ + \thesis@@{advisorSignature} + }}}% +\def\thesis@blocks@titlePage@footer{% + {\thesis@titlePage@large\thesis@place, \thesis@@{semester} + % If this is a rigorous thesis or a PhD thesis proposal, + % create space for the advisor's signature. + \ifx\thesis@type\thesis@rigorous + \thesis@blocks@advisorSignature + \else\ifx\thesis@type\thesis@proposal + \thesis@blocks@advisorSignature + \fi\fi}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@declaration} +% The |\thesis@blocks@declaration| macro typesets the +% declaration text. Compared to the definition within the +% \texttt{style/mu/base.sty} file, this macro also +% typesets the advisor's name at the bottom of the page. +% \begin{macrocode} +\def\thesis@blocks@declaration{% + \thesis@blocks@clear + \begin{alwayssingle}% + \chapter*{\thesis@@{declarationTitle}}% + \thesis@declaration + \vskip 2cm% + \hfill\thesis@author + \par\vfill\noindent + \textbf{\thesis@@{advisorTitle}:} \thesis@advisor + \par\vfil + \end{alwayssingle}} +% \end{macrocode} +% \end{macro} +% In Ph.D. theses, only the table of contents will be typeset in +% the front matter as per the formal requirements of the +% faculty\footnote{See +% \url{http://is.muni.cz/www/2575/dtedi/index_en.html}}. +% +% Note that there is no direct support for the seminar paper type. +% If you would like to change the contents of the preamble and the +% postamble, you should modify the |\thesis@blocks@preamble| and +% |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble and postamble that are +% not defined within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@preamble{% + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@titlePage + \thesis@blocks@frontMatter + \ifx\thesis@type\thesis@proposal + \thesis@blocks@toc + \else + \thesis@blocks@assignment + \thesis@blocks@declaration + \thesis@blocks@thanks + \thesis@blocks@clearRight + \thesis@blocks@abstract + \thesis@blocks@keywords + \thesis@blocks@tables + \fi} +\def\thesis@blocks@postamble{% + \thesis@blocks@bibliography} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/fi.ins b/macros/latex/contrib/fithesis/style/mu/fi.ins new file mode 100644 index 0000000000..ccf9506218 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/fi.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-fi.sty}{\from{fi.dtx}{}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/fsps.dtx b/macros/latex/contrib/fithesis/style/mu/fsps.dtx new file mode 100644 index 0000000000..02c8c2da1b --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/fsps.dtx @@ -0,0 +1,173 @@ +% \file{style/mu/fithesis-fsps.sty} +% This is the style file for the theses written at the Faculty of +% Sports Studies at the Masaryk University in Brno. It has been +% prepared in accordance with the formal requirements published at +% the website of the faculty\footnote{See \url{https://is.muni.cz/^^A +% auth/do/fsps/studijni/info-stud/SZZ/pokyny_ZP_13-5-2013.pdf}}. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-fsps}[2018/02/11] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{93BCF5}, + tableEmph={HTML}{A8BDE3}, + tableOdd={HTML}{EBEFF5}, + tableEven={HTML}{D1DAEB}} +% \end{macrocode} +% The bibliography support is enabled. The |authoryear| citations +% are used and the bibliography is sorted by name, title, and year. +% \begin{macrocode} +\thesis@bibliography@setup{ + style=iso-authoryear, + sorting=nty} +\thesis@bibliography@load +% \end{macrocode} +% The file loads the following packages: +% \begin{itemize} +% \item\textsf{tikz} -- Used for dimension arithmetic. +% \item\textsf{geometry} -- Allows for modifications of the type +% area dimensions. +% \item\textsf{setspace} -- Allows for line height modifications. +% \end{itemize} +% In addition to this, the type area width is set to +% 14\,cm in accordance with the formal requirements of the faculty. +% \begin{macrocode} +\thesis@require{tikz} +\thesis@require{geometry} +\thesis@require{setspace} +\geometry{top=30mm,bottom=30mm,left=40mm,right=30mm,includeheadfoot} +% \end{macrocode} +% The paragraph indentation is 1.25\,cm as per the requirements of the faculty. +% \begin{macrocode} +\setlength{\parindent}{1.25cm} +% \end{macrocode} +% The style file redefines the title page content +% not to include the author's name and the title page footer +% to include both the author's and advisor's name, the year and +% place of the thesis defense in accordance with the formal +% requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@titlePage@footer{% + {\thesis@titlePage@large + {% Calculate the width of the thesis author and advisor boxes + \let\@A\relax\newlength{\@A}\settowidth{\@A}{{% + \bf\thesis@@{advisorTitle}:}} + \let\@B\relax\newlength{\@B}\settowidth{\@B}{\thesis@advisor} + \let\@C\relax\newlength{\@C}\settowidth{\@C}{{% + \bf\thesis@@{authorTitle}:}} + \let\@D\relax\newlength{\@D}\settowidth{\@D}{\thesis@author} + \let\@E\relax\newlength{\@E}\settowidth{\@E}{\thesis@field} + \let\@F\relax\newlength{\@F}\pgfmathsetlength{\@F}{max(\@D,\@E)} + \let\@left\relax\newlength{\@left}\pgfmathsetlength{\@left}{% + max(\@A,\@B)} + \let\@right\relax\newlength{\@right}\pgfmathsetlength{\@right}{% + max(\@C,\@F)} +% \end{macrocode} +% \changes{v0.3.49}{2018/02/11}{Removed an extraneous \cs{vskip} in +% the style files for the Masaryk University in Brno. [VN]} +% \begin{macrocode} + % Typeset the thesis author and advisor boxes + \begin{minipage}[t]{\@left} + {\bf\thesis@@{advisorTitle}:}\\\thesis@advisor + \end{minipage}\hfill\begin{minipage}[t]{\@right} + {\bf\thesis@@{authorTitle}:}\\\thesis@author\\\thesis@field + \end{minipage}}\\[4em]\thesis@place, \thesis@year}} +% \end{macrocode} +% \begin{macro}{\thesis@blocks@frontMatter} +% The |\thesis@blocks@frontMatter| macro sets up the style of the +% front matter of the thesis. The leading is adjusted in +% accordance with the requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@frontMatter{% + \thesis@blocks@clear + \pagestyle{plain} + \parindent 1.5em + \setcounter{page}{1} + \pagenumbering{roman} + \onehalfspacing} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@mainMatter} +% The |\thesis@blocks@mainMatter| macro sets up the style +% of the main matter of the thesis. The leading is adjusted in +% accordance with the requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@mainMatter{% + \thesis@blocks@clear + \setcounter{page}{1} + \pagenumbering{arabic} + \pagestyle{thesisheadings} + \parindent 1.5em + \onehalfspacing} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@bibliography} +% The |\thesis@blocks@bibliography| macro typesets the +% bibliography. The leading is adjusted in accordance +% with the requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@bibliography{% + \ifthesis@bibliography@loaded@ + \ifthesis@bibliography@included@\else + \singlespacing + \thesis@blocks@clear + {\emergencystretch=3em% + \printbibliography[heading=bibintoc]}% + \fi + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@declaration} +% The |\thesis@blocks@declaration| macro typesets the declaration +% text. Unlike the generic |\thesis@blocks@declaration| macro from +% the \texttt{style/mu/fithesis-sci.sty} file, this definition +% includes the date and a blank line for the author's signature, as +% per the requirements of the faculty. +% +% Along with the macros required by the locale file interface, the +% locale files need to define the following macros: +% \begin{itemize} +% \item|\thesis@|\textit{locale}|@authorSignature| -- The +% label of the author's signature field +% \item|\thesis@|\textit{locale}|@formattedDate| -- A +% formatted date +% \end{itemize} +% \begin{macrocode} +\def\thesis@blocks@declaration{% + \thesis@blocks@clear + \begin{alwayssingle}% + \chapter*{\thesis@@{declarationTitle}}% + \thesis@declaration + \vskip 2cm% + {\let\@A\relax\newlength{\@A} + \settowidth{\@A}{\thesis@@{authorSignature}} + \setlength{\@A}{\@A+1cm} + \noindent\thesis@place, \thesis@@{formattedDate}\hfill + \begin{minipage}[t]{\@A}% + \centering\rule{\@A}{1pt}\\ + \thesis@@{authorSignature}\par + \end{minipage}} + \end{alwayssingle}} +% \end{macrocode} +% \end{macro} +% Note that there is no direct support for the seminar paper and +% thesis proposal types. If you would like to change the contents +% of the preamble and the postamble, you should modify the +% |\thesis@blocks@preamble| and |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble and postamble that are +% not defined within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@preamble{% + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@titlePage + \thesis@blocks@frontMatter + \thesis@blocks@declaration + \thesis@blocks@thanks + \thesis@blocks@tables} +\def\thesis@blocks@postamble{% + \thesis@blocks@bibliography} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/fsps.ins b/macros/latex/contrib/fithesis/style/mu/fsps.ins new file mode 100644 index 0000000000..cc6eba67fd --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/fsps.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-fsps.sty}{\from{fsps.dtx}{}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/fss.dtx b/macros/latex/contrib/fithesis/style/mu/fss.dtx new file mode 100644 index 0000000000..bea5704bce --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/fss.dtx @@ -0,0 +1,75 @@ +% \file{style/mu/fithesis-fss.sty} +% This is the style file for the theses written at the Faculty of +% Social Studies at the Masaryk University in Brno. Because of the +% inexistence of faculty-wide formal requirements and +% recommendations with each department defining their own with +% varying degrees of +% rigour\footnote{\raggedright See +% \url{http://psych.fss.muni.cz/node/351}, +% \url{http://medzur.fss.muni.cz/informace-pro-studenty/pravidla^^A +% -pro-diplomky/soubory/Pravidla pro zaverecne prace na KMSZ - v^^A +% er. 2-83.doc}, \url{http://soc.fss.muni.cz/?q=node/44}, \url{h^^A +% ttp://polit.fss.muni.cz/informace-pro-studenty/pol/}, \url{htt^^A +% p://humenv.fss.muni.cz/studium/bakalarske-studium/pravidla-pro^^A +% -vypracovani-bakalarske-prace}}, this style is a mere skeleton, +% which is unlikely to satisfy the exact requirements of any +% department and will require modification by the user. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-fss}[2016/04/18] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{58EDD7}, + tableEmph={HTML}{69D6C6}, + tableOdd={HTML}{E3F1EE}, + tableEven={HTML}{C5E3DF}} +% \end{macrocode} +% The bibliography support is enabled. The |authoryear| citations +% are used and the bibliography is sorted by name, title, and year. +% \begin{macrocode} +\thesis@bibliography@setup{ + style=iso-authoryear, + sorting=nty} +\thesis@bibliography@load +% \end{macrocode} +% \begin{macro}{\thesis@blocks@frontMatter} +% The |\thesis@blocks@frontMatter| macro sets up the style +% of the front matter of the thesis. +% \begin{macrocode} +\def\thesis@blocks@frontMatter{% + \pagestyle{plain} + \parindent 1.5em + \setcounter{page}{1} + \pagenumbering{roman}} +% \end{macrocode} +% \end{macro} +% Note that there is no direct support for the seminar paper and +% thesis proposal types. If you would like to change the contents +% of the preamble and the postamble, you should modify the +% |\thesis@blocks@preamble| and |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble and postamble that are +% not defined within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@preamble{% + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@titlePage + \thesis@blocks@frontMatter + \thesis@blocks@clearRight + \thesis@blocks@abstract + \thesis@blocks@abstractEn + \thesis@blocks@keywords + \thesis@blocks@keywordsEn + \thesis@blocks@assignment + \thesis@blocks@declaration + \thesis@blocks@thanks + \thesis@blocks@tables} +\def\thesis@blocks@postamble{% + \thesis@blocks@bibliography} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/fss.ins b/macros/latex/contrib/fithesis/style/mu/fss.ins new file mode 100644 index 0000000000..8a2df3b0b9 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/fss.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-fss.sty}{\from{fss.dtx}{}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/law.dtx b/macros/latex/contrib/fithesis/style/mu/law.dtx new file mode 100644 index 0000000000..9c7cb865f8 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/law.dtx @@ -0,0 +1,97 @@ +% \file{style/mu/fithesis-law.sty} +% This is the style file for the theses written at the Faculty of +% Law at the Masaryk University in Brno. It has been prepared in +% accordance with the formal requirements published at the +% website of the faculty\footnote{See \url{http://is.muni.cz/d^^A +% o/law/ud/predp/smer/S-07-2012.pdf}}. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-law}[2017/05/21] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{CF86EB}, + tableEmph={HTML}{D39BE8}, + tableOdd={HTML}{F2EBF5}, + tableEven={HTML}{E5CCED}} +% \end{macrocode} +% The bibliography support is enabled. The |authoryear| citations +% are used and the bibliography is sorted by name, year, and title. +% \begin{macrocode} +\thesis@bibliography@setup{% + style=iso-authoryear, + sorting=nyt} +\thesis@bibliography@load +% \end{macrocode} +% The style file configures the cover and title page headers to +% include only the faculty name and the department name. +% Along with the macros required by the locale file interface, +% the locale files need to define the following strings: +% \begin{itemize} +% \item\texttt{facultyLongName} -- The name of the faculty +% combined with the name of the university. +% \end{itemize} +% \begin{macrocode} +\def\thesis@blocks@cover@header{% + {\sc\thesis@titlePage@Large\thesis@@{facultyLongName}\\% + \thesis@titlePage@large\thesis@department@name\\\vskip 2em}} +\let\thesis@blocks@titlePage@header=\thesis@blocks@cover@header +% \end{macrocode} +% \begin{macro}{\thesis@blocks@frontMatter} +% The |\thesis@blocks@frontMatter| macro sets up the style +% of the front matter of the thesis. The page numbering is arabic +% in accordance with the formal requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@frontMatter{% + \thesis@blocks@clear + \pagestyle{plain} + \parindent 1.5em + \setcounter{page}{1} + \pagenumbering{arabic}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@mainMatter} +% The |\thesis@blocks@mainMatter| macro sets up the style +% of the main matter of the thesis. The page numbering doesn't +% reset at the beginning of the main thesis in accordance with the +% formal requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@mainMatter{% + \thesis@blocks@clear + \pagestyle{thesisheadings} + \parindent 1.5em\relax} +% \end{macrocode} +% \end{macro} +% Note that there is no direct support for the seminar paper and +% thesis proposal types. If you would like to change the contents +% of the preamble and the postamble, you should modify the +% |\thesis@blocks@preamble| and |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble that are not defined +% within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@preamble{% + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@titlePage + \thesis@blocks@frontMatter + \thesis@blocks@declaration + \thesis@blocks@clearRight + \thesis@blocks@abstract + \thesis@blocks@abstractEn + \thesis@blocks@keywords + \thesis@blocks@keywordsEn + \thesis@blocks@thanks + \thesis@blocks@tables} +% \end{macrocode} +% All blocks within the autolayout postamble that are not defined +% within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@postamble{% + \thesis@blocks@bibliography + \thesis@blocks@assignment} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/law.ins b/macros/latex/contrib/fithesis/style/mu/law.ins new file mode 100644 index 0000000000..c688afd3ec --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/law.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-law.sty}{\from{law.dtx}{}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/med.dtx b/macros/latex/contrib/fithesis/style/mu/med.dtx new file mode 100644 index 0000000000..323f3de902 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/med.dtx @@ -0,0 +1,168 @@ +% \file{style/mu/fithesis-med.sty} +% This is the style file for the theses written at the Faculty of +% Medicine at the Masaryk University in Brno. It has been prepared +% in accordance with the formal requirements published at the +% website of the Department of Optometry and Orthoptics\footnote^^A +% {See \url{http://is.muni.cz/do/med/zpravyprac/Optometrie/NALE^^A +% ZITOSTI_ZAVERECNE_PRACE.doc}}. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-med}[2018/02/11] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{F58E76}, + tableEmph={HTML}{FF9D85}, + tableOdd={HTML}{FFF5F6}, + tableEven={HTML}{FFDEDF}} +% \end{macrocode} +% The bibliography support is enabled. The |authoryear| citations +% are used and the bibliography is sorted by year, name, and title. +% \begin{macrocode} +\thesis@bibliography@setup{% + style=iso-authoryear, + sorting=ynt} +\thesis@bibliography@load +% \end{macrocode} +% The file loads the following packages: +% \begin{itemize} +% \item\textsf{tikz} -- Used for dimension arithmetic. +% \item\textsf{geometry} -- Allows for modifications of the type +% area dimensions. +% \item\textsf{setspace} -- Allows for line height modifications. +% \end{itemize} +% In addition to this, the type area width is set to +% 16\,cm in accordance with the formal requirements of the faculty. +% This leads to overfull lines and is against the good conscience +% of the author of this style. +% \begin{macrocode} +\thesis@require{tikz} +\thesis@require{geometry} +\thesis@require{setspace} +\geometry{top=25mm,bottom=20mm,left=25mm,right=25mm,includeheadfoot} +% \end{macrocode} +% \begin{macro}{\thesis@blocks@cover} +% The |\thesis@blocks@cover| macro typesets the thesis +% cover. +% \begin{macrocode} +\def\thesis@blocks@cover{% + \ifthesis@cover@ + \thesis@blocks@clear + \begin{alwayssingle} + \thispagestyle{empty} + \begin{center} + {\sc\thesis@titlePage@LARGE\thesis@@{universityName}\\% + \thesis@titlePage@Large\thesis@@{facultyName}\\} + \vfill + {\bf\thesis@titlePage@Huge\thesis@@{typeName}} + \vfill + {\thesis@titlePage@large\thesis@place + \ \thesis@year\hfill\thesis@author} + \end{center} + \end{alwayssingle} + \fi} +% \end{macrocode} +% \end{macro} +% The style file redefines the title page content +% not to include the author's name and the title page footer +% to include both the author's and advisor's name, the field of +% study and the semester and place of the thesis defense in +% accordance with the requirements of the department. +% \begin{macrocode} +\def\thesis@blocks@titlePage@content{% + {\thesis@titlePage@Huge\bf\thesis@TeXtitle\\[0.3in]}% + {\thesis@titlePage@large{\sc\thesis@@{typeName}}\\}} +\def\thesis@blocks@titlePage@footer{% + {\thesis@titlePage@large + {% Calculate the width of the thesis author and advisor boxes + \let\@A\relax\newlength{\@A}\settowidth{\@A}{{% + \bf\thesis@@{advisorTitle}:}} + \let\@B\relax\newlength{\@B}\settowidth{\@B}{\thesis@advisor} + \let\@C\relax\newlength{\@C}\settowidth{\@C}{{% + \bf\thesis@@{authorTitle}:}} + \let\@D\relax\newlength{\@D}\settowidth{\@D}{\thesis@author} + \let\@E\relax\newlength{\@E}\settowidth{\@E}{{% + \bf\thesis@@{fieldTitle}:}} + \let\@F\relax\newlength{\@F}\settowidth{\@F}{\thesis@field@name} + \let\@left\relax\newlength{\@left}\pgfmathsetlength{\@left}{% + max(\@A,\@B)} + \let\@right\relax\newlength{\@right}\pgfmathsetlength{\@right}{% + max(\@C,\@D,\@E,\@F)} +% \end{macrocode} +% \changes{v0.3.49}{2018/02/11}{Removed an extraneous \cs{vskip} in +% the style files for the Masaryk University in Brno. [VN]} +% \begin{macrocode} + % Typeset the thesis author and advisor boxes + \begin{minipage}[t]{\@left} + {\bf\thesis@@{advisorTitle}:}\\\thesis@advisor + \end{minipage}\hfill\begin{minipage}[t]{\@right} + {\bf\thesis@@{authorTitle}:}\\\thesis@author + \\[1em]{\bf\thesis@@{fieldTitle}:}\\\thesis@field@name + \end{minipage}}\\[4em]\thesis@place, \thesis@@{semester}}} +% \end{macrocode} +% \begin{macro}{\thesis@blocks@frontMatter} +% The |\thesis@blocks@frontMatter| macro sets up the style of the +% front matter of the thesis. The page numbering is arabic in +% accordance with the formal requirements and it is hidden. In case +% of double-sided typesetting, the geometry is altered according to +% the requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@frontMatter{% + \thesis@blocks@clear + % In case of double-sided typesetting, change the geometry + \ifthesis@twoside@ + \newgeometry{top=25mm,bottom=20mm,left=35mm, + right=15mm, includeheadfoot} + \fi\pagestyle{empty} + \parindent 1.5em + \setcounter{page}{1} + \pagenumbering{roman}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@mainMatter} +% The |\thesis@blocks@mainMatter| macro sets up the style +% of the main matter of the thesis. The leading is adjusted in +% accordance with the requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@mainMatter{% + \thesis@blocks@clear + % In case of double-sided typesetting, change the geometry + \ifthesis@twoside@ + \newgeometry{top=25mm,bottom=20mm,left=35mm, + right=15mm, includeheadfoot} + \fi\setcounter{page}{1} + \pagenumbering{arabic} + \pagestyle{thesisheadings} + \parindent 1.5em + \onehalfspacing} +% \end{macrocode} +% \end{macro} +% Note that there is no direct support for the seminar paper and +% thesis proposal types. If you would like to change the contents +% of the preamble and the postamble, you should modify the +% |\thesis@blocks@preamble| and |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble and postamble that are +% not defined within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@preamble{% + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@frontMatter + \thesis@blocks@titlePage + \onehalfspacing + \thesis@blocks@clearRight + \thesis@blocks@abstract + \thesis@blocks@abstractEn + \thesis@blocks@keywords + \thesis@blocks@keywordsEn + \thesis@blocks@bibEntry + \thesis@blocks@declaration + \thesis@blocks@thanks + \thesis@blocks@tables} +\def\thesis@blocks@postamble{% + \thesis@blocks@bibliography} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/med.ins b/macros/latex/contrib/fithesis/style/mu/med.ins new file mode 100644 index 0000000000..7f59c26c1d --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/med.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-med.sty}{\from{med.dtx}{}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/ped.dtx b/macros/latex/contrib/fithesis/style/mu/ped.dtx new file mode 100644 index 0000000000..f7a58bb091 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/ped.dtx @@ -0,0 +1,66 @@ +% \file{style/mu/fithesis-ped.sty} +% This is the style file for the theses written at the Faculty of +% Education at the Masaryk University in Brno. It has been prepared +% in accordance with the formal requirements published at the +% of the faculty\footnote{See \url{https://is.muni.cz/auth/do/^^A +% ped/VPAN/46952359/53057289}}. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-ped}[2016/04/18] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{FFA02F}, + tableEmph={HTML}{FFBB6B}, + tableOdd={HTML}{FFF1E0}, + tableEven={HTML}{FFDEB7}} +% \end{macrocode} +% The bibliography support is enabled. The |numeric| citations are +% used and the bibliography is sorted by name, title, and year. +% \begin{macrocode} +\thesis@bibliography@setup{ + style=iso-numeric, + sorting=nty} +\thesis@bibliography@load +% \end{macrocode} +% The style file configures the title page header to include the +% department name and the title page content to include the +% advisor's name. +% \begin{macrocode} +\thesis@blocks@titlePage@department@true +\def\thesis@blocks@titlePage@content{% + {\thesis@titlePage@Huge\bf\thesis@TeXtitle\par\vfil}\vskip 0.8in + {\thesis@titlePage@large\sc\thesis@@{typeName}\\[0.3in]} + {\thesis@titlePage@Large\bf\thesis@author} + % Typeset the name of the thesis advisor. + {\thesis@titlePage@large\\[0.3in] + {\bf\thesis@@{advisorTitle}:} \thesis@advisor}} +% \end{macrocode} +% Note that there is no direct support for the seminar paper and +% thesis proposal types. If you would like to change the contents +% of the preamble and the postamble, you should modify the +% |\thesis@blocks@preamble| and |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble and postamble that are +% not defined within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@preamble{% + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@titlePage + \thesis@blocks@frontMatter + \thesis@blocks@bibEntry + \thesis@blocks@abstract + \thesis@blocks@abstractEn + \thesis@blocks@keywords + \thesis@blocks@keywordsEn + \thesis@blocks@declaration + \thesis@blocks@thanks + \thesis@blocks@tables} +\def\thesis@blocks@postamble{% + \thesis@blocks@bibliography} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/ped.ins b/macros/latex/contrib/fithesis/style/mu/ped.ins new file mode 100644 index 0000000000..802f987d45 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/ped.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-ped.sty}{\from{ped.dtx}{}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/phil.dtx b/macros/latex/contrib/fithesis/style/mu/phil.dtx new file mode 100644 index 0000000000..8f02f5d4e5 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/phil.dtx @@ -0,0 +1,123 @@ +% \file{style/mu/fithesis-phil.sty} +% This is the style file for the theses written at the Faculty of +% Arts at the Masaryk University in Brno. It has been prepared in +% accordance with the formal requirements published at the website +% of the faculty\footnote{See \url{http://is.muni.cz/auth/do/^^A +% 1421/4581421/Vzor_bakalarske_prace.pdf}}. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-phil}[2016/04/18] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{6FCEF2}, + tableEmph={HTML}{78CEF0}, + tableOdd={HTML}{EBF6FA}, + tableEven={HTML}{D0EBF5}} +% \end{macrocode} +% The bibliography support is enabled. The |numeric| citations are +% used and the bibliography is sorted by name, title, and year. +% \begin{macrocode} +\thesis@bibliography@setup{ + style=iso-numeric, + sorting=nty} +\thesis@bibliography@load +% \end{macrocode} +% The style file configures the title page header to include the +% department and the field name. +% \begin{macrocode} +\thesis@blocks@titlePage@department@true +\thesis@blocks@titlePage@field@true +% \end{macrocode} +% The style file parses the value of the |\thesis@department| macro +% and recognizes the following divisions of the Faculty of Arts: +% \begin{itemize} +% \item\texttt{kisk} -- The Division of Information and Library +% Studies \footnote{See \url{http://kisk.phil.muni.cz/cs/pov^^A +% innosti}.} (KISK) +% \begin{macrocode} +\def\thesis@departments@kisk{kisk} +% \end{macrocode} +% \end{itemize} +% Along with the macros required by the locale file interface, the +% locale files need to define the following macros: +% \begin{itemize} +% \item\texttt{departmentName} -- The human-readable name of the +% given recognized division. +% \end{itemize} +% \begin{macrocode} +\ifx\thesis@department\thesis@departments@kisk + \def\thesis@department@name{\thesis@@{departmentName}} + \def\thesis@departmentEn@name{\thesis@english@departmentName} +\fi +% \end{macrocode} +% \begin{macro}{\thesis@blocks@titlePage} +% In the case of a KISK thesis, the style file redefines the cover +% and title page footers to include the thesis advisor's name. +% \begin{macrocode} +\ifx\thesis@department\thesis@departments@kisk + \def\thesis@blocks@titlePage@content{% + {\thesis@titlePage@Huge\bf\thesis@TeXtitle\par\vfil}\vskip 0.8in + {\thesis@titlePage@large\sc\thesis@@{typeName}\\[0.3in]} + {\thesis@titlePage@Large\bf\thesis@author} + % If this is a KISK thesis, typeset the name of the thesis + % advisor. + \ifx\thesis@department\thesis@departments@kisk + {\thesis@titlePage@large\\[0.3in] + {\bf\thesis@@{advisorTitle}:} \thesis@advisor} + \fi}% +\fi +% \end{macrocode} +% \end{macro} +% Note that there is no direct support for the seminar paper and +% thesis proposal types. If you would like to change the contents +% of the preamble and the postamble, you should modify the +% |\thesis@blocks@preamble| and |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble and postamble that are +% not defined within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. +% \begin{macrocode} +\def\thesis@blocks@preamble{% + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@titlePage + \thesis@blocks@frontMatter +% \end{macrocode} +% In KISK theses, the bibliographical entry, the abstract, and the +% keywords will be included after the cover matter. +% \begin{macrocode} + \ifx\thesis@department\thesis@departments@kisk + \thesis@blocks@bibEntry + \thesis@blocks@abstract + \thesis@blocks@abstractEn + \thesis@blocks@keywords + \thesis@blocks@keywordsEn + \fi + \thesis@blocks@declaration + \thesis@blocks@thanks +% \end{macrocode} +% In KISK theses, the lists of tables and figures will be included +% behind the bibliography rather than at the beginning of the +% document. +% \begin{macrocode} + \ifx\thesis@department\thesis@departments@kisk + \thesis@blocks@toc + \else + \thesis@blocks@tables + \fi} +\def\thesis@blocks@postamble{% + \ifx\thesis@department\thesis@departments@kisk +% \end{macrocode} +% In KISK theses, the lists of tables and figures will be included +% behind the bibliography rather than at the beginning of the +% document. +% \begin{macrocode} + \thesis@blocks@lot + \thesis@blocks@lof + \fi + \thesis@blocks@bibliography} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/phil.ins b/macros/latex/contrib/fithesis/style/mu/phil.ins new file mode 100644 index 0000000000..0f6b211ca3 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/phil.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-phil.sty}{\from{phil.dtx}{}}} +\endbatchfile diff --git a/macros/latex/contrib/fithesis/style/mu/sci.dtx b/macros/latex/contrib/fithesis/style/mu/sci.dtx new file mode 100644 index 0000000000..ca1630a0f3 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/sci.dtx @@ -0,0 +1,641 @@ +% \file{style/mu/fithesis-sci.sty} +% This is the style file for the theses written at the Faculty of +% Science at the Masaryk University in Brno. It has been +% prepared in accordance with the formal requirements published at +% the website of the faculty\footnote{See +% \url{http://www.sci.muni.cz/NW/predpisy/od/OD-2014-05.pdf}}. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{fithesis/style/mu/fithesis-sci}[2017/06/02] +% \end{macrocode} +% The file defines the color scheme of the respective faculty. Note +% the the color definitions are in RGB, which makes the resulting +% files generally unsuitable for printing. +% \begin{macrocode} +\thesis@color@setup{ + links={HTML}{20E366}, + tableEmph={HTML}{8EDEAA}, + tableOdd={HTML}{EDF7F1}, + tableEven={HTML}{CCEDD8}} +% \end{macrocode} +% The bibliography support is enabled. The |numeric| citations are +% used and the bibliography is sorted in citation order. +% \begin{macrocode} +\thesis@bibliography@setup{ + style=iso-numeric, + sorting=none} +\thesis@bibliography@load +% \end{macrocode} +% The file uses Czech locale strings within the macros. +% \begin{macrocode} +\thesis@requireLocale{czech} +% \end{macrocode} +% \begin{macro}{\ifthesis@czech} +% The |\ifthesis@czech| \ldots |\else| \ldots |\fi| conditional is made +% available for testing, whether or not the current locale is Czech. +% \changes{v0.3.45}{2017/05/23}{Defined the +% \cs{ifthesis@czech} macro in +% \texttt{style/mu/fithesis-sci.sty}. The patch was submitted by +% Juraj Pálenik. [VN]} +% \begin{macrocode} +\def\ifthesis@czech{ + \expandafter\def\expandafter\@czech\expandafter{\string + \czech}% + \expandafter\expandafter\expandafter\def\expandafter + \expandafter\expandafter\@locale\expandafter\expandafter + \expandafter{\expandafter\string\csname\thesis@locale\endcsname}% + \expandafter\csname\expandafter i\expandafter f\ifx\@locale + \@czech + true% + \else + false% + \fi\endcsname} +\ifthesis@czech + \expandafter\expandafter\expandafter\let\expandafter\expandafter + \csname ifthesis@czech\endcsname\csname iftrue\endcsname +\else + \expandafter\expandafter\expandafter\let\expandafter\expandafter + \csname ifthesis@czech\endcsname\csname iffalse\endcsname +\fi +% \end{macrocode} +% The file recognizes the following options: \begin{itemize} +% \item\texttt{abstractonsinglepage} -- The abstracts are going +% to be typeset on a single page as opposed to being spread +% across several pages. This is the default for theses whose main +% locale is neither Czech nor English. +% \end{itemize} +% \changes{v0.3.45}{2017/05/24}{Defined the +% \texttt{abstractonsinglepage} option in +% \texttt{style/mu/fithesis-sci.sty}. The patch was submitted by +% Juraj Pálenik. [VN]} +% \begin{macrocode} +\newif\ifthesis@abstractonsinglepage@ +\DeclareOption{abstractonsinglepage}{\thesis@abstractonsinglepage@true} +\ifthesis@czech\else\ifthesis@english\else + \ExecuteOptions{abstractonsinglepage} +\fi\fi +\ProcessOptions* +% \end{macrocode} +% \end{macro} +% The file loads the following packages: +% \begin{itemize} +% \item\textsf{tikz} -- Used for dimension arithmetic. +% \item\textsf{changepage} -- Used for width adjustments. +% \end{itemize} +% \begin{macrocode} +\thesis@require{tikz} +\thesis@require{changepage} +% \end{macrocode} +% In case of rigorous and doctoral theses, the style file hides the +% thesis assignment in accordance with the formal requirements of +% the faculty. +% \begin{macrocode} +\ifx\thesis@type\thesis@bachelors\else +\ifx\thesis@type\thesis@masters\else + \thesis@blocks@assignment@false +\fi\fi +% \end{macrocode} +% Enable the inclusion of the scanned assignment inside the digital +% version of the document. +% \begin{macrocode} +\thesis@blocks@assignment@hideIfDigital@false +% \end{macrocode} +% \begin{macro}{\thesis@blocks@bibEntry} +% The |\thesis@blocks@bibEntry| macro typesets a bibliographical +% entry. Along with the macros required by the locale file +% interface, the locale files need to define the following macros: +% \begin{itemize} +% \item|\thesis@|\textit{locale}|@bib@title| -- The title of the +% entire block +% \item|\thesis@|\textit{locale}|@bib@author| -- The label of the +% author name entry +% \item|\thesis@|\textit{locale}|@bib@title| -- The label of the +% title name entry +% \item|\thesis@|\textit{locale}|@bib@programme| -- The label of +% the programme name entry +% \item|\thesis@|\textit{locale}|@bib@field| -- The label of the +% field of study name entry +% \item|\thesis@|\textit{locale}|@bib@advisor| -- The label of +% the advisor name entry +% \item|\thesis@|\textit{locale}|@bib@academicYear| -- The label +% of the academic year entry +% \item|\thesis@|\textit{locale}|@bib@pages| -- The label of the +% number of pages entry +% \item|\thesis@|\textit{locale}|@bib@keywords| -- The label of +% the keywords entry +% \end{itemize} +% \changes{v0.3.45}{2017/05/26}{Bibliographical entries in +% \texttt{style/mu/fithesis-sci.sty} now face each other when the +% main locale is either Czech or English. [VN]} +% \begin{macrocode} +\def\thesis@blocks@bibEntry{% + \begin{alwayssingle}% + % Clear only the right page, if the main locale is Czech. + \ifthesis@czech + \begingroup + \let\thesis@blocks@clear\thesis@blocks@clearRight + \fi + \chapter*{\thesis@@{bib@title}}% + \ifthesis@czech + \endgroup + \fi + {% Calculate the width of the columns + \let\@A\relax\newlength{\@A}\settowidth{\@A}{{% + \bf\thesis@@{bib@author}:}} + \let\@B\relax\newlength{\@B}\settowidth{\@B}{{% + \bf\thesis@@{bib@thesisTitle}:}} + \let\@C\relax\newlength{\@C}\settowidth{\@C}{{% + \bf\thesis@@{bib@programme}:}} + \let\@D\relax\newlength{\@D}\settowidth{\@D}{{% + \bf\thesis@@{bib@field}:}} + % Unless this is a rigorous thesis, we will be typesetting the + % name of the thesis advisor. + \let\@E\relax\newlength{\@E} + \ifx\thesis@type\thesis@rigorous + \setlength{\@E}{0pt}% + \else + \settowidth{\@E}{{\bf\thesis@@{bib@advisor}:}} + \fi + \let\@F\relax\newlength{\@F}\settowidth{\@F}{{% + \bf\thesis@@{bib@academicYear}:}} + \let\@G\relax\newlength{\@G}\settowidth{\@G}{{% + \bf\thesis@@{bib@pages}:}} + \let\@H\relax\newlength{\@H}\settowidth{\@H}{{% + \bf\thesis@@{bib@keywords}:}} + \let\@skip\relax\newlength{\@skip}\setlength{\@skip}{16pt} + \let\@left\relax\newlength{\@left}\pgfmathsetlength{\@left}{% + max(\@A,\@B,\@C,\@D,\@E,\@F,\@G,\@H)} + \let\@right\relax\newlength{\@right}\setlength{\@right}{% + \textwidth-\@left-\@skip} + % Typeset the table + \renewcommand{\arraystretch}{2} + \noindent\begin{thesis@newtable@old}% + {@{}p{\@left}@{\hskip\@skip}p{\@right}@{}} + \textbf{\thesis@@{bib@author}:} & + \noindent\parbox[t]{\@right}{ + \thesis@author\\ + \thesis@@{facultyName}, + \thesis@@{universityName}\\ + \thesis@department@name + }\\ + \textbf{\thesis@@{bib@thesisTitle}:} + & \thesis@title \\ + \textbf{\thesis@@{bib@programme}:} + & \thesis@programme \\ + \textbf{\thesis@@{bib@field}:} + & \thesis@field@name \\ + % Unless this is a rigorous thesis, typeset the name of the + % thesis advisor. + \ifx\thesis@type\thesis@rigorous\else + \textbf{\thesis@@{bib@advisor}:} + & \thesis@advisor \\ + \fi + \textbf{\thesis@@{bib@academicYear}:} + & \thesis@academicYear \\ + \textbf{\thesis@@{bib@pages}:} + & \thesis@pages@preamble{} + \thesis@pages \\ + \textbf{\thesis@@{bib@keywords}:} + & \thesis@TeXkeywords \\ + \end{thesis@newtable@old}} + \end{alwayssingle}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@bibEntryEn} +% The |\thesis@blocks@bibEntryEn| macro typesets a bibliographical +% entry in English unless the current locale is English. +% \begin{macrocode} +\def\thesis@blocks@bibEntryEn{% + \ifthesis@english\else + {\thesis@selectLocale{english} + \begin{alwayssingle} + \chapter*{\thesis@english@bib@title}% + {% Calculate the width of the columns + \let\@A\relax\newlength{\@A}\settowidth{\@A}{{% + \bf\thesis@english@bib@author:}} + \let\@B\relax\newlength{\@B}\settowidth{\@B}{{% + \bf\thesis@english@bib@thesisTitle:}} + \let\@C\relax\newlength{\@C}\settowidth{\@C}{{% + \bf\thesis@english@bib@programme:}} + \let\@D\relax\newlength{\@D}\settowidth{\@D}{{% + \bf\thesis@english@bib@field:}} + % Unless this is a rigorous thesis, we will be typesetting + % the name of the thesis advisor. + \let\@E\relax\newlength{\@E} + \ifx\thesis@type\thesis@rigorous + \setlength{\@E}{0pt}% + \else + \settowidth{\@E}{{\bf\thesis@english@bib@advisor:}} + \fi + \let\@F\relax\newlength{\@F}\settowidth{\@F}{{% + \bf\thesis@english@bib@academicYear:}} + \let\@G\relax\newlength{\@G}\settowidth{\@G}{{% + \bf\thesis@english@bib@pages:}} + \let\@H\relax\newlength{\@H}\settowidth{\@H}{{% + \bf\thesis@english@bib@keywords:}} + \let\@skip\relax\newlength{\@skip}\setlength{\@skip}{16pt} + \let\@left\relax\newlength{\@left}\pgfmathsetlength{\@left}{% + max(\@A,\@B,\@C,\@D,\@E,\@F,\@G,\@H)} + \let\@right\relax\newlength{\@right}\setlength{\@right}{% + \textwidth-\@left-\@skip} + % Typeset the table + \renewcommand{\arraystretch}{2} + \noindent\begin{thesis@newtable@old}% + {@{}p{\@left}@{\hskip\@skip}p{\@right}@{}} + \textbf{\thesis@english@bib@author:} & + \noindent\parbox[t]{\@right}{ + \thesis@author\\ + \thesis@english@facultyName, + \thesis@english@universityName\\ + \thesis@departmentEn@name + }\\ + \textbf{\thesis@english@bib@thesisTitle:} + & \thesis@titleEn \\ + \textbf{\thesis@english@bib@programme:} + & \thesis@programmeEn \\ + \textbf{\thesis@english@bib@field:} + & \thesis@fieldEn@name \\ + % Unless this is a rigorous thesis, typeset the name of the + % thesis advisor. + \ifx\thesis@type\thesis@rigorous\else + \textbf{\thesis@english@bib@advisor:} + & \thesis@advisor \\ + \fi + \textbf{\thesis@english@bib@academicYear:} + & \thesis@academicYear \\ + \textbf{\thesis@english@bib@pages:} + & \thesis@pages@preamble{} + \thesis@pages \\ + \textbf{\thesis@english@bib@keywords:} + & \thesis@TeXkeywordsEn \\ + \end{thesis@newtable@old}} + \end{alwayssingle} + }% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@abstractCs} +% The |\thesis@blocks@abstractCs| macro typesets the +% abstract in Czech. If the current locale is Czech, the +% macro produces no output. The following extra data field is +% defined for the macro: \begin{itemize} +% \item|abstractCs| -- the Czech title of the thesis used for the +% typesetting. This extra data field will expand to +% |\thesis@abstract| if the current locale of the thesis +% is Czech. +% \end{itemize} +% \changes{v0.3.45}{2017/05/28}{Defined the +% \cs{thesis@blocks@abstractCs} macro in +% \texttt{style/mu/fithesis-sci.sty}. The patch was submitted by +% Juraj Pálenik. [VN]} +% \begin{macrocode} +\thesis@def@extra[{ + \ifthesis@czech + \thesis@abstract + \else + \thesis@placeholder@extra@abstractCs + \fi +}]{abstractCs} +\def\thesis@blocks@abstractCs{% + \ifthesis@czech\else + {\thesis@selectLocale{czech}% + \begin{alwayssingle}% + \ifthesis@abstractonsinglepage@ + \thesis@blocks@clear + \else + % Start the new chapter without clearing the left page. + \thesis@blocks@clearRight + \fi + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@czech@abstractTitle}% + \thesis@extra@abstractCs}% + \par\vfil\null + \end{alwayssingle}}% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@bibEntryCs} +% The |\thesis@blocks@bibEntryCs| macro typesets a bibliographical +% entry in English unless the current locale is Czech. The +% macro uses the following extra data fields:\begin{itemize} +% \item|programmeCs| -- the Czech name of the author's study +% programme. This extra data field will expand to +% |\thesis@programme| if the current locale of the thesis +% is Czech. +% \item|fieldCs| -- the Czech name of the author's field of +% study. This extra data field will expand to +% |\thesis@field@name| if the current locale of the thesis +% is Czech. +% \item|keywordsCs| -- the Czech keywords of the thesis. +% This extra data field will expand to |\thesis@keywords| if +% the current locale of the thesis is Czech. +% \item|TeXkeywordsCs| -- the Czech \TeX{} keywords of the thesis. +% This extra data field will expand to |\thesis@TeXkeywords| if +% the current locale of the thesis is Czech. +% \end{itemize} +% \changes{v0.3.45}{2017/05/21}{Defined the +% \cs{thesis@blocks@bibEntryCs} macro in +% \texttt{style/mu/fithesis-sci.sty}. The patch was submitted by +% Juraj Pálenik. [VN]} +% \begin{macrocode} +\thesis@def@extra[{ + \ifthesis@czech + \thesis@programme + \else + \thesis@placeholder@extra@programmeCs + \fi +}]{programmeCs} +\thesis@def@extra[{ + \ifthesis@czech + \thesis@field@name + \else + \thesis@placeholder@extra@fieldCs + \fi +}]{fieldCs} +\thesis@def@extra[{ + \ifthesis@czech + \thesis@title + \else + \thesis@placeholder@extra@titleCs + \fi +}]{titleCs} +\thesis@def@extra[{ + \ifthesis@czech + \thesis@keywords + \else + \thesis@placeholder@extra@keywordsCs + \fi +}]{keywordsCs} +\thesis@def@extra[{ + \ifthesis@czech + \thesis@TeXkeywords + \else + \thesis@placeholder@extra@keywordsCs + \fi +}]{TeXkeywordsCs} +% \end{macrocode} +% \changes{v0.3.45}{2017/05/26}{Bibliographical entries in +% \texttt{style/mu/fithesis-sci.sty} now face each other when the +% main locale is either Czech or English. [VN]} +% \begin{macrocode} +\def\thesis@blocks@bibEntryCs{% + \ifthesis@czech\else + {\thesis@selectLocale{czech} + \begin{alwayssingle} + % Clear only the right page, if the main locale is English. + \ifthesis@english + \begingroup + \let\thesis@blocks@clear\thesis@blocks@clearRight + \fi + \chapter*{\thesis@czech@bib@title}% + \ifthesis@english + \endgroup + \fi + {% Calculate the width of the columns + \let\@A\relax\newlength{\@A}\settowidth{\@A}{{% + \bf\thesis@czech@bib@author:}} + \let\@B\relax\newlength{\@B}\settowidth{\@B}{{% + \bf\thesis@czech@bib@thesisTitle:}} + \let\@C\relax\newlength{\@C}\settowidth{\@C}{{% + \bf\thesis@czech@bib@programme:}} + \let\@D\relax\newlength{\@D}\settowidth{\@D}{{% + \bf\thesis@czech@bib@field:}} + % Unless this is a rigorous thesis, we will be typesetting + % the name of the thesis advisor. + \let\@E\relax\newlength{\@E} + \ifx\thesis@type\thesis@rigorous + \setlength{\@E}{0pt}% + \else + \settowidth{\@E}{{\bf\thesis@czech@bib@advisor:}} + \fi + \let\@F\relax\newlength{\@F}\settowidth{\@F}{{% + \bf\thesis@czech@bib@academicYear:}} + \let\@G\relax\newlength{\@G}\settowidth{\@G}{{% + \bf\thesis@czech@bib@pages:}} + \let\@H\relax\newlength{\@H}\settowidth{\@H}{{% + \bf\thesis@czech@bib@keywords:}} + \let\@skip\relax\newlength{\@skip}\setlength{\@skip}{16pt} + \let\@left\relax\newlength{\@left}\pgfmathsetlength{\@left}{% + max(\@A,\@B,\@C,\@D,\@E,\@F,\@G,\@H)} + \let\@right\relax\newlength{\@right}\setlength{\@right}{% + \textwidth-\@left-\@skip} + % Typeset the table + \renewcommand{\arraystretch}{2} + \noindent\begin{thesis@newtable@old}% + {@{}p{\@left}@{\hskip\@skip}p{\@right}@{}} + \textbf{\thesis@czech@bib@author:} & + \noindent\parbox[t]{\@right}{ + \thesis@author\\ + \thesis@czech@facultyName, + \thesis@czech@universityName\\ + \thesis@extra@departmentCs + }\\ + \textbf{\thesis@czech@bib@thesisTitle:} + & \thesis@extra@titleCs \\ + \textbf{\thesis@czech@bib@programme:} + & \thesis@extra@programmeCs \\ + \textbf{\thesis@czech@bib@field:} + & \thesis@extra@fieldCs \\ + % Unless this is a rigorous thesis, typeset the name of the + % thesis advisor. + \ifx\thesis@type\thesis@rigorous\else + \textbf{\thesis@czech@bib@advisor:} + & \thesis@advisor \\ + \fi + \textbf{\thesis@czech@bib@academicYear:} + & \thesis@academicYear \\ + \textbf{\thesis@czech@bib@pages:} + & \thesis@pages@preamble{} + \thesis@pages \\ + \textbf{\thesis@czech@bib@keywords:} + & \thesis@extra@TeXkeywordsCs \\ + \end{thesis@newtable@old}} + \end{alwayssingle} + }% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@frontMatter} +% The |\thesis@blocks@frontMatter| macro sets up the style +% of the front matter front matter of the thesis. The front matter +% is typeset without any visible numbering, as mandated by the +% formal requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@frontMatter{% + \thesis@blocks@clear + \pagestyle{empty} + \parindent 1.5em + \setcounter{page}{1} + \pagenumbering{roman}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@cover} +% The |\thesis@blocks@cover| macro typesets the thesis +% cover. The following extra data field is defined for the macro: +% \begin{itemize} +% \item|departmentCs| -- the Czech name of the department at +% which the thesis is being written. This extra data field will +% expand to |\thesis@department@name| if the main locale of the +% thesis is Czech. +% \end{itemize} +% \begin{macrocode} +\thesis@def@extra[{ + \ifthesis@czech + \thesis@department@name + \else + \thesis@placeholder@extra@departmentCs + \fi +}]{departmentCs} +\def\thesis@blocks@cover{{% + \thesis@selectLocale{czech} + \ifthesis@cover@ + \thesis@blocks@clear + \begin{alwayssingle} + \begin{center} + {\sc\thesis@titlePage@LARGE\thesis@czech@universityName\\% + \thesis@titlePage@Large\thesis@czech@facultyName\\[0.3em]% + \thesis@titlePage@normalsize\thesis@extra@departmentCs} + \vfill + {\bf\thesis@titlePage@Huge\thesis@czech@typeName} + \vfill + {\thesis@titlePage@large\thesis@place + \ \thesis@year\hfill\thesis@author} + \end{center} + \end{alwayssingle} + \fi}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@titlePage} +% The |\thesis@blocks@titlePage| macro typesets the thesis +% title page. Depending on the value of the |\ifthesis@color@| +% conditional, the faculty logo is loaded from either +% |\thesis@logopath|, if \texttt{false}, or from +% |\thesis@logopath color/|, if \texttt{true}. +% The following extra data field is defined for the macro: +% \begin{itemize} +% \item|TeXtitleCs| -- the Czech title of the thesis used for the +% typesetting. This extra data field will expand to +% |\thesis@TeXtitle| if the main locale of the thesis is Czech. +% \end{itemize} +% \begin{macrocode} +\thesis@def@extra[{ + \ifthesis@czech + \thesis@TeXtitle + \else + \thesis@placeholder@extra@titleCs + \fi +}]{TeXtitleCs} +\def\thesis@blocks@titlePage{{% + \thesis@blocks@clear + \thesis@selectLocale{czech} + \begin{alwayssingle} + % The top of the page + \begin{adjustwidth}{-12mm}{} + \begin{minipage}{30mm} + \thesis@blocks@universityLogo@color[width=30mm] + \end{minipage}\begin{minipage}{89mm} + \begin{center} + {\sc\thesis@titlePage@LARGE\thesis@czech@universityName\\% + \thesis@titlePage@Large\thesis@czech@facultyName\\[0.3em]% + \thesis@titlePage@normalsize\thesis@extra@departmentCs} + \rule{\textwidth}{2pt}\vspace*{2mm} + \end{center} + \end{minipage}\begin{minipage}{30mm} + \thesis@blocks@facultyLogo@color[width=30mm] + \end{minipage} + \end{adjustwidth} + % The middle of the page + \vfill + \parbox\textwidth{% Prevent vfills from squashing the leading + \bf\thesis@titlePage@Huge\thesis@extra@TeXtitleCs} + {\thesis@titlePage@Huge\\[0.8em]} + {\thesis@titlePage@large\thesis@czech@typeName\\[1em]} + {\bf\thesis@titlePage@LARGE\thesis@author\\} + \vfill\noindent + % The bottom of the page + {\bf\thesis@titlePage@normalsize + % Unless this is a rigorous thesis, typeset the name of the + % thesis advisor. + \ifx\thesis@type\thesis@rigorous\else + \thesis@czech@advisorTitle: \thesis@advisor\hfill + \fi + \thesis@place\ \thesis@year} + \end{alwayssingle}}} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@thanks} +% The |\thesis@blocks@thanks| macro typesets the +% acknowledgements, if the |\thesis@thanks| macro is +% defined. Otherwise, the macro produces no output. +% As per the faculty requirements, the acknowledgements are +% positioned at the top of the page. +% \changes{v0.3.45}{2017/05/24}{Redefined the +% \cs{thesis@blocks@thanks} and \cs{thesis@blocks@declaration} +% macros in \texttt{style/mu/fithesis-sci.sty}. The patch was +% submitted by Juraj Pálenik. [VN]} +% \begin{macrocode} +\def\thesis@blocks@thanks{% + \thesis@blocks@clear + \ifx\thesis@thanks\undefined\else + \begin{alwayssingle}% + \chapter*{\thesis@@{thanksTitle}}% + \leavevmode\thesis@thanks + \end{alwayssingle}% + \fi} +% \end{macrocode} +% \end{macro}\begin{macro}{\thesis@blocks@declaration} +% The |\thesis@blocks@declaration| macro typesets the declaration +% text. Unlike the generic |\thesis@blocks@declaration| macro from +% the \texttt{style/mu/fithesis-sci.sty} file, this definition +% includes the date and a blank line for the author's signature, as +% per the requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@declaration{% + \begin{alwayssingle}% + \leavevmode\vfill + % Start the new chapter without clearing any page. + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@@{declarationTitle}}}% + \thesis@declaration + \vskip 2cm% + {\let\@A\relax\newlength{\@A} + \settowidth{\@A}{\thesis@@{authorSignature}} + \setlength{\@A}{\@A+1cm} + \noindent\thesis@place, \thesis@@{formattedDate}\hfill + \begin{minipage}[t]{\@A}% + \centering\rule{\@A}{1pt}\\ + \thesis@@{authorSignature}\par + \end{minipage}} + \end{alwayssingle}} +% \end{macrocode} +% \end{macro} +% Note that there is no direct support for the seminar paper and +% thesis proposal types. If you would like to change the contents +% of the preamble and the postamble, you should modify the +% |\thesis@blocks@preamble| and |\thesis@blocks@postamble| macros. +% +% All blocks within the autolayout preamble and postamble that are +% not defined within this file are defined in the +% \texttt{style/mu/fithesis-base.sty} file. The entire front matter +% is typeset as though the locale were Czech in accordance with the +% formal requirements of the faculty. +% \begin{macrocode} +\def\thesis@blocks@preamble{ + \thesis@blocks@coverMatter + \thesis@blocks@cover + \thesis@blocks@frontMatter + \thesis@blocks@titlePage + \thesis@blocks@clearRight + \thesis@blocks@bibEntryCs + \thesis@blocks@bibEntry + \thesis@blocks@bibEntryEn + \thesis@blocks@abstractCs + \ifthesis@abstractonsinglepage@ + \begingroup + \let\clearpage\relax + \fi + \thesis@blocks@abstract + \thesis@blocks@abstractEn + \ifthesis@abstractonsinglepage@ + \endgroup + \fi + \thesis@blocks@assignment + {\thesis@selectLocale{czech}% + \thesis@blocks@thanks + \thesis@blocks@declaration + \thesis@blocks@clear + \pagestyle{plain}% + \thesis@blocks@tables}} +\def\thesis@blocks@postamble{% + \thesis@blocks@bibliography} +% \end{macrocode} diff --git a/macros/latex/contrib/fithesis/style/mu/sci.ins b/macros/latex/contrib/fithesis/style/mu/sci.ins new file mode 100644 index 0000000000..2911d8b6e8 --- /dev/null +++ b/macros/latex/contrib/fithesis/style/mu/sci.ins @@ -0,0 +1,3 @@ +\input ../../LICENSE +\generate{\file{fithesis-sci.sty}{\from{sci.dtx}{}}} +\endbatchfile -- cgit v1.2.3