Skip to content
Snippets Groups Projects
fi.dtx 5.03 KiB
Newer Older
% \file{style/mu/fithesis-fi.sty}
% \changes{v1.0.0}{2021/02/21}{File were renamed after
%   breaking changes in package loading after PR 438 in \LaTeXe. [VN]}
% 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{https://is.muni.cz/do/fi/uredni_deska/predpisy/smernice/^^A
% Smernice_dekana_1_2018_zaverecne_prace.pdfa.pdf}, and
% \url{http://www.fi.muni.cz/docs/BP_DP_na_FI.pdf}.}.
%    \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{fithesis/style/mu/fithesis-mu-fi}[2021/02/21]
% 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.
\thesis@color@setup{
  links={HTML}{FFD451},
  tableEmph={HTML}{FFD451},
  tableOdd={HTML}{FFF9E5},
  tableEven={HTML}{FFECB3}}
% 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.
      \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.
    \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{%
  \begin{alwayssingle}%
    \chapter*{\thesis@@{declarationTitle}}%
    \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.
\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}