diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/fithesis/style/mu/fithesis-sci.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/fithesis/style/mu/fithesis-sci.sty | 404 |
1 files changed, 301 insertions, 103 deletions
diff --git a/Master/texmf-dist/tex/latex/fithesis/style/mu/fithesis-sci.sty b/Master/texmf-dist/tex/latex/fithesis/style/mu/fithesis-sci.sty index 53d383b639f..3aeb70ba081 100644 --- a/Master/texmf-dist/tex/latex/fithesis/style/mu/fithesis-sci.sty +++ b/Master/texmf-dist/tex/latex/fithesis/style/mu/fithesis-sci.sty @@ -50,7 +50,7 @@ %% The names of the source files used are shown above. %% \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{fithesis/style/mu/fithesis-sci}[2016/06/06] +\ProvidesPackage{fithesis/style/mu/fithesis-sci}[2017/06/02] \thesis@color@setup{ links={HTML}{20E366}, tableEmph={HTML}{8EDEAA}, @@ -61,6 +61,31 @@ sorting=none} \thesis@bibliography@load \thesis@requireLocale{czech} +\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 +\newif\ifthesis@abstractonsinglepage@ +\DeclareOption{abstractonsinglepage}{\thesis@abstractonsinglepage@true} +\ifthesis@czech\else\ifthesis@english\else + \ExecuteOptions{abstractonsinglepage} +\fi\fi +\ProcessOptions* \thesis@require{tikz} \thesis@require{changepage} \ifx\thesis@type\thesis@bachelors\else @@ -70,32 +95,38 @@ \thesis@blocks@assignment@hideIfDigital@false \def\thesis@blocks@bibEntry{% \begin{alwayssingle}% - {% Start the new chapter without clearing the right page - {\def\cleardoublepage{}% - \chapter*{\thesis@czech@bib@title}}% - % Calculate the width of the columns + % 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@czech@bib@author:}} + \bf\thesis@@{bib@author}:}} \let\@B\relax\newlength{\@B}\settowidth{\@B}{{% - \bf\thesis@czech@bib@thesisTitle:}} + \bf\thesis@@{bib@thesisTitle}:}} \let\@C\relax\newlength{\@C}\settowidth{\@C}{{% - \bf\thesis@czech@bib@programme:}} + \bf\thesis@@{bib@programme}:}} \let\@D\relax\newlength{\@D}\settowidth{\@D}{{% - \bf\thesis@czech@bib@field:}} + \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@czech@bib@advisor:}} + \settowidth{\@E}{{\bf\thesis@@{bib@advisor}:}} \fi \let\@F\relax\newlength{\@F}\settowidth{\@F}{{% - \bf\thesis@czech@bib@academicYear:}} + \bf\thesis@@{bib@academicYear}:}} \let\@G\relax\newlength{\@G}\settowidth{\@G}{{% - \bf\thesis@czech@bib@pages:}} + \bf\thesis@@{bib@pages}:}} \let\@H\relax\newlength{\@H}\settowidth{\@H}{{% - \bf\thesis@czech@bib@keywords:}} + \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)} @@ -105,113 +136,253 @@ \renewcommand{\arraystretch}{2} \noindent\begin{thesis@newtable@old}% {@{}p{\@left}@{\hskip\@skip}p{\@right}@{}} - \textbf{\thesis@czech@bib@author:} & + \textbf{\thesis@@{bib@author}:} & \noindent\parbox[t]{\@right}{ \thesis@author\\ - \thesis@czech@facultyName, - \thesis@czech@universityName\\ + \thesis@@{facultyName}, + \thesis@@{universityName}\\ \thesis@department@name }\\ - \textbf{\thesis@czech@bib@thesisTitle:} + \textbf{\thesis@@{bib@thesisTitle}:} & \thesis@title \\ - \textbf{\thesis@czech@bib@programme:} + \textbf{\thesis@@{bib@programme}:} & \thesis@programme \\ - \textbf{\thesis@czech@bib@field:} + \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@czech@bib@advisor:} + \textbf{\thesis@@{bib@advisor}:} & \thesis@advisor \\ \fi - \textbf{\thesis@czech@bib@academicYear:} + \textbf{\thesis@@{bib@academicYear}:} & \thesis@academicYear \\ - \textbf{\thesis@czech@bib@pages:} - & \thesis@pages \\ - \textbf{\thesis@czech@bib@keywords:} + \textbf{\thesis@@{bib@pages}:} + & \thesis@pages@preamble{} + \thesis@pages \\ + \textbf{\thesis@@{bib@keywords}:} & \thesis@TeXkeywords \\ \end{thesis@newtable@old}} \end{alwayssingle}} \def\thesis@blocks@bibEntryEn{% - {\thesis@selectLocale{english} - \begin{alwayssingle} - % Start the new chapter without clearing the right page - {\def\cleardoublepage{}% - \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}% + \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} +\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 - \settowidth{\@E}{{\bf\thesis@english@bib@advisor:}} + % Start the new chapter without clearing the left page. + \thesis@blocks@clearRight \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 \\ + {\let\thesis@blocks@clear\relax + \chapter*{\thesis@czech@abstractTitle}% + \thesis@extra@abstractCs}% + \par\vfil\null + \end{alwayssingle}}% + \fi} +\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} +\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 - \textbf{\thesis@english@bib@academicYear:} - & \thesis@academicYear \\ - \textbf{\thesis@english@bib@pages:} - & \thesis@pages \\ - \textbf{\thesis@english@bib@keywords:} - & \thesis@TeXkeywordsEn \\ - \end{thesis@newtable@old}} - \end{alwayssingle} - }} + \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} \def\thesis@blocks@frontMatter{% + \thesis@blocks@clear \pagestyle{empty} \parindent 1.5em \setcounter{page}{1} \pagenumbering{roman}} -\def\thesis@blocks@cover{% +\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} - \thispagestyle{empty} \begin{center} {\sc\thesis@titlePage@LARGE\thesis@czech@universityName\\% \thesis@titlePage@Large\thesis@czech@facultyName\\[0.3em]% - \thesis@titlePage@large\thesis@department@name} + \thesis@titlePage@normalsize\thesis@extra@departmentCs} \vfill {\bf\thesis@titlePage@Huge\thesis@czech@typeName} \vfill @@ -219,11 +390,18 @@ \ \thesis@year\hfill\thesis@author} \end{center} \end{alwayssingle} - \fi} -\def\thesis@blocks@titlePage{% + \fi}} +\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} - \thispagestyle{empty} % The top of the page \begin{adjustwidth}{-12mm}{} \begin{minipage}{30mm} @@ -232,7 +410,7 @@ \begin{center} {\sc\thesis@titlePage@LARGE\thesis@czech@universityName\\% \thesis@titlePage@Large\thesis@czech@facultyName\\[0.3em]% - \thesis@titlePage@normalsize\thesis@department@name} + \thesis@titlePage@normalsize\thesis@extra@departmentCs} \rule{\textwidth}{2pt}\vspace*{2mm} \end{center} \end{minipage}\begin{minipage}{30mm} @@ -242,7 +420,7 @@ % The middle of the page \vfill \parbox\textwidth{% Prevent vfills from squashing the leading - \bf\thesis@titlePage@Huge\thesis@TeXtitle} + \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\\} @@ -255,38 +433,58 @@ \thesis@czech@advisorTitle: \thesis@advisor\hfill \fi \thesis@place\ \thesis@year} - \end{alwayssingle}} -\def\thesis@blocks@declaration{% + \end{alwayssingle}}} +\def\thesis@blocks@thanks{% \thesis@blocks@clear + \ifx\thesis@thanks\undefined\else + \begin{alwayssingle}% + \chapter*{\thesis@@{thanksTitle}}% + \leavevmode\thesis@thanks + \end{alwayssingle}% + \fi} +\def\thesis@blocks@declaration{% \begin{alwayssingle}% - \chapter*{\thesis@@{declarationTitle}}% + \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@czech@formattedDate\hfill + \noindent\thesis@place, \thesis@@{formattedDate}\hfill \begin{minipage}[t]{\@A}% \centering\rule{\@A}{1pt}\\ \thesis@@{authorSignature}\par \end{minipage}} \end{alwayssingle}} -\def\thesis@blocks@preamble{{% - \thesis@selectLocale{czech}% +\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@abstract - \thesis@blocks@abstractEn} + \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@tables}} + \thesis@blocks@clear + \pagestyle{plain}% + \thesis@blocks@tables}} \def\thesis@blocks@postamble{% \thesis@blocks@bibliography} \endinput |