├── csquotes.tex ├── iso690.bst ├── cvut-logo-bw.pdf ├── vlna ├── Makefile ├── chapters ├── 10_goal.md ├── 20_analytics.md ├── 30_implementation.md ├── 99_conclusion.md └── 00_introduction.md ├── bibliography.bib ├── README.md ├── .gitignore ├── dirtree.sty ├── header.tex ├── dirtree.tex ├── footer.tex ├── FITthesis.cls └── csn690.bst /csquotes.tex: -------------------------------------------------------------------------------- 1 | $if(nothing)$\usepackage{csquotes}$endif$$body$ 2 | -------------------------------------------------------------------------------- /iso690.bst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomasbedrich/fit-bachelor-thesis/master/iso690.bst -------------------------------------------------------------------------------- /cvut-logo-bw.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomasbedrich/fit-bachelor-thesis/master/cvut-logo-bw.pdf -------------------------------------------------------------------------------- /vlna: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | echo "-----------------------------------------" 4 | echo "REPLACE THIS FILE BY \"VLNA\" EXECUTABLE!" 5 | echo "-----------------------------------------" 6 | 7 | exit 1 8 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | filename = BP_Surname_Name_YEAR 2 | texfile = $(filename).tex 3 | pandoc_flags = --template csquotes.tex --standalone --smart --chapters --to=latex 4 | 5 | tex: 6 | cat header.tex > $(texfile) 7 | pandoc $(pandoc_flags) chapters/*.md >> $(texfile) 8 | cat footer.tex >> $(texfile) 9 | ./vlna -l -r $(texfile) 10 | rubber --pdf $(filename) 11 | 12 | clean: 13 | rm -rf $(filename).* 14 | -------------------------------------------------------------------------------- /chapters/10_goal.md: -------------------------------------------------------------------------------- 1 | # Goal 2 | 3 | Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 4 | -------------------------------------------------------------------------------- /chapters/20_analytics.md: -------------------------------------------------------------------------------- 1 | # Analytics 2 | 3 | Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 4 | -------------------------------------------------------------------------------- /chapters/30_implementation.md: -------------------------------------------------------------------------------- 1 | # Implementation 2 | 3 | Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 4 | -------------------------------------------------------------------------------- /chapters/99_conclusion.md: -------------------------------------------------------------------------------- 1 | \begin{conclusion} 2 | 3 | Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 4 | 5 | \end{conclusion} 6 | -------------------------------------------------------------------------------- /chapters/00_introduction.md: -------------------------------------------------------------------------------- 1 | \begin{introduction} 2 | 3 | Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 4 | 5 | \end{introduction} 6 | -------------------------------------------------------------------------------- /bibliography.bib: -------------------------------------------------------------------------------- 1 | @MANUAL{svgspec, 2 | title = "Scalable Vector Graphics (SVG) 1.1 Specification {[online]}", 3 | organization = "WWW Consorcium", 4 | url = "http://www.w3.org/TR/2003/REC-SVG11-20030114/", 5 | note = "[cit. 2011-07-07]", 6 | key = "svg" 7 | } 8 | 9 | @BOOK{kobltypo, 10 | title = "Praktick{\' a} typografie", 11 | author = "Pavel Ko{\v c}i{\v c}ka and Filip Bla{\v z}ek", 12 | publisher = "Brno: Computer Press", 13 | year = "2004" 14 | } 15 | 16 | @BOOK{rybicka, 17 | title = "LaTeX pro za\v c\'ate\v cn\'\i{}ky", 18 | author = "Ji{\v r}{\' i} Rybi{\v c}ka", 19 | isbn = "80-7302-049-1", 20 | publisher = "Brno: Konvoj", 21 | edition = "3" 22 | } 23 | 24 | @MANUAL{iso690, 25 | organization = "\'U\v rad pro technickou normalizaci, metrologii a st\'atn\'\i{} zku\v sebnictv\'\i{}", 26 | title = "\v CSN ISO 690 Informace a dokumentace -- Pravidla pro bibliografick\'e odkazy a citace informa\v cn\'\i{}ch zdroj{\r u}", 27 | year = "2011" 28 | } 29 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Setup 2 | 3 | 1. Clone the repository. If you don't know how, you don't deserve to use it. 4 | 1. Install dependencies: 5 | 6 | ``` 7 | sudo apt-get install build-essential texlive-latex texlive-latex-recommended texlive-latex-extra rubber pandoc 8 | ``` 9 | 10 | 1. Download a program ["vlna" by Petr Olsak](http://petr.olsak.net/ftp/olsak/vlna/vlna.tar.gz), compile it and place an executable `vlna` into this directory. 11 | 1. Update `Makefile` and `.gitignore` - fill in your name on the first line in a form: `BP_Surname_Name_YEAR`. 12 | 1. Update `header.tex` file. 13 | 14 | 15 | # Writing 16 | 17 | Write your text to `chapters/*.md`. Use [Pandoc Markdown](http://rmarkdown.rstudio.com/authoring_pandoc_markdown.html) to format your content. 18 | 19 | 20 | ## Citations 21 | 22 | Use LaTeX command `\cite{something}` to insert a citation reference. The referenced book must be stored in a `bibliography.bib` file. This file can be generated on [Citacepro.com website](http://www.citacepro.com/) (use "Download as BibTex"). 23 | 24 | 25 | # Publishing 26 | 27 | Run `make tex` to generate a final PDF: `BP_Surname_Name_YEAR.pdf`. To clean the result, run `make clean`. 28 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # custom 2 | 3 | BP_Surname_Name_YEAR.* # generated by `make` 4 | 5 | 6 | 7 | # Created by https://www.gitignore.io/api/linux,osx,windows,latex 8 | 9 | ### Linux ### 10 | *~ 11 | 12 | # temporary files which can be created if a process still has a handle open of a deleted file 13 | .fuse_hidden* 14 | 15 | # KDE directory preferences 16 | .directory 17 | 18 | # Linux trash folder which might appear on any partition or disk 19 | .Trash-* 20 | 21 | 22 | ### OSX ### 23 | .DS_Store 24 | .AppleDouble 25 | .LSOverride 26 | 27 | # Icon must end with two \r 28 | Icon 29 | 30 | 31 | # Thumbnails 32 | ._* 33 | 34 | # Files that might appear in the root of a volume 35 | .DocumentRevisions-V100 36 | .fseventsd 37 | .Spotlight-V100 38 | .TemporaryItems 39 | .Trashes 40 | .VolumeIcon.icns 41 | 42 | # Directories potentially created on remote AFP share 43 | .AppleDB 44 | .AppleDesktop 45 | Network Trash Folder 46 | Temporary Items 47 | .apdisk 48 | 49 | 50 | ### Windows ### 51 | # Windows image file caches 52 | Thumbs.db 53 | ehthumbs.db 54 | 55 | # Folder config file 56 | Desktop.ini 57 | 58 | # Recycle Bin used on file shares 59 | $RECYCLE.BIN/ 60 | 61 | # Windows Installer files 62 | *.cab 63 | *.msi 64 | *.msm 65 | *.msp 66 | 67 | # Windows shortcuts 68 | *.lnk 69 | 70 | 71 | ### LaTeX ### 72 | *.acn 73 | *.acr 74 | *.alg 75 | *.aux 76 | *.bbl 77 | *.bcf 78 | *.blg 79 | *.dvi 80 | *.fdb_latexmk 81 | *.fls 82 | *.glg 83 | *.glo 84 | *.gls 85 | *.idx 86 | *.ilg 87 | *.ind 88 | *.ist 89 | *.lof 90 | *.log 91 | *.lot 92 | *.maf 93 | *.mtc 94 | *.mtc0 95 | *.nav 96 | *.nlo 97 | *.out 98 | *.pdfsync 99 | *.ps 100 | *.run.xml 101 | *.snm 102 | *.synctex.gz 103 | *.toc 104 | *.vrb 105 | *.xdy 106 | *.tdo 107 | -------------------------------------------------------------------------------- /dirtree.sty: -------------------------------------------------------------------------------- 1 | %% 2 | %% This is file `dirtree.sty', 3 | %% generated with the docstrip utility. 4 | %% 5 | %% The original source files were: 6 | %% 7 | %% dirtree.dtx (with options: `latex-wrapper') 8 | %% 9 | %% IMPORTANT NOTICE: 10 | %% 11 | %% For the copyright see the source file. 12 | %% 13 | %% Any modified versions of this file must be renamed 14 | %% with new filenames distinct from dirtree.sty. 15 | %% 16 | %% For distribution of the original source see the terms 17 | %% for copying and modification in the file dirtree.dtx. 18 | %% 19 | %% This generated file may be distributed as long as the 20 | %% original source files, as listed above, are part of the 21 | %% same distribution. (The sources need not necessarily be 22 | %% in the same archive or directory.) 23 | %% 24 | %% Package `dirtree.dtx' 25 | %% ----------------------------------------------- 26 | %% Copyright (C) 2004-2009 Jean-C\^ome Charpentier 27 | %% ----------------------------------------------- 28 | %% 29 | %% This work may be distributed and/or modified under the 30 | %% conditions of the LaTeX Project Public License, either version 1.3 31 | %% of this license or (at your option) any later version. 32 | %% The latest version of this license is in 33 | %% http://www.latex-project.org/lppl.txt 34 | %% and version 1.3 or later is part of all distributions of LaTeX 35 | %% version 2003/12/01 or later. 36 | %% 37 | %% See CTAN archives in directory macros/latex/base/lppl.txt. 38 | %% 39 | %% CONTENTS: 40 | %% This work consists of the files dirtree.ins and dirtree.dtx. 41 | %% Derived files are dirtree.tex and dirtree.sty. 42 | %% 43 | %% DESCRIPTION: 44 | %% dirtree is a package displaying directory trees. 45 | %% 46 | \def\fileversion{0.32} 47 | \def\filedate{2012/12/11} 48 | \NeedsTeXFormat{LaTeX2e}[1995/06/01] 49 | \ProvidesPackage{dirtree}[\filedate\space v\fileversion\space 50 | package wrapper for dirtree] 51 | \newcommand*\DT@fromsty{} 52 | \input{dirtree.tex} 53 | \ProvidesFile{dirtree.tex} 54 | [\filedate\space v\fileversion\space `dirtree' (jcc)] 55 | \endinput 56 | %% 57 | %% End of file `dirtree.sty'. 58 | -------------------------------------------------------------------------------- /header.tex: -------------------------------------------------------------------------------- 1 | % options: 2 | % thesis=B bachelor's thesis 3 | % thesis=M master's thesis 4 | % czech thesis in Czech language 5 | % slovak thesis in Slovak language 6 | % english thesis in English language 7 | % hidelinks remove colour boxes around hyperlinks 8 | 9 | \documentclass[thesis=B,czech]{FITthesis}[2012/06/26] 10 | 11 | \usepackage[utf8]{inputenc} % LaTeX source encoded as UTF-8 12 | 13 | \usepackage{graphicx} %graphics files inclusion 14 | 15 | \usepackage{longtable,booktabs} 16 | 17 | \usepackage{csquotes} 18 | \DeclareQuoteAlias{german}{czech} 19 | \MakeOuterQuote{"} 20 | 21 | % image auto scaling, see: http://tex.stackexchange.com/a/160022/102851 22 | \makeatletter 23 | \def\ScaleWidthIfNeeded{% 24 | \ifdim\Gin@nat@width>\linewidth 25 | \linewidth 26 | \else 27 | \Gin@nat@width 28 | \fi 29 | } 30 | \def\ScaleHeightIfNeeded{% 31 | \ifdim\Gin@nat@height>0.9\textheight 32 | 0.9\textheight 33 | \else 34 | \Gin@nat@width 35 | \fi 36 | } 37 | \makeatother 38 | \setkeys{Gin}{width=\ScaleWidthIfNeeded,height=\ScaleHeightIfNeeded,keepaspectratio}% 39 | 40 | % \usepackage{amsmath} %advanced maths 41 | % \usepackage{amssymb} %additional math symbols 42 | 43 | \usepackage{dirtree} %directory tree visualisation 44 | 45 | % % list of acronyms 46 | % \usepackage[acronym,nonumberlist,toc,numberedsection=autolabel]{glossaries} 47 | % \iflanguage{czech}{\renewcommand*{\acronymname}{Seznam pou{\v z}it{\' y}ch zkratek}}{} 48 | % \makeglossaries 49 | 50 | \newcommand{\tg}{\mathop{\mathrm{tg}}} %cesky tangens 51 | \newcommand{\cotg}{\mathop{\mathrm{cotg}}} %cesky cotangens 52 | 53 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 54 | % ODTUD DAL VSE ZMENTE 55 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 56 | 57 | \department{Katedra \ldots (DOPLŇTE)} 58 | \title{Doplňte název práce} 59 | \authorGN{Doplňte Vaše křestní jméno/jména} %(křestní) jméno (jména) autora 60 | \authorFN{Doplňte Vaše příjmení} %příjmení autora 61 | \authorWithDegrees{Doplňte Vaše jméno a tituly} %jméno autora včetně současných akademických titulů 62 | \supervisor{Doplňte jméno vedoucího práce} 63 | \acknowledgements{Doplňte, máte-li komu a za co děkovat. V~opačném případě úplně odstraňte tento příkaz.} 64 | \abstractCS{V~několika větách shrňte obsah a přínos této práce v~češtině. Po přečtení abstraktu by se čtenář měl mít čtenář dost informací pro rozhodnutí, zda chce Vaši práci číst.} 65 | \abstractEN{Sem doplňte ekvivalent abstraktu Vaší práce v~angličtině.} 66 | \placeForDeclarationOfAuthenticity{V~Praze} 67 | \declarationOfAuthenticityOption{4} %volba Prohlášení (číslo 1-6) 68 | \keywordsCS{Nahraďte seznamem klíčových slov v češtině oddělených čárkou.} 69 | \keywordsEN{Nahraďte seznamem klíčových slov v angličtině oddělených čárkou.} 70 | 71 | \begin{document} 72 | 73 | % \newacronym{CVUT}{{\v C}VUT}{{\v C}esk{\' e} vysok{\' e} u{\v c}en{\' i} technick{\' e} v Praze} 74 | % \newacronym{FIT}{FIT}{Fakulta informa{\v c}n{\' i}ch technologi{\' i}} 75 | -------------------------------------------------------------------------------- /dirtree.tex: -------------------------------------------------------------------------------- 1 | %% 2 | %% This is file `dirtree.tex', 3 | %% generated with the docstrip utility. 4 | %% 5 | %% The original source files were: 6 | %% 7 | %% dirtree.dtx (with options: `tex') 8 | %% 9 | %% IMPORTANT NOTICE: 10 | %% 11 | %% For the copyright see the source file. 12 | %% 13 | %% Any modified versions of this file must be renamed 14 | %% with new filenames distinct from dirtree.tex. 15 | %% 16 | %% For distribution of the original source see the terms 17 | %% for copying and modification in the file dirtree.dtx. 18 | %% 19 | %% This generated file may be distributed as long as the 20 | %% original source files, as listed above, are part of the 21 | %% same distribution. (The sources need not necessarily be 22 | %% in the same archive or directory.) 23 | %% 24 | %% Package `dirtree.dtx' 25 | %% ----------------------------------------------- 26 | %% Copyright (C) 2004-2009 Jean-C\^ome Charpentier 27 | %% ----------------------------------------------- 28 | %% 29 | %% This work may be distributed and/or modified under the 30 | %% conditions of the LaTeX Project Public License, either version 1.3 31 | %% of this license or (at your option) any later version. 32 | %% The latest version of this license is in 33 | %% http://www.latex-project.org/lppl.txt 34 | %% and version 1.3 or later is part of all distributions of LaTeX 35 | %% version 2003/12/01 or later. 36 | %% 37 | %% See CTAN archives in directory macros/latex/base/lppl.txt. 38 | %% 39 | %% CONTENTS: 40 | %% This work consists of the files dirtree.ins and dirtree.dtx. 41 | %% Derived files are dirtree.tex and dirtree.sty. 42 | %% 43 | %% DESCRIPTION: 44 | %% dirtree is a package displaying directory trees. 45 | %% 46 | \def\fileversion{0.32} 47 | \def\filedate{2012/12/11} 48 | \message{`dirtree' v\fileversion, \filedate\space (jcc)} 49 | \edef\DTAtCode{\the\catcode`\@} 50 | \catcode`\@=11 51 | \long\def\DT@loop#1\DT@repeat{% 52 | \def\DT@iterate{#1\relax\expandafter\DT@iterate\fi}% 53 | \DT@iterate 54 | \let\DT@iterate\relax 55 | } 56 | \let\DT@repeat=\fi 57 | \expandafter\ifx\csname DT@fromsty\endcsname\relax 58 | \def\@namedef#1{\expandafter\def\csname #1\endcsname} 59 | \def\@nameuse#1{\csname #1\endcsname} 60 | \long\def\@gobble#1{} 61 | \fi 62 | \def\@nameedef#1{\expandafter\edef\csname #1\endcsname} 63 | \newdimen\DT@offset \DT@offset=0.2em 64 | \newdimen\DT@width \DT@width=1em 65 | \newdimen\DT@sep \DT@sep=0.2em 66 | \newdimen\DT@all 67 | \DT@all=\DT@offset 68 | \advance\DT@all \DT@width 69 | \advance\DT@all \DT@sep 70 | \newdimen\DT@rulewidth \DT@rulewidth=0.4pt 71 | \newdimen\DT@dotwidth \DT@dotwidth=1.6pt 72 | \newdimen\DTbaselineskip \DTbaselineskip=\baselineskip 73 | \newcount\DT@counti 74 | \newcount\DT@countii 75 | \newcount\DT@countiii 76 | \newcount\DT@countiv 77 | \def\DTsetlength#1#2#3#4#5{% 78 | \DT@offset=#1\relax 79 | \DT@width=#2\relax 80 | \DT@sep=#3\relax 81 | \DT@all=\DT@offset 82 | \advance\DT@all by\DT@width 83 | \advance\DT@all by\DT@sep 84 | \DT@rulewidth=#4\relax 85 | \DT@dotwidth=#5\relax 86 | } 87 | \expandafter\ifx\csname DT@fromsty\endcsname\relax 88 | \def\DTstyle{\tt} 89 | \def\DTstylecomment{\rm} 90 | \else 91 | \def\DTstyle{\ttfamily} 92 | \def\DTstylecomment{\rmfamily} 93 | \fi 94 | \def\DTcomment#1{% 95 | \kern\parindent\dotfill 96 | {\DTstylecomment{#1}}% 97 | } 98 | \newdimen\DT@indent 99 | \newdimen\DT@parskip 100 | \newdimen\DT@baselineskip 101 | \def\dirtree#1{% 102 | \DT@indent=\parindent 103 | \parindent=\z@ 104 | \DT@parskip=\parskip 105 | \parskip=\z@ 106 | \DT@baselineskip=\baselineskip 107 | \baselineskip=\DTbaselineskip 108 | \let\DT@strut=\strut 109 | \def\strut{\vrule width\z@ height0.7\baselineskip depth0.3\baselineskip}% 110 | \DT@counti=\z@ 111 | \let\next\DT@readarg 112 | \next#1\@nil 113 | \dimen\z@=\hsize 114 | \advance\dimen\z@ -\DT@offset 115 | \advance\dimen\z@ -\DT@width 116 | \setbox\z@=\hbox to\dimen\z@{% 117 | \hsize=\dimen\z@ 118 | \vbox{\@nameuse{DT@body@1}}% 119 | }% 120 | \dimen\z@=\ht\z@ 121 | \advance\dimen0 by\dp\z@ 122 | \advance\dimen0 by-0.7\baselineskip 123 | \ht\z@=0.7\baselineskip 124 | \dp\z@=\dimen\z@ 125 | \par\leavevmode 126 | \kern\DT@offset 127 | \kern\DT@width 128 | \box\z@ 129 | \endgraf 130 | \DT@countii=\@ne 131 | \DT@countiii=\z@ 132 | \dimen3=\dimen\z@ 133 | \@namedef{DT@lastlevel@1}{-0.7\baselineskip}% 134 | \loop 135 | \ifnum\DT@countii<\DT@counti 136 | \advance\DT@countii \@ne 137 | \advance\DT@countiii \@ne 138 | \dimen\z@=\@nameuse{DT@level@\the\DT@countii}\DT@all 139 | \advance\dimen\z@ by\DT@offset 140 | \advance\dimen\z@ by-\DT@all 141 | \leavevmode 142 | \kern\dimen\z@ 143 | \DT@countiv=\DT@countii 144 | \count@=\z@ 145 | \DT@loop 146 | \advance\DT@countiv \m@ne 147 | \ifnum\@nameuse{DT@level@\the\DT@countiv} > 148 | \@nameuse{DT@level@\the\DT@countii}\relax 149 | \else 150 | \count@=\@ne 151 | \fi 152 | \ifnum\count@=\z@ 153 | \DT@repeat 154 | \edef\DT@hsize{\the\hsize}% 155 | \count@=\@nameuse{DT@level@\the\DT@countii}\relax 156 | \dimen\z@=\count@\DT@all 157 | \advance\hsize by-\dimen\z@ 158 | \setbox\z@=\vbox{\@nameuse{DT@body@\the\DT@countii}}% 159 | \hsize=\DT@hsize 160 | \dimen\z@=\ht\z@ 161 | \advance\dimen\z@ by\dp\z@ 162 | \advance\dimen\z@ by-0.7\baselineskip 163 | \ht\z@=0.7\baselineskip 164 | \dp\z@=\dimen\z@ 165 | \@nameedef{DT@lastlevel@\the\DT@countii}{\the\dimen3}% 166 | \advance\dimen3 by\dimen\z@ 167 | \advance\dimen3 by0.7\baselineskip 168 | \dimen\z@=\@nameuse{DT@lastlevel@\the\DT@countii}\relax 169 | \advance\dimen\z@ by-\@nameuse{DT@lastlevel@\the\DT@countiv}\relax 170 | \advance\dimen\z@ by0.3\baselineskip 171 | \ifnum\@nameuse{DT@level@\the\DT@countiv} < 172 | \@nameuse{DT@level@\the\DT@countii}\relax 173 | \advance\dimen\z@ by-0.5\baselineskip 174 | \fi 175 | \kern-0.5\DT@rulewidth 176 | \hbox{\vbox to\z@{\vss\hrule width\DT@rulewidth height\dimen\z@}}% 177 | \kern-0.5\DT@rulewidth 178 | \kern-0.5\DT@dotwidth 179 | \vrule width\DT@dotwidth height0.5\DT@dotwidth depth0.5\DT@dotwidth 180 | \kern-0.5\DT@dotwidth 181 | \vrule width\DT@width height0.5\DT@rulewidth depth0.5\DT@rulewidth 182 | \kern\DT@sep 183 | \box\z@ 184 | \endgraf 185 | \repeat 186 | \parindent=\DT@indent 187 | \parskip=\DT@parskip 188 | \baselineskip=\DT@baselineskip 189 | \let\strut\DT@strut 190 | } 191 | \def\DT@readarg.#1 #2. #3\@nil{% 192 | \advance\DT@counti \@ne 193 | \@namedef{DT@level@\the\DT@counti}{#1}% 194 | \@namedef{DT@body@\the\DT@counti}{\strut{\DTstyle{#2}\strut}}% 195 | \ifx\relax#3\relax 196 | \let\next\@gobble 197 | \fi 198 | \next#3\@nil 199 | } 200 | \catcode`\@=\DTAtCode\relax 201 | \endinput 202 | %% 203 | %% End of file `dirtree.tex'. 204 | -------------------------------------------------------------------------------- /footer.tex: -------------------------------------------------------------------------------- 1 | \bibliographystyle{csn690} 2 | \bibliography{bibliography} 3 | 4 | \appendix 5 | 6 | \chapter{Seznam použitých zkratek} 7 | % \printglossaries 8 | \begin{description} 9 | \item[GUI] Graphical user interface 10 | \item[XML] Extensible markup language 11 | \end{description} 12 | 13 | 14 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % 15 | % % Tuto kapitolu z výsledné práce ODSTRAŇTE. 16 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % 17 | % 18 | % \chapter{Návod k~použití této šablony} 19 | % 20 | % Tento dokument slouží jako základ pro napsání závěrečné práce na Fakultě informačních technologií ČVUT v~Praze. 21 | % 22 | % \section{Výběr základu} 23 | % 24 | % Vyberte si šablonu podle druhu práce (bakalářská, diplomová), jazyka (čeština, angličtina) a kódování (ASCII, \mbox{UTF-8}, \mbox{ISO-8859-2} neboli latin2 a nebo \mbox{Windows-1250}). 25 | % 26 | % V~české variantě naleznete šablony v~souborech pojmenovaných ve formátu práce\_kódování.tex. Typ může být: 27 | % \begin{description} 28 | % \item[BP] bakalářská práce, 29 | % \item[DP] diplomová (magisterská) práce. 30 | % \end{description} 31 | % Kódování, ve kterém chcete psát, může být: 32 | % \begin{description} 33 | % \item[UTF-8] kódování Unicode, 34 | % \item[ISO-8859-2] latin2, 35 | % \item[Windows-1250] znaková sada 1250 Windows. 36 | % \end{description} 37 | % V~případě nejistoty ohledně kódování doporučujeme následující postup: 38 | % \begin{enumerate} 39 | % \item Otevřete šablony pro kódování UTF-8 v~editoru prostého textu, který chcete pro psaní práce použít -- pokud můžete texty s~diakritikou normálně přečíst, použijte tuto šablonu. 40 | % \item V~opačném případě postupujte dále podle toho, jaký operační systém používáte: 41 | % \begin{itemize} 42 | % \item v~případě Windows použijte šablonu pro kódování \mbox{Windows-1250}, 43 | % \item jinak zkuste použít šablonu pro kódování \mbox{ISO-8859-2}. 44 | % \end{itemize} 45 | % \end{enumerate} 46 | % 47 | % 48 | % V~anglické variantě jsou šablony pojmenované podle typu práce, možnosti jsou: 49 | % \begin{description} 50 | % \item[bachelors] bakalářská práce, 51 | % \item[masters] diplomová (magisterská) práce. 52 | % \end{description} 53 | % 54 | % \section{Použití šablony} 55 | % 56 | % Šablona je určena pro zpracování systémem \LaTeXe{}. Text je možné psát v~textovém editoru jako prostý text, lze však také využít specializovaný editor pro \LaTeX{}, např. Kile. 57 | % 58 | % Pro získání tisknutelného výstupu z~takto vytvořeného souboru použijte příkaz \verb|pdflatex|, kterému předáte cestu k~souboru jako parametr. Vhodný editor pro \LaTeX{} toto udělá za Vás. \verb|pdfcslatex| ani \verb|cslatex| \emph{nebudou} s~těmito šablonami fungovat. 59 | % 60 | % Více informací o~použití systému \LaTeX{} najdete např. v~\cite{wikilatex}. 61 | % 62 | % \subsection{Typografie} 63 | % 64 | % Při psaní dodržujte typografické konvence zvoleného jazyka. České \uv{uvozovky} zapisujte použitím příkazu \verb|\uv|, kterému v~parametru předáte text, jenž má být v~uvozovkách. Anglické otevírací uvozovky se v~\LaTeX{}u zadávají jako dva zpětné apostrofy, uzavírací uvozovky jako dva apostrofy. Často chybně uváděný symbol "{} (palce) nemá s~uvozovkami nic společného. 65 | % 66 | % Dále je třeba zabránit zalomení řádky mezi některými slovy, v~češtině např. za jednopísmennými předložkami a spojkami (vyjma \uv{a}). To docílíte vložením pružné nezalomitelné mezery -- znakem \texttt{\textasciitilde}. V~tomto případě to není třeba dělat ručně, lze použít program \verb|vlna|. 67 | % 68 | % Více o~typografii viz \cite{kobltypo}. 69 | % 70 | % \subsection{Obrázky} 71 | % 72 | % Pro umožnění vkládání obrázků je vhodné použít balíček \verb|graphicx|, samotné vložení se provede příkazem \verb|\includegraphics|. Takto je možné vkládat obrázky ve formátu PDF, PNG a JPEG jestliže používáte pdf\LaTeX{} nebo ve formátu EPS jestliže používáte \LaTeX{}. Doporučujeme preferovat vektorové obrázky před rastrovými (vyjma fotografií). 73 | % 74 | % \subsubsection{Získání vhodného formátu} 75 | % 76 | % Pro získání vektorových formátů PDF nebo EPS z~jiných lze použít některý z~vektorových grafických editorů. Pro převod rastrového obrázku na vektorový lze použít rasterizaci, kterou mnohé editory zvládají (např. Inkscape). Pro konverze lze použít též nástroje pro dávkové zpracování běžně dodávané s~\LaTeX{}em, např. \verb|epstopdf|. 77 | % 78 | % \subsubsection{Plovoucí prostředí} 79 | % 80 | % Příkazem \verb|\includegraphics| lze obrázky vkládat přímo, doporučujeme však použít plovoucí prostředí, konkrétně \verb|figure|. Například obrázek \ref{fig:float} byl vložen tímto způsobem. Vůbec přitom nevadí, když je obrázek umístěn jinde, než bylo původně zamýšleno -- je tomu tak hlavně kvůli dodržení typografických konvencí. Namísto vynucování konkrétní pozice obrázku doporučujeme používat odkazování z~textu (dvojice příkazů \verb|\label| a \verb|\ref|). 81 | % 82 | % \begin{figure}\centering 83 | % \includegraphics[width=0.5\textwidth, angle=30]{cvut-logo-bw} 84 | % \caption[Příklad obrázku]{Ukázkový obrázek v~plovoucím prostředí}\label{fig:float} 85 | % \end{figure} 86 | % 87 | % \subsubsection{Verze obrázků} 88 | % 89 | % % Gnuplot BW i barevně 90 | % Může se hodit mít více verzí stejného obrázku, např. pro barevný či černobílý tisk a nebo pro prezentaci. S~pomocí některých nástrojů na generování grafiky je to snadné. 91 | % 92 | % Máte-li například graf vytvořený v programu Gnuplot, můžete jeho černobílou variantu (viz obr. \ref{fig:gnuplot-bw}) vytvořit parametrem \verb|monochrome dashed| příkazu \verb|set term|. Barevnou variantu (viz obr. \ref{fig:gnuplot-col}) vhodnou na prezentace lze vytvořit parametrem \verb|colour solid|. 93 | % 94 | % \begin{figure}\centering 95 | % \includegraphics{gnuplot-bw} 96 | % \caption{Černobílá varianta obrázku generovaného programem Gnuplot}\label{fig:gnuplot-bw} 97 | % \end{figure} 98 | % 99 | % \begin{figure}\centering 100 | % \includegraphics{gnuplot-col} 101 | % \caption{Barevná varianta obrázku generovaného programem Gnuplot}\label{fig:gnuplot-col} 102 | % \end{figure} 103 | % 104 | % 105 | % \subsection{Tabulky} 106 | % 107 | % Tabulky lze zadávat různě, např. v~prostředí \verb|tabular|, avšak pro jejich vkládání platí to samé, co pro obrázky -- použijte plovoucí prostředí, v~tomto případě \verb|table|. Například tabulka \ref{tab:matematika} byla vložena tímto způsobem. 108 | % 109 | % \begin{table}\centering 110 | % \caption[Příklad tabulky]{Zadávání matematiky}\label{tab:matematika} 111 | % \begin{tabular}{|l|l|c|c|}\hline 112 | % Typ & Prostředí & \LaTeX{}ovská zkratka & \TeX{}ovská zkratka \tabularnewline \hline \hline 113 | % Text & \verb|math| & \verb|\(...\)| & \verb|$...$| \tabularnewline \hline 114 | % Displayed & \verb|displaymath| & \verb|\[...\]| & \verb|$$...$$| \tabularnewline \hline 115 | % \end{tabular} 116 | % \end{table} 117 | % 118 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % 119 | 120 | \chapter{Obsah přiloženého CD} 121 | 122 | %upravte podle skutecnosti 123 | 124 | \begin{figure} 125 | \dirtree{% 126 | .1 readme.txt\DTcomment{stručný popis obsahu CD}. 127 | .1 exe\DTcomment{adresář se spustitelnou formou implementace}. 128 | .1 src. 129 | .2 impl\DTcomment{zdrojové kódy implementace}. 130 | .2 thesis\DTcomment{zdrojová forma práce ve formátu \LaTeX{}}. 131 | .1 text\DTcomment{text práce}. 132 | .2 thesis.pdf\DTcomment{text práce ve formátu PDF}. 133 | .2 thesis.ps\DTcomment{text práce ve formátu PS}. 134 | } 135 | \end{figure} 136 | 137 | \end{document} 138 | -------------------------------------------------------------------------------- /FITthesis.cls: -------------------------------------------------------------------------------- 1 | \NeedsTeXFormat{LaTeX2e} 2 | \ProvidesClass{FITthesis}[2013/05/06 CTU FIT standard class for theses] 3 | 4 | % created by Ondrej Guth 5 | 6 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 7 | % options 8 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 9 | \newif\if@thesistypedefined 10 | \DeclareOption{thesis=B}{\gdef\@thesistype{B}\@thesistypedefinedtrue} 11 | \DeclareOption{thesis=M}{\gdef\@thesistype{M}\@thesistypedefinedtrue} 12 | 13 | \DeclareOption{czech}{ 14 | \AtBeginDocument{\selectlanguage{czech}} 15 | \PassOptionsToPackage{\CurrentOption}{babel} 16 | \def\@lang{1} 17 | } 18 | \DeclareOption{english}{ 19 | \AtBeginDocument{\selectlanguage{UKenglish}} 20 | \PassOptionsToPackage{UKenglish}{babel} 21 | \def\@lang{0} 22 | } 23 | \DeclareOption{slovak}{ 24 | \AtBeginDocument{\selectlanguage{slovak}} 25 | \PassOptionsToPackage{\CurrentOption}{babel} 26 | \def\@lang{2} 27 | } 28 | \DeclareOption{10pt}{\PassOptionsToClass{\CurrentOption}{memoir}} 29 | \DeclareOption{11pt}{\PassOptionsToClass{\CurrentOption}{memoir}} 30 | \DeclareOption{12pt}{\PassOptionsToClass{\CurrentOption}{memoir}} 31 | 32 | \ExecuteOptions{11pt} 33 | \ProcessOptions 34 | 35 | \ifx\@lang\undefined 36 | \ClassError{FITthesis}{Language not specified}{Add option czech for Czech language or option english for English language or option slovak for Slovak language.} 37 | \fi 38 | 39 | \LoadClass[a4paper,twoside]{memoir}[2008/08/07] 40 | \setsecnumdepth{subsubsection} 41 | \chapterstyle{madsen} 42 | 43 | \RequirePackage{babel}[2008/07/06] 44 | \RequirePackage{hyperref} 45 | 46 | \RequirePackage{chngcntr} 47 | \counterwithout*{footnote}{chapter} 48 | 49 | \if\@lang1 50 | \RequirePackage[T1]{fontenc} 51 | \RequirePackage{lmodern} 52 | \else 53 | \if\@lang2 54 | \RequirePackage[T1]{fontenc} 55 | \RequirePackage{lmodern} 56 | \else 57 | \AtBeginDocument{\selectlanguage{UKenglish}} 58 | \fi 59 | \fi 60 | 61 | \setlrmargins{4cm}{*}{*}\checkandfixthelayout 62 | 63 | \RequirePackage{etoolbox} 64 | 65 | \AtEndEnvironment{table}{\gdef\there@is@a@table{}} 66 | \AtEndDocument{\ifdefined\there@is@a@table\label{tab:was:used:in:doc}\fi} 67 | \DeclareRobustCommand{\listoftablescond}{\@ifundefined{r@tab:was:used:in:doc}{}{\listoftables*}} 68 | 69 | % line breaks in URL 70 | \def\UrlBreaks{\do\/\do\-\do\_} 71 | 72 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 73 | % general commands 74 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 75 | 76 | \DeclareRobustCommand{\chapterstyletitle}[1]{ 77 | \@makechapterhead{#1} 78 | \noindent 79 | } 80 | 81 | \newenvironment{introduction}{ 82 | \setsecnumdepth{part} 83 | \if\@lang1\chapter{{\' U}vod}\else\if\@lang2\chapter{{\' U}vod}\else\chapter{Introduction}\fi\fi 84 | }{ 85 | \setsecnumdepth{subsubsection} 86 | } 87 | 88 | \newenvironment{conclusion}{ 89 | \setsecnumdepth{part} 90 | \if\@lang1\chapter{Z{\' a}v{\v e}r}\else\if\@lang2\chapter{Z{\' a}ver}\else\chapter{Conclusion}\fi\fi 91 | }{ 92 | \setsecnumdepth{subsubsection} 93 | } 94 | 95 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 96 | % template 97 | % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 98 | 99 | \newif\if@supervisordefined 100 | \DeclareRobustCommand{\supervisor}[1]{ 101 | \def\thesupervisor{#1} 102 | \@supervisordefinedtrue 103 | } 104 | 105 | \newif\if@departmentdefined 106 | \DeclareRobustCommand{\department}[1]{ 107 | \def\thedepartment{#1} 108 | \@departmentdefinedtrue 109 | } 110 | 111 | \newif\if@acknowledgementsdefined 112 | \DeclareRobustCommand{\acknowledgements}[1]{ 113 | \def\theacknowledgements{#1} 114 | \@acknowledgementsdefinedtrue 115 | } 116 | 117 | \newif\if@abstractcsdefined 118 | \DeclareRobustCommand{\abstractCS}[1]{ 119 | \def\theabstractcs{#1} 120 | \@abstractcsdefinedtrue 121 | } 122 | 123 | \newif\if@abstractendefined 124 | \DeclareRobustCommand{\abstractEN}[1]{ 125 | \def\theabstracten{#1} 126 | \@abstractendefinedtrue 127 | } 128 | 129 | % \newif\if@declarationofauthenticitydefined 130 | % \DeclareRobustCommand{\declarationOfAuthenticity}[1]{ 131 | % \def\thedeclarationofauthenticity{#1} 132 | % \@declarationofauthenticitydefinedtrue 133 | % } 134 | 135 | \newif\if@cityfordeclarationdefined 136 | \DeclareRobustCommand{\placeForDeclarationOfAuthenticity}[1]{ 137 | \def\thecityfordeclaration{#1} 138 | \@cityfordeclarationdefinedtrue 139 | } 140 | 141 | \newif\if@keywordscsdefined 142 | \DeclareRobustCommand{\keywordsCS}[1]{ 143 | \def\thekeywordscs{#1} 144 | \@keywordscsdefinedtrue 145 | } 146 | 147 | \newif\if@keywordsendefined 148 | \DeclareRobustCommand{\keywordsEN}[1]{ 149 | \def\thekeywordsen{#1} 150 | \@keywordsendefinedtrue 151 | } 152 | 153 | \newif\if@authorwithdegreesdefined 154 | \DeclareRobustCommand{\authorWithDegrees}[1]{ 155 | \def\theauthorwithdegrees{#1} 156 | \@authorwithdegreesdefinedtrue 157 | } 158 | 159 | \newif\if@authorGNdefined 160 | \DeclareRobustCommand{\authorGN}[1]{ 161 | \def\theauthorGN{#1} 162 | \@authorGNdefinedtrue 163 | } 164 | 165 | \newif\if@authorFNdefined 166 | \DeclareRobustCommand{\authorFN}[1]{ 167 | \def\theauthorFN{#1} 168 | \@authorFNdefinedtrue 169 | } 170 | 171 | \DeclareRobustCommand{\thesistype}{\if@thesistypedefined\if\@thesistype B\if\@lang1{Bakal{\' a}{\v r}sk{\' a} pr{\' a}ce}\else\if\@lang2{Bakal{\' a}rska pr{\' a}ca}\else{Bachelor's thesis}\fi\fi\else\if\@thesistype M 172 | \if\@lang1{Diplomov{\' a} pr{\' a}ce}\else\if\@lang2{Diplomov{\' a} pr{\' a}ca}\else{Master's thesis}\fi\fi\else\ClassError{FITthesis}{Thesis type not specified}{Add option thesis=B for bachelor's thesis or option thesis=M for master's thesis.}\fi\fi\else\ClassError{FITthesis}{Thesis type not specified}{Add option thesis=B for bachelor's thesis or option thesis=M for master's thesis.}\fi} 173 | 174 | \newif\if@declarationOptionSelected 175 | \DeclareRobustCommand{\declarationOfAuthenticityOption}[1]{ 176 | \ifx1#1 \DeclareRobustCommand{\thedeclarationofauthenticity}{\if\@lang1{% 177 | Prohla\v suji, \v ze jsem p\v redlo\v zenou pr\'aci vypracoval(a) samostatn\v e a \v ze jsem uvedl(a) ve\v sker\'e pou\v zit\'e informa\v cn\'\i{} zdroje v~souladu s~Metodick\'ym pokynem o~etick\'e p\v r\'\i{}prav\v e vysoko\v skolsk\'ych z\'av\v ere\v cn\'ych prac\'\i{}. 178 | 179 | Beru na v\v edom\'\i{}, \v ze se na moji pr\'aci vztahuj\'\i{} pr\'ava a povinnosti vypl\'yvaj\'\i{}c\'\i{} ze z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, ve zn\v en\'\i{} pozd\v ej\v s\'\i{}ch p\v redpis{\r u}, zejm\'ena skute\v cnost, \v ze \v Cesk\'e vysok\'e u\v cen\'\i{} technick\'e v~Praze m\'a pr\'avo na uzav\v ren\'\i{} licen\v cn\'\i{} smlouvy o~u\v zit\'\i{} t\'eto pr\'ace jako \v skoln\'\i{}ho d\'\i{}la podle \S{}~60 odst.~1 autorsk\'eho z\'akona. 180 | }\else\if\@lang2{% 181 | Prehlasujem, \v ze som predlo\v zen\'u pr\'acu vypracoval(a) samostatne a \v ze som uviedol(uviedla) v\v setky informa\v cn\'e zdroje v~s\'ulade s~Metodick\'ym pokynom o~etickej pr\'iprave vysoko\v skolsk\'ych z\'avere\v cn\'ych pr\'ac. 182 | 183 | Beriem na vedomie, \v ze sa na moju pr\'acu vz\v tahuj\'u pr\'ava a povinnosti vypl\'yvaj\'uce zo~z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, v znen\'\i\ neskor\v s\'\i ch predpisov, a~skuto\v cnos\v t, \v ze \v Cesk\'e vysok\'e u\v cen\'\i{} technick\'e v~Praze m\'a pr\'avo na uzavrenie licen\v cnej zmluvy o~pou\v zit\'\i\ tejto pr\'ace ako \v skolsk\'eho diela pod\v la \S{}~60 odst.~1 autorsk\'eho z\'akona. 184 | }\else{% 185 | I hereby declare that the presented thesis is my own work and that I have cited all sources of information in accordance with the Guideline for adhering to ethical principles when elaborating an academic final thesis. 186 | 187 | I acknowledge that my thesis is subject to the rights and obligations stipulated by the Act No.~121/2000 Coll., the Copyright Act, as amended, in particular that the Czech Technical University in Prague has the right to conclude a license agreement on the utilization of this thesis as school work under the provisions of Article~60(1) of the Act. 188 | }\fi\fi 189 | }\@declarationOptionSelectedtrue\fi 190 | \ifx2#1 \DeclareRobustCommand{\thedeclarationofauthenticity}{\if\@lang1{% 191 | Prohla\v suji, \v ze jsem p\v redlo\v zenou pr\'aci vypracoval(a) samostatn\v e a \v ze jsem uvedl(a) ve\v sker\'e pou\v zit\'e informa\v cn\'\i{} zdroje v~souladu s~Metodick\'ym pokynem o~etick\'e p\v r\'\i{}prav\v e vysoko\v skolsk\'ych z\'av\v ere\v cn\'ych prac\'\i{}. 192 | 193 | Beru na v\v edom\'\i{}, \v ze se na moji pr\'aci vztahuj\'\i{} pr\'ava a povinnosti vypl\'yvaj\'\i{}c\'\i{} ze z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, ve zn\v en\'\i{} pozd\v ej\v s\'\i{}ch p\v redpis{\r u}. V~souladu s~ust. \S{}~46 odst.~6 tohoto z\'akona t\'\i{}mto ud\v eluji nev\'yhradn\'\i{} opr\'avn\v en\'\i{} (licenci) k~u\v zit\'\i{} t\'eto moj\'\i{} pr\'ace, a to v\v cetn\v e v\v sech po\v c\'\i{}ta\v cov\'ych program{\r u}, je\v z jsou jej\'\i{} sou\v c\'ast\'\i{} \v ci p\v r\'\i{}lohou a ve\v sker\'e jejich dokumentace (d\'ale souhrnn\v e jen \uv{D\'\i{}lo}), a to v\v sem osob\'am, kter\'e si p\v rej\'\i{} D\'\i{}lo u\v z\'\i{}t. Tyto osoby jsou opr\'avn\v eny D\'\i{}lo u\v z\'\i{}t jak\'ymkoli zp{\r u}sobem, kter\'y nesni\v zuje hodnotu D\'\i{}la, av\v sak pouze k~nev\'yd\v ele\v cn\'ym \'u\v cel{\r u}m. Toto opr\'avn\v en\'\i{} je \v casov\v e, teritori\'aln\v e i mno\v zstevn\v e neomezen\'e. 194 | }\else\if\@lang2{% 195 | Prehlasujem, \v ze som predlo\v zen\'u pr\'acu vypracoval(a) samostatne a \v ze som uviedol(uviedla) v\v setky informa\v cn\'e zdroje v~s\'ulade s~Metodick\'ym pokynom o~etickej pr\'iprave vysoko\v skolsk\'ych z\'avere\v cn\'ych pr\'ac. 196 | 197 | Beriem na vedomie, \v ze sa na moju pr\'acu vz\v tahuj\'u pr\'ava a povinnosti vypl\'yvaj\'uce zo z\'akona \v c.~121/2000~Sb, autorsk\'eho z\'akona, v znen\'\i\ neskor\v s\'\i ch predpisov. V s\'ulade s ustanoven\'\i m \S{}~46 odst.~6 tohoto z\'akona t\'ymto ude\v lujem bezv\'yhradn\'e opr\'avnenie (licenciu) k~pou\v z\'\i vaniu tejto mojej pr\'ace, a to vr\'atane v\v setk\'ych po\v c\'\i ta\v cov\'ych programov ktor\'e s\'u jej s\'u\v cas\v tou alebo pr\'\i lohou a tie\v z v\v setkej ich dokument\'acie (\v dalej len \uv{Dielo}), a to v\v setk\'ym osob\'am, ktor\'e si praj\'u Dielo pou\v z\'iva\v t. Tieto osoby s\'u opr\'avnen\'e Dielo pou\v z\'\i va\v t ak\'ymko\v lvek 198 | sp\^ osobom, ktor\'y nezni\v zuje hodnotu Diela, ale len pre~nez\'arobkov\'e \'u\v cely. Toto opr\'avnenie je \v casovo, \'uzemne a mno\v zstevne ne\-ob\-me\-dze\-n\'e. 199 | }\else{% 200 | I hereby declare that the presented thesis is my own work and that I have cited all sources of information in accordance with the Guideline for adhering to ethical principles when elaborating an academic final thesis. 201 | 202 | I acknowledge that my thesis is subject to the rights and obligations stipulated by the Act No.~121/2000 Coll., the Copyright Act, as amended. In accordance with Article~46(6) of the Act, I hereby grant a nonexclusive authorization (license) to utilize this thesis, including any and all computer programs incorporated therein or attached thereto and all corresponding documentation (hereinafter collectively referred to as the ``Work''), to any and all persons that wish to utilize the Work. Such persons are entitled to use the Work for non-profit purposes only, in any way that does not detract from its value. This authorization is not limited in terms of time, location and quantity. 203 | }\fi\fi 204 | }\@declarationOptionSelectedtrue\fi 205 | \ifx3#1 \DeclareRobustCommand{\thedeclarationofauthenticity}{\if\@lang1{% 206 | Prohla\v suji, \v ze jsem p\v redlo\v zenou pr\'aci vypracoval(a) samostatn\v e a \v ze jsem uvedl(a) ve\v sker\'e pou\v zit\'e informa\v cn\'\i{} zdroje v~souladu s~Metodick\'ym pokynem o~etick\'e p\v r\'\i{}prav\v e vysoko\v skolsk\'ych z\'av\v ere\v cn\'ych prac\'\i{}. 207 | 208 | Beru na v\v edom\'\i{}, \v ze se na moji pr\'aci vztahuj\'\i{} pr\'ava a povinnosti vypl\'yvaj\'\i{}c\'\i{} ze z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, ve zn\v en\'\i{} pozd\v ej\v s\'\i{}ch p\v redpis{\r u}. D\'ale prohla\v suji, \v ze jsem s~\v Cesk\'ym vysok\'ym u\v cen\'\i{}m technick\'ym v~Praze uzav\v rel licen\v cn\'\i{} smlouvu o~u\v zit\'\i{} t\'eto pr\'ace jako \v skoln\'\i{}ho d\'\i{}la podle \S{}~60 odst.~1 autorsk\'eho z\'akona. Tato skute\v cnost nem\'a vliv na ust. \S{}~47b z\'akona \v c.~111/1998~Sb., o~vysok\'ych \v skol\'ach, ve zn\v en\'\i{} pozd\v ej\v s\'\i{}ch p\v redpis{\r u}. 209 | }\else\if\@lang2{% 210 | Prehlasujem, \v ze som predlo\v zen\'u pr\'acu vypracoval(a) samostatne a \v ze som uviedol(uviedla) v\v setky informa\v cn\'e zdroje v~s\'ulade s~Metodick\'ym pokynom o~etickej pr\'iprave vysoko\v skolsk\'ych z\'avere\v cn\'ych pr\'ac. 211 | 212 | Beriem na vedomie, \v ze sa na moju pr\'acu vz\v tahuj\'u pr\'ava a povinnosti vypl\'yvaj\'uce zo z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, v znen\'\i\ neskor\v s\'\i ch predpisov. \v Dalej prehlasujem, \v ze som s~\v Cesk\'ym vysok\'ym u\v cen\'\i m technick\'ym uzavrel licen\v cn\'u zmluvu o~pou\v zit\'\i\ tejto pr\'ace ako \v skolsk\'eho diela pod\v la \S{}~60 odst.~1 autorsk\'eho z\'akona. T\'ato skuto\v cnos\v t nem\'a vplyv na ust. \S{}~47b z\'akona \v c.~111/1998~Sb. o~vysok\'ych \v skol\'ach. 213 | }\else{% 214 | I hereby declare that the presented thesis is my own work and that I have cited all sources of information in accordance with the Guideline for adhering to ethical principles when elaborating an academic final thesis. 215 | 216 | I acknowledge that my thesis is subject to the rights and obligations stipulated by the Act No.~121/2000 Coll., the Copyright Act, as amended. I further declare that I have concluded a license agreement with the Czech Technical University in Prague on the utilization of this thesis as school work under the provisions of Article~60(1) of the Act. This fact shall not affect the provisions of Article~47b of the Act No.~111/1998 Coll., the Higher Education Act, as amended. 217 | }\fi\fi 218 | }\@declarationOptionSelectedtrue\fi 219 | \ifx4#1 \DeclareRobustCommand{\thedeclarationofauthenticity}{\if\@lang1{% 220 | Prohla\v suji, \v ze jsem p\v redlo\v zenou pr\'aci vypracoval(a) samostatn\v e a \v ze jsem uvedl(a) ve\v sker\'e pou\v zit\'e informa\v cn\'\i{} zdroje v~souladu s~Metodick\'ym pokynem o~etick\'e p\v r\'\i{}prav\v e vysoko\v skolsk\'ych z\'av\v ere\v cn\'ych prac\'\i{}. 221 | 222 | Beru na v\v edom\'\i{}, \v ze se na moji pr\'aci vztahuj\'\i{} pr\'ava a povinnosti vypl\'yvaj\'\i{}c\'\i{} ze z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, ve zn\v en\'\i{} pozd\v ej\v s\'\i{}ch p\v redpis{\r u}. V~souladu s~ust. \S{}~46 odst.~6 tohoto z\'akona t\'\i{}mto ud\v eluji nev\'yhradn\'\i{} opr\'avn\v en\'\i{} (licenci) k~u\v zit\'\i{} t\'eto moj\'\i{} pr\'ace, a to v\v cetn\v e v\v sech po\v c\'\i{}ta\v cov\'ych program{\r u}, je\v z jsou jej\'\i{} sou\v c\'ast\'\i{} \v ci p\v r\'\i{}lohou, a ve\v sker\'e jejich dokumentace (d\'ale souhrnn\v e jen \uv{D\'\i{}lo}), a to v\v sem osob\'am, kter\'e si p\v rej\'\i{} D\'\i{}lo u\v z\'\i{}t. Tyto osoby jsou opr\'avn\v eny D\'\i{}lo u\v z\'\i{}t jak\'ymkoli zp{\r u}sobem, kter\'y nesni\v zuje hodnotu D\'\i{}la, a za jak\'ymkoli \'u\v celem (v\v cetn\v e u\v zit\'\i{} k~v\'yd\v ele\v cn\'ym \'u\v cel{\r u}m). Toto opr\'avn\v en\'\i{} je \v casov\v e, teritori\'aln\v e i~mno\v zstevn\v e neomezen\'e. Ka\v zd\'a osoba, kter\'a vyu\v zije v\'y\v se 223 | uvedenou licenci, se v\v sak zavazuje ud\v elit ke ka\v zd\'emu d\'\i{}lu, kter\'e vznikne (by\v t jen z\v c\'asti) na z\'aklad\v e D\'\i{}la, \'upravou D\'\i{}la, spojen\'\i{}m D\'\i{}la s~jin\'ym d\'\i{}lem, za\v razen\'\i{}m D\'\i{}la do d\'\i{}la souborn\'eho \v ci zpracov\'an\'\i{}m D\'\i{}la (v\v cetn\v e p\v rekladu), licenci alespo\v n ve v\'y\v se uveden\'em rozsahu a z\'arove\v n zp\v r\'\i{}stupnit zdrojov\'y k\'od takov\'eho d\'\i{}la alespo\v n srovnateln\'ym zp{\r u}sobem a ve srovnateln\'em rozsahu, jako je zp\v r\'\i{}stupn\v en zdrojov\'y k\'od D\'\i{}la. 224 | }\else\if\@lang2{% 225 | Prehlasujem, \v ze som predlo\v zen\'u pr\'acu vypracoval(a) samostatne a \v ze som uviedol(uviedla) v\v setky informa\v cn\'e zdroje v~s\'ulade s~Metodick\'ym pokynom o~etickej pr\'iprave vysoko\v skolsk\'ych z\'avere\v cn\'ych pr\'ac. 226 | 227 | Beriem na vedomie, \v ze sa na moju pr\'acu vz\v tahuj\'u pr\'ava a povinnosti vypl\'yvaj\'uce zo z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, v znen\'\i\ neskor\v s\'\i ch predpisov. V~s\'ulade s ustanoven\'\i m \S{}~46 odst.~6 tohoto z\'akona t\'ymto ude\v lujem bezv\'yhradn\'e opr\'avnenie (licenciu) k~u\v z\'\i vaniu tejto mojej pr\'ace, a to vr\'atane v\v setk\'ych po\v c\'\i ta\v cov\'ych programov ktor\'e s\'u jej s\'u\v cas\v tou alebo pr\'\i lohou a tie\v z v\v setkej ich dokument\'acie (\v dalej len \uv{Dielo}), a to v\v setk\'ym osob\'am, ktor\'e si praj\'u Dielo u\v z\'iva\v t. 228 | 229 | Tieto osoby s\'u opr\'avnen\'e Dielo pou\v z\'\i va\v t ak\'ymko\v lvek 230 | sp\^ osobom, ktor\'y nezni\v zuje hodnotu Diela, a za ak\'ymko\v lvek \'u\v celom (vr\'atane komer\v cn\'eho vyu\v zitia). Toto opr\'avnenie je \v casovo, \'uzemne a mno\v zstevne neobmedzen\'e. 231 | Ka\v zd\'a osoba, ktor\'a vyu\v zije vy\v s\v sie uveden\'u licenciu, sa v\v sak zav\"azuje priradi\v t ka\v zd\'emu dielu, ktor\'e vznikne (\v co i len \v ciasto\v cne) na z\'aklade Diela, \'upravou 232 | Diela, spojen\'\i m Diela s~in\'ym dielom, zaraden\'\i m Diela do diela s\'uborn\'eho \v ci zpracovan\'\i m Diela (vr\'atane prekladu), licenciu aspo\v n vo vy\v s\v sie uvedenom rozsahu 233 | a~z\'arove\v n sa zav\"azuje spr\'\i stupni\v t zdrojov\'y k\'od tak\'eho diela aspo\v n zrovnate\v ln\'ym sp\^osobom a v~zrovnate\v lnom rozsahu ako je zpr\'\i stupnen\'y zdrojov\'y k\'od Diela. 234 | }\else{% 235 | I hereby declare that the presented thesis is my own work and that I have cited all sources of information in accordance with the Guideline for adhering to ethical principles when elaborating an academic final thesis. 236 | 237 | I acknowledge that my thesis is subject to the rights and obligations stipulated by the Act No.~121/2000 Coll., the Copyright Act, as amended. In accordance with Article~46(6) of the Act, I hereby grant a nonexclusive authorization (license) to utilize this thesis, including any and all computer programs incorporated therein or attached thereto and all corresponding documentation (hereinafter collectively referred to as the ``Work''), to any and all persons that wish to utilize the Work. Such persons are entitled to use the Work in any way (including for-profit purposes) that does not detract from its value. This authorization is not limited in terms of time, location and quantity. However, all persons that makes use of the above license shall be obliged to grant a license at least in the same scope as defined above with respect to each and every work that is created (wholly or in part) based on the Work, by modifying the Work, by combining the Work with another work, by including the Work in a collection 238 | of works or by adapting the Work (including translation), and at the same time make available the source code of such work at least in a way and scope that are comparable to the way and scope in which the source code of the Work is made available. 239 | }\fi\fi 240 | }\@declarationOptionSelectedtrue\fi 241 | \ifx5#1 \DeclareRobustCommand{\thedeclarationofauthenticity}{\if\@lang1{% 242 | Prohla\v suji, \v ze jsem p\v redlo\v zenou pr\'aci vypracoval(a) samostatn\v e a \v ze jsem uvedl(a) ve\v sker\'e pou\v zit\'e informa\v cn\'\i{} zdroje v~souladu s~Metodick\'ym pokynem o~etick\'e p\v r\'\i{}prav\v e vysoko\v skolsk\'ych z\'av\v ere\v cn\'ych prac\'\i{}. 243 | 244 | Beru na v\v edom\'\i{}, \v ze se na moji pr\'aci vztahuj\'\i{} pr\'ava a povinnosti vypl\'yvaj\'\i{}c\'\i{} ze z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, ve zn\v en\'\i{} pozd\v ej\v s\'\i{}ch p\v redpis{\r u}. V~souladu s~ust. \S{}~46 odst.~6 tohoto z\'akona t\'\i{}mto ud\v eluji nev\'yhradn\'\i{} opr\'avn\v en\'\i{} (licenci) k~u\v zit\'\i{} t\'eto moj\'\i{} pr\'ace, a to v\v cetn\v e v\v sech po\v c\'\i{}ta\v cov\'ych program{\r u}, je\v z jsou jej\'\i{} sou\v c\'ast\'\i{} \v ci p\v r\'\i{}lohou a ve\v sker\'e jejich dokumentace (d\'ale souhrnn\v e jen \uv{D\'\i{}lo}), a to v\v sem osob\'am, kter\'e si p\v rej\'\i{} D\'\i{}lo u\v z\'\i{}t. Tyto osoby jsou opr\'avn\v eny D\'\i{}lo u\v z\'\i{}t jak\'ymkoli zp{\r u}sobem, kter\'y nesni\v zuje hodnotu D\'\i{}la a za jak\'ymkoli \'u\v celem (v\v cetn\v e u\v zit\'\i{} k~v\'yd\v ele\v cn\'ym \'u\v cel{\r u}m). Toto opr\'avn\v en\'\i{} je \v casov\v e, teritori\'aln\v e i mno\v zstevn\v e neomezen\'e. 245 | }\else\if\@lang2{% 246 | Prehlasujem, \v ze som predlo\v zen\'u pr\'acu vypracoval(a) samostatne a \v ze som uviedol(uviedla) v\v setky informa\v cn\'e zdroje v~s\'ulade s~Metodick\'ym pokynom o~etickej pr\'iprave vysoko\v skolsk\'ych z\'avere\v cn\'ych pr\'ac. 247 | 248 | Beriem na vedomie, \v ze sa na moju pr\'acu vz\v tahuj\'u pr\'ava a povinnosti vypl\'yvaj\'uce zo z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, v znen\'\i\ neskor\v s\'\i ch predpisov. V~s\'ulade s ustanoven\'\i m \S{}~46 odst.~6 tohoto z\'akona t\'ymto ude\v lujem bezv\'yhradn\'e opr\'avnenie (licenciu) k~u\v z\'\i vaniu tejto mojej pr\'ace, a to vr\'atane v\v setk\'ych po\v c\'\i ta\v cov\'ych programov ktor\'e s\'u jej s\'u\v cas\v tou alebo pr\'\i lohou a tie\v z v\v setkej ich dokument\'acie (\v dalej len \uv{Dielo}), a to v\v setk\'ym osob\'am, ktor\'e si praj\'u Dielo u\v z\'iva\v t. Tieto osoby s\'u opr\'avnen\'e Dielo pou\v z\'\i va\v t ak\'ymko\v lvek 249 | sp\^ osobom, ktor\'y nezni\v zuje hodnotu Diela (vr\'atane komer\v cn\'eho vyu\v zitia). Toto opr\'avnenie je \v casovo, \'uzemne a~mno\v zstevne neobmedzen\'e. 250 | }\else{ 251 | I hereby declare that the presented thesis is my own work and that I have cited all sources of information in accordance with the Guideline for adhering to ethical principles when elaborating an academic final thesis. 252 | 253 | I acknowledge that my thesis is subject to the rights and obligations stipulated by the Act No.~121/2000 Coll., the Copyright Act, as amended. In accordance with Article~46(6) of the Act, I hereby grant a nonexclusive authorization (license) to utilize this thesis, including any and all computer programs incorporated therein or attached thereto and all corresponding documentation (hereinafter collectively referred to as the ``Work''), to any and all persons that wish to utilize the Work. Such persons are entitled to use the Work in any way (including for-profit purposes) that does not detract from its value. This authorization is not limited in terms of time, location and quantity. 254 | }\fi\fi 255 | }\@declarationOptionSelectedtrue\fi 256 | \ifx6#1 \DeclareRobustCommand{\thedeclarationofauthenticity}{\if\@lang1{% 257 | Prohla\v suji, \v ze jsem p\v redlo\v zenou pr\'aci vypracoval(a) samostatn\v e a \v ze jsem uvedl(a) ve\v sker\'e pou\v zit\'e informa\v cn\'\i{} zdroje v~souladu s~Metodick\'ym pokynem o~etick\'e p\v r\'\i{}prav\v e vysoko\v skolsk\'ych z\'av\v ere\v cn\'ych prac\'\i{}. 258 | 259 | Beru na v\v edom\'\i{}, \v ze se na moji pr\'aci vztahuj\'\i{} pr\'ava a povinnosti vypl\'yvaj\'\i{}c\'\i{} ze z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, ve zn\v en\'\i{} pozd\v ej\v s\'\i{}ch p\v redpis{\r u}. D\'ale prohla\v suji, \v ze jsem s~\v Cesk\'ym vysok\'ym u\v cen\'\i{}m technick\'ym v~Praze uzav\v rel dohodu, na z\'aklad\v e n\'\i{}\v z se \v CVUT vzdalo pr\'ava na uzav\v ren\'\i{} licen\v cn\'\i{} smlouvy o~u\v zit\'\i{} t\'eto pr\'ace jako \v skoln\'\i{}ho d\'\i{}la podle \S{}~60 odst.~1 autorsk\'eho z\'akona. Tato skute\v cnost nem\'a vliv na ust. \S{}~47b z\'akona \v c.~111/1998~Sb., o~vysok\'ych \v skol\'ach, ve zn\v en\'\i{} pozd\v ej\v s\'\i{}ch p\v redpis{\r u}. 260 | }\else\if\@lang2{% 261 | Prehlasujem, \v ze som predlo\v zen\'u pr\'acu vypracoval(a) samostatne a \v ze som uviedol(uviedla) v\v setky informa\v cn\'e zdroje v~s\'ulade s~Metodick\'ym pokynom o~etickej pr\'iprave vysoko\v skolsk\'ych z\'avere\v cn\'ych pr\'ac. 262 | 263 | Beriem na vedomie, \v ze sa na moju pr\'acu vz\v tahuj\'u pr\'ava a povinnosti vypl\'yvaj\'uce zo z\'akona \v c.~121/2000~Sb., autorsk\'eho z\'akona, v znen\'\i\ neskor\v s\'\i ch predpisov. \v Dalej prehlasujem, \v ze som s~\v CVUT uzavrel dohodu, na z\'aklade ktorej sa \v CVUT vzdalo pr\'ava na uzavrenie licen\v cnej zmluvy o~pou\v z\'\i van\'\i\ tejto pr\'ace ako \v skolsk\'eho diela pod\v la \S{}~60 odst.~1 autorsk\'eho z\'akona. T\'ato skuto\v cnos\v t nem\'a vplyv na ust. \S{}~47b z\'akona \v c.~111/1998~Sb. o~vysok\'ych \v skol\'ach. 264 | }\else{ 265 | I hereby declare that the presented thesis is my own work and that I have cited all sources of information in accordance with the Guideline for adhering to ethical principles when elaborating an academic final thesis. 266 | 267 | I acknowledge that my thesis is subject to the rights and obligations stipulated by the Act No.~121/2000 Coll., the Copyright Act, as amended. I further declare that I have concluded an agreement with the Czech Technical University in Prague, on the basis of which the Czech Technical University in Prague has waived its right to conclude a license agreement on the utilization of this thesis as school work under the provisions of Article~60(1) of the Act. This fact shall not affect the provisions of Article~47b of the Act No.~111/1998 Coll., the Higher Education Act, as amended. 268 | }\fi\fi 269 | }\@declarationOptionSelectedtrue\fi 270 | 271 | } 272 | 273 | \DeclareRobustCommand{\titlepage}{ 274 | \begin{titlingpage} 275 | \begin{center} 276 | \noindent\begin{tabular*}{\textwidth}{m{.77\textwidth}m{.165\textwidth}} 277 | {\large\scshape \if\@lang1{ 278 | {\v C}esk{\' e} vysok{\' e} u{\v c}en{\' i} technick{\' e} v~Praze 279 | }\else\if\@lang2{ 280 | {\v C}esk{\' e} vysok{\' e} u{\v c}en{\' i} technick{\' e} v~Praze 281 | }\else{ 282 | Czech Technical University in Prague 283 | }\fi\fi 284 | 285 | \vspace{3mm} 286 | 287 | \if\@lang1{ 288 | Fakulta informa{\v c}n{\' i}ch technologi{\' i} 289 | }\else\if\@lang2{ 290 | Fakulta informa{\v c}n{\' i}ch technologi{\' i} 291 | }\else{ 292 | Faculty of Information Technology 293 | }\fi\fi 294 | 295 | \vspace{4mm} 296 | 297 | \if@departmentdefined 298 | \thedepartment 299 | \else 300 | \ClassError{FITthesis}{Department unspecified}{Specify the department using the \department command.} 301 | \fi 302 | } & \hfill\includegraphics[width=.16\textwidth]{cvut-logo-bw} 303 | \end{tabular*} 304 | \end{center} 305 | 306 | 307 | \vfill 308 | 309 | {\Large 310 | \noindent\thesistype 311 | } 312 | \vspace{1cm} 313 | 314 | \if\thetitle\empty 315 | \ClassError{FITthesis}{Thesis' title unspecified}{Specify title of this thesis using the \protect\title\space command.} 316 | \else 317 | \noindent\textbf{\LARGE \begin{flushleft}\thetitle\end{flushleft}} 318 | \fi 319 | 320 | \vspace{4mm} 321 | 322 | \if@authorwithdegreesdefined 323 | \noindent\textbf{\Large \textit{\theauthorwithdegrees}} 324 | \else 325 | \ClassError{FITthesis}{Thesis' author with degrees unspecified}{Specify author of this thesis (i.e. your name \& degrees) using the \protect\theauthorwithdegrees\space command.} 326 | \fi 327 | 328 | \vfill 329 | 330 | \noindent\if\@lang1{Vedouc{\' i} pr{\' a}ce:}\else\if\@lang2{Ved\'uci pr{\' a}ce:}\else{Supervisor:}\fi\fi 331 | \if@supervisordefined% 332 | ~\thesupervisor 333 | \else 334 | \ClassError{FITthesis}{Thesis' supervisor unspecified}{Specify the supervisor of this thesis using the \protect\thesupervisor\space command.} 335 | \fi 336 | 337 | \vspace{1cm} 338 | 339 | \noindent\today 340 | \end{titlingpage} 341 | } 342 | 343 | \DeclareRobustCommand{\acknowledgementspage}{ 344 | \if@acknowledgementsdefined 345 | \cleardoublepage 346 | \thispagestyle{empty} 347 | 348 | ~ 349 | 350 | \vfill 351 | 352 | \if\@lang1\chapterstyletitle{Pod{\v e}kov{\' a}n{\' i}}\else\if\@lang2\chapterstyletitle{Po\v dakovanie}\else\chapterstyletitle{Acknowledgements}\fi\fi\theacknowledgements 353 | \fi 354 | } 355 | 356 | \DeclareRobustCommand{\declarationofauthenticitypage}{ 357 | \cleardoublepage 358 | \thispagestyle{empty} 359 | 360 | ~ 361 | 362 | \vfill 363 | 364 | \if@declarationOptionSelected 365 | \if\@lang1\chapterstyletitle{Prohl{\' a}{\v s}en{\' i}}\else\if\@lang2\chapterstyletitle{Prehl{\' a}senie}\else\chapterstyletitle{Declaration}\fi\fi\thedeclarationofauthenticity{} 366 | 367 | \vspace{2cm} 368 | 369 | \noindent 370 | \if@cityfordeclarationdefined 371 | \if\@lang1{}\else\if\@lang2{}\else{In }\fi\fi\thecityfordeclaration{} \if\@lang1{dne}\else\if\@lang2{}\else{on}\fi\fi~\today \hfill \dots\dots\dots\dots\dots\dots\dots 372 | \else 373 | \ClassError{FITthesis}{M{\' i}sto prohl{\' a}{\v s}en{\' i} nebylo zad{\' a}no}{Nastavte m{\' i}sto, kde bylo podeps{\' a}no prohl{\' a}{\v s}en{\' i}, v{\v c}etn{\v e} p{\v r}edlo{\v z}ky (nap{\v r}. V~Praze) pomoc{\' i} p{\v r}{\' i}kazu \placeForDeclaration.} 374 | \fi 375 | 376 | \else 377 | \ClassError{FITthesis}{Declaration of authenticity unspecified}{Select the declaration of authenticity using the \declarationOfAuthenticityOption command.} 378 | \fi 379 | } 380 | 381 | \DeclareRobustCommand{\imprintpage}{ 382 | \clearpage 383 | \thispagestyle{empty} 384 | 385 | ~ 386 | 387 | \vfill 388 | 389 | \if\@lang1{ 390 | \noindent {\v C}esk{\' e} vysok{\' e} u{\v c}en{\' i} technick{\' e} v~Praze 391 | 392 | \noindent Fakulta informa{\v c}n{\' i}ch technologi{\' i}}\else\if\@lang2{ 393 | \noindent {\v C}esk{\' e} vysok{\' e} u{\v c}en{\' i} technick{\' e} v~Praze 394 | 395 | \noindent Fakulta informa{\v c}n{\' i}ch technologi{\' i}}\else{ 396 | \noindent Czech Technical University in Prague 397 | 398 | \noindent Faculty of Information Technology 399 | }\fi\fi 400 | 401 | \noindent \textcopyright{} \the\year{} \theauthorGN{} \theauthorFN{}. \if\@lang1{V{\v s}echna pr{\' a}va vyhrazena.}\else\if\@lang2{V{\v s}etky pr{\' a}va vyhraden\'e.}\else{All rights reserved.}\fi\fi 402 | 403 | \if\@lang1{ 404 | \noindent \textit{Tato pr{\' a}ce vznikla jako {\v s}koln{\' i} d{\' i}lo na {\v C}esk{\' e}m vysok{\' e}m u{\v c}en{\' i} technick{\' e}m v~Praze, Fakult{\v e} informa{\v c}n{\' i}ch technologi{\' i}. Pr{\' a}ce je chr{\' a}n{\v e}na pr{\' a}vn{\' i}mi p{\v r}edpisy a mezin{\' a}rodn{\' i}mi {\' u}mluvami o~pr{\' a}vu autorsk{\' e}m a pr{\' a}vech souvisej{\' i}c{\' i}ch s~pr{\' a}vem autorsk{\' y}m. K~jej{\' i}mu u{\v z}it{\' i}, s~v{\' y}jimkou bez{\' u}platn{\' y}ch z{\' a}konn{\' y}ch licenc{\' i}, je nezbytn{\' y} souhlas autora.}}\else\if\@lang2{ 405 | \noindent \textit{T\'ato pr\'aca vznikla ako \v skolsk\'e dielo na FIT \v CVUT v Prahe. Pr\'aca je chr\'anen\'a medzin\'arodn\'ymi predpismi a zmluvami o autorskom pr\'ave a pr\'avach s\'uvisiacich s autorsk\'ym pr\'avom. Na jej vyu\v zitie, s~v\'ynimkou bezplatn\'ych z\'akonn\'ych licenci\'\i, je nutn\'y s\'uhlas autora.}}\else{ 406 | \noindent \textit{This thesis is school work as defined by Copyright Act of the Czech Republic. It has been submitted at Czech Technical University in Prague, Faculty of Information Technology. The thesis is protected by the Copyright Act and its usage without author's permission is prohibited (with exceptions defined by the Copyright Act).} 407 | }\fi\fi 408 | 409 | \if\@lang1{\subsection{Odkaz na tuto pr{\' a}ci} \theauthorFN{}, \theauthorGN{}. \textit{\thetitle{}}. \thesistype{}. Praha: {\v C}esk\'e vysok\'e u\v cen\'\i{} technick\'e v~Praze, Fakulta informa{\v c}n{\' i}ch technologi{\' i}, \the\year.}\else\if\@lang2{\subsection{Odkaz na t\'uto pr{\' a}cu} \theauthorFN{}, \theauthorGN{}. \textit{\thetitle{}}. \thesistype{}. Praha: {\v C}esk\'e vysok\'e u\v cen\'\i{} technick\'e v~Praze, Fakulta informa{\v c}n{\' i}ch technologi{\' i}, \the\year.}\else{\subsection{Citation of this thesis} \theauthorFN{}, \theauthorGN{}. \textit{\thetitle{}}. \thesistype{}. Czech Technical University in Prague, Faculty of Information Technology, \the\year.}\fi\fi 410 | } 411 | 412 | \DeclareRobustCommand{\abstractpage}{ 413 | \chapter*{Abstrakt} 414 | \if@abstractcsdefined 415 | \theabstractcs 416 | \else 417 | \ClassError{FITthesis}{Abstract in Czech unspecified}{Specify abstract in Czech language using the \abstractCS command.} 418 | \fi 419 | 420 | \if@keywordscsdefined 421 | \paragraph*{Kl{\' i}{\v c}ov{\' a} slova} \thekeywordscs{} 422 | \else 423 | \ClassError{FITthesis}{Czech keywords unspecified}{Specify the keywords in Czech of your thesis using \keywordsCS command.} 424 | \fi 425 | 426 | \vfil 427 | 428 | \if@abstractendefined 429 | \chapterstyletitle{Abstract}\theabstracten 430 | \else 431 | \ClassError{FITthesis}{Abstract in English unspecified}{Specify abstract in English using the \abstractEN command.} 432 | \fi 433 | 434 | \if@keywordsendefined 435 | \paragraph*{Keywords} \thekeywordsen{} 436 | \else 437 | \ClassError{FITthesis}{English keywords unspecified}{Specify the keywords in English of your thesis using \keywordsEN command.} 438 | \fi 439 | } 440 | 441 | \AfterEndPreamble{ 442 | \frontmatter 443 | \thispagestyle{empty} 444 | \if\@lang1{Sem vlo{\v z}te zad{\' a}n{\' i} Va{\v s}{\' i} pr{\' a}ce.}\else\if\@lang2{Sem vlo{\v z}te zadanie Va{\v s}ej pr{\' a}ce.}\else{Insert here your thesis' task.}\fi\fi 445 | 446 | \pagestyle{plain} 447 | \cleardoublepage 448 | \titlepage 449 | 450 | \setcounter{page}{5} 451 | \acknowledgementspage 452 | 453 | \declarationofauthenticitypage 454 | \imprintpage 455 | 456 | \abstractpage 457 | 458 | \cleardoublepage 459 | \tableofcontents* 460 | 461 | \cleardoublepage 462 | \listoffigures* 463 | 464 | \cleardoublepage 465 | \listoftablescond 466 | 467 | \pagestyle{ruled} 468 | \mainmatter 469 | } 470 | -------------------------------------------------------------------------------- /csn690.bst: -------------------------------------------------------------------------------- 1 | %% 2 | %% This is file `czech.bst', 3 | %% generated with the docstrip utility. 4 | %% 5 | %% The original source files were: 6 | %% 7 | %% merlin.mbs (with options: `head,exlang,lang,vonx,nm-rev,jnrlst,aunm-semi,nmlm,x3,m3,atit-u,vnum-nr,volp-sp,jwdpg,pp-last,jwdvol,num-xser,ser-vol,ser-ed,pg-bk,add-pub,isbn,issn,doi,edpar,edby,blk-tit,au-col,\v ce\v stina,pp,and-xcom,xand,eprint,biburl,url-nl,nfss,,{}') 8 | %% czech.mbs (with options: `exlang,lang,vonx,nm-rev,jnrlst,aunm-semi,nmlm,x3,m3,atit-u,vnum-nr,volp-sp,jwdpg,pp-last,jwdvol,num-xser,ser-vol,ser-ed,pg-bk,add-pub,isbn,issn,doi,edpar,edby,blk-tit,au-col,\v ce\v stina,pp,and-xcom,xand,eprint,biburl,url-nl,nfss,,{}') 9 | %% merlin.mbs (with options: `tail,exlang,lang,vonx,nm-rev,jnrlst,aunm-semi,nmlm,x3,m3,atit-u,vnum-nr,volp-sp,jwdpg,pp-last,jwdvol,num-xser,ser-vol,ser-ed,pg-bk,add-pub,isbn,issn,doi,edpar,edby,blk-tit,au-col,\v ce\v stina,pp,and-xcom,xand,eprint,biburl,url-nl,nfss,,{}') 10 | %% ---------------------------------------- 11 | %% *** Czech style CSN ISO 690 *** 12 | %% 13 | %% Copyright 1994-2004 Patrick W Daly 14 | %% Copyright 2011 David Madle 15 | % =============================================================== 16 | % IMPORTANT NOTICE: 17 | % This bibliographic style (bst) file has been generated from one or 18 | % more master bibliographic style (mbs) files, listed above. 19 | % 20 | % This generated file can be redistributed and/or modified under the terms 21 | % of the LaTeX Project Public License Distributed from CTAN 22 | % archives in directory macros/latex/base/lppl.txt; either 23 | % version 1 of the License, or any later version. 24 | % =============================================================== 25 | % Name and version information of the main mbs file: 26 | % \ProvidesFile{merlin.mbs}[2004/02/09 4.13 (PWD, AO, DPC)] 27 | % For use with BibTeX version 0.99a or later 28 | %------------------------------------------------------------------- 29 | % This bibliography style file is intended for texts in 30 | % This is a numerical citation style, and as such is standard LaTeX. 31 | % It requires no extra package to interface to the main text. 32 | % The form of the \bibitem entries is 33 | % \bibitem{key}... 34 | % Usage of \cite is as follows: 35 | % \cite{key} ==>> [#] 36 | % \cite[chap. 2]{key} ==>> [#, chap. 2] 37 | % where # is a number determined by the ordering in the reference list. 38 | % The order in the reference list is alphabetical by authors. 39 | %--------------------------------------------------------------------- 40 | 41 | %--------------------------------------------------------------------- 42 | % Custom entry type "online" added by Ondra Fiedler in 2013 43 | % It is intended for citations of online sources in format of CSN ISO 690-2 44 | % (Warning: I am not sure if it respects the norm absolutely) 45 | % It allows you to specify non-standard entries: 46 | % "cite" - date of the citation 47 | % "lastupdate" - date of last update of the source 48 | % "site" - name of the website 49 | % 50 | % Example: 51 | % @online{ukazka, 52 | % author = {Jmeno Prijmeni}, 53 | % title = {Nazev webove stranky}, 54 | % site = {Nazev weboveho sidla}, 55 | % address = {Misto publikovani}, 56 | % publisher = {Nakladatel}, 57 | % year = {2013}, 58 | % lastupdate = {Datum aktualizace/revize}, 59 | % cite = {Datum citovani}, 60 | % issn = {Standardni identifikator}, 61 | % url = {http://citaceonlinezdroje.cz} 62 | % } 63 | %--------------------------------------------------------------------- 64 | 65 | ENTRY 66 | { address 67 | archive 68 | author 69 | booktitle 70 | chapter 71 | cite 72 | doi 73 | edition 74 | editor 75 | eid 76 | eprint 77 | howpublished 78 | institution 79 | isbn 80 | issn 81 | journal 82 | key 83 | language 84 | lastupdate 85 | month 86 | note 87 | number 88 | organization 89 | pages 90 | publisher 91 | school 92 | series 93 | site 94 | title 95 | type 96 | url 97 | volume 98 | year 99 | } 100 | {} 101 | { label } 102 | INTEGERS { output.state before.all mid.sentence after.sentence after.block } 103 | FUNCTION {init.state.consts} 104 | { #0 'before.all := 105 | #1 'mid.sentence := 106 | #2 'after.sentence := 107 | #3 'after.block := 108 | } 109 | STRINGS { s t} 110 | FUNCTION {output.nonnull} 111 | { 's := 112 | output.state mid.sentence = 113 | { ", " * write$ } 114 | { output.state after.block = 115 | { add.period$ write$ 116 | newline$ 117 | "\newblock " write$ 118 | } 119 | { output.state before.all = 120 | 'write$ 121 | { add.period$ " " * write$ } 122 | if$ 123 | } 124 | if$ 125 | mid.sentence 'output.state := 126 | } 127 | if$ 128 | s 129 | } 130 | FUNCTION {output} 131 | { duplicate$ empty$ 132 | 'pop$ 133 | 'output.nonnull 134 | if$ 135 | } 136 | FUNCTION {output.check} 137 | { 't := 138 | duplicate$ empty$ 139 | { pop$ "empty " t * " in " * cite$ * warning$ } 140 | 'output.nonnull 141 | if$ 142 | } 143 | FUNCTION {fin.entry} 144 | { add.period$ 145 | write$ 146 | newline$ 147 | } 148 | 149 | FUNCTION {new.block} 150 | { output.state before.all = 151 | 'skip$ 152 | { after.block 'output.state := } 153 | if$ 154 | } 155 | FUNCTION {new.sentence} 156 | { output.state after.block = 157 | 'skip$ 158 | { output.state before.all = 159 | 'skip$ 160 | { after.sentence 'output.state := } 161 | if$ 162 | } 163 | if$ 164 | } 165 | FUNCTION {add.blank} 166 | { " " * before.all 'output.state := 167 | } 168 | 169 | FUNCTION {add.colon} 170 | { duplicate$ empty$ 171 | 'skip$ 172 | { ":" * add.blank } 173 | if$ 174 | } 175 | 176 | FUNCTION {date.block} 177 | { 178 | skip$ 179 | } 180 | 181 | FUNCTION {not} 182 | { { #0 } 183 | { #1 } 184 | if$ 185 | } 186 | FUNCTION {and} 187 | { 'skip$ 188 | { pop$ #0 } 189 | if$ 190 | } 191 | FUNCTION {or} 192 | { { pop$ #1 } 193 | 'skip$ 194 | if$ 195 | } 196 | FUNCTION {new.block.checka} 197 | { empty$ 198 | 'skip$ 199 | 'new.block 200 | if$ 201 | } 202 | FUNCTION {new.block.checkb} 203 | { empty$ 204 | swap$ empty$ 205 | and 206 | 'skip$ 207 | 'new.block 208 | if$ 209 | } 210 | FUNCTION {new.sentence.checka} 211 | { empty$ 212 | 'skip$ 213 | 'new.sentence 214 | if$ 215 | } 216 | FUNCTION {new.sentence.checkb} 217 | { empty$ 218 | swap$ empty$ 219 | and 220 | 'skip$ 221 | 'new.sentence 222 | if$ 223 | } 224 | FUNCTION {field.or.null} 225 | { duplicate$ empty$ 226 | { pop$ "" } 227 | 'skip$ 228 | if$ 229 | } 230 | FUNCTION {emphasize} 231 | { duplicate$ empty$ 232 | { pop$ "" } 233 | { "\emph{" swap$ * "}" * } 234 | if$ 235 | } 236 | FUNCTION {tie.or.space.prefix} 237 | { duplicate$ text.length$ #3 < 238 | { "~" } 239 | { " " } 240 | if$ 241 | swap$ 242 | } 243 | 244 | FUNCTION {capitalize} 245 | { "u" change.case$ "t" change.case$ } 246 | 247 | FUNCTION {space.word} 248 | { " " swap$ * " " * } 249 | % Here are the language-specific definitions for explicit words. 250 | % Each function has a name bbl.xxx where xxx is the English word. 251 | %------------------------------------------------------------------- 252 | % Begin module: 253 | % \ProvidesFile{czech.mbs}[2011/07/09 1.0 (DM)] 254 | 255 | % The language selected here is CZECH 256 | FUNCTION {bbl.and} 257 | { "a"} 258 | 259 | FUNCTION {bbl.etal} 260 | { "aj." } 261 | 262 | FUNCTION {bbl.editors} 263 | { "edito\v ri" } 264 | 265 | FUNCTION {bbl.editor} 266 | { "editor" } 267 | 268 | FUNCTION {bbl.edby} 269 | { "editace" } 270 | 271 | FUNCTION {bbl.edition} 272 | { "vyd\'an\'\i{}" } 273 | 274 | FUNCTION {bbl.volume} 275 | { "ro\v cn\'\i{}k" } 276 | 277 | FUNCTION {bbl.of} 278 | { "" } 279 | 280 | FUNCTION {bbl.number} 281 | { "\v c\'\i{}slo" } 282 | 283 | FUNCTION {bbl.nr} 284 | { "\v c." } 285 | 286 | FUNCTION {bbl.in} 287 | { "in" } 288 | 289 | FUNCTION {bbl.pages} 290 | { "s." } 291 | 292 | FUNCTION {bbl.page} 293 | { "str." } 294 | 295 | FUNCTION {bbl.chapter} 296 | { "kapitola" } 297 | 298 | FUNCTION {bbl.techrep} 299 | { "Technick\'a Zpr\'ava" } 300 | 301 | FUNCTION {bbl.mthesis} 302 | { "Diplomov\'a pr\'ace" } 303 | 304 | FUNCTION {bbl.phdthesis} 305 | { "Dizerta\v cn\'\i{} pr\'ace" } 306 | 307 | FUNCTION {bbl.first} 308 | { "Prvn\'\i{}" } 309 | 310 | FUNCTION {bbl.second} 311 | { "Druh\'e" } 312 | 313 | FUNCTION {bbl.third} 314 | { "T\v ret\'\i{}" } 315 | 316 | FUNCTION {bbl.fourth} 317 | { "\v Ctvrt\'e" } 318 | 319 | FUNCTION {bbl.fifth} 320 | { "P\'at\'e" } 321 | 322 | FUNCTION {bbl.st} 323 | { "" } 324 | 325 | FUNCTION {bbl.nd} 326 | { "" } 327 | 328 | FUNCTION {bbl.rd} 329 | { "" } 330 | 331 | FUNCTION {bbl.th} 332 | { "" } 333 | 334 | MACRO {jan} {"Leden"} 335 | 336 | MACRO {feb} {"\'Unor"} 337 | 338 | MACRO {mar} {"B\v rezen"} 339 | 340 | MACRO {apr} {"Duben"} 341 | 342 | MACRO {may} {"Kv\v eten"} 343 | 344 | MACRO {jun} {"\v Cerven"} 345 | 346 | MACRO {jul} {"\v Cervenec"} 347 | 348 | MACRO {aug} {"Srpen"} 349 | 350 | MACRO {sep} {"Z\'a\v r\'\i{}"} 351 | 352 | MACRO {oct} {"\v R\'\i{}jen"} 353 | 354 | MACRO {nov} {"Listopad"} 355 | 356 | MACRO {dec} {"Prosinec"} 357 | 358 | % End module: czech.mbs 359 | %% Copyright 1994-2004 Patrick W Daly 360 | MACRO {acmcs} {"ACM Computing Surveys"} 361 | 362 | MACRO {acta} {"Acta Informatica"} 363 | 364 | MACRO {cacm} {"Communications of the ACM"} 365 | 366 | MACRO {ibmjrd} {"IBM Journal of Research and Development"} 367 | 368 | MACRO {ibmsj} {"IBM Systems Journal"} 369 | 370 | MACRO {ieeese} {"IEEE Transactions on Software Engineering"} 371 | 372 | MACRO {ieeetc} {"IEEE Transactions on Computers"} 373 | 374 | MACRO {ieeetcad} 375 | {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} 376 | 377 | MACRO {ipl} {"Information Processing Letters"} 378 | 379 | MACRO {jacm} {"Journal of the ACM"} 380 | 381 | MACRO {jcss} {"Journal of Computer and System Sciences"} 382 | 383 | MACRO {scp} {"Science of Computer Programming"} 384 | 385 | MACRO {sicomp} {"SIAM Journal on Computing"} 386 | 387 | MACRO {tocs} {"ACM Transactions on Computer Systems"} 388 | 389 | MACRO {tods} {"ACM Transactions on Database Systems"} 390 | 391 | MACRO {tog} {"ACM Transactions on Graphics"} 392 | 393 | MACRO {toms} {"ACM Transactions on Mathematical Software"} 394 | 395 | MACRO {toois} {"ACM Transactions on Office Information Systems"} 396 | 397 | MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} 398 | 399 | MACRO {tcs} {"Theoretical Computer Science"} 400 | FUNCTION {bibinfo.check} 401 | { swap$ 402 | duplicate$ missing$ 403 | { 404 | pop$ pop$ 405 | "" 406 | } 407 | { duplicate$ empty$ 408 | { 409 | swap$ pop$ 410 | } 411 | { swap$ 412 | pop$ 413 | } 414 | if$ 415 | } 416 | if$ 417 | } 418 | FUNCTION {bibinfo.warn} 419 | { swap$ 420 | duplicate$ missing$ 421 | { 422 | swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ 423 | "" 424 | } 425 | { duplicate$ empty$ 426 | { 427 | swap$ "empty " swap$ * " in " * cite$ * warning$ 428 | } 429 | { swap$ 430 | pop$ 431 | } 432 | if$ 433 | } 434 | if$ 435 | } 436 | FUNCTION {format.eprint} 437 | { eprint duplicate$ empty$ 438 | 'skip$ 439 | { "\eprint" 440 | archive empty$ 441 | 'skip$ 442 | { "[" * archive * "]" * } 443 | if$ 444 | "{" * swap$ * "}" * 445 | } 446 | if$ 447 | } 448 | FUNCTION {write.url} 449 | { url empty$ 450 | { skip$ } 451 | { "\urlprefix\biburl{" url * "}" * write$ newline$ } 452 | if$ 453 | } 454 | 455 | STRINGS { bibinfo} 456 | INTEGERS { nameptr namesleft numnames } 457 | 458 | FUNCTION {format.names} 459 | { 'bibinfo := 460 | duplicate$ empty$ 'skip$ { 461 | 's := 462 | "" 't := 463 | #1 'nameptr := 464 | s num.names$ 'numnames := 465 | numnames 'namesleft := 466 | { namesleft #0 > } 467 | { s nameptr 468 | "{vv~}{ll}{, f.}{, jj}" 469 | format.name$ 470 | bibinfo bibinfo.check 471 | 't := 472 | nameptr #1 > 473 | { 474 | nameptr #3 475 | #1 + = 476 | numnames #3 477 | > and 478 | { "others" 't := 479 | #1 'namesleft := } 480 | 'skip$ 481 | if$ 482 | namesleft #1 > 483 | { "; " * t * } 484 | { 485 | ";" * 486 | s nameptr "{ll}" format.name$ duplicate$ "others" = 487 | { 't := } 488 | { pop$ } 489 | if$ 490 | t "others" = 491 | { 492 | " " * bbl.etal * 493 | } 494 | { " " * t * } 495 | if$ 496 | } 497 | if$ 498 | } 499 | 't 500 | if$ 501 | nameptr #1 + 'nameptr := 502 | namesleft #1 - 'namesleft := 503 | } 504 | while$ 505 | } if$ 506 | } 507 | FUNCTION {format.names.ed} 508 | { 509 | 'bibinfo := 510 | duplicate$ empty$ 'skip$ { 511 | 's := 512 | "" 't := 513 | #1 'nameptr := 514 | s num.names$ 'numnames := 515 | numnames 'namesleft := 516 | { namesleft #0 > } 517 | { s nameptr 518 | "{f.~}{vv~}{ll}{, jj}" 519 | format.name$ 520 | bibinfo bibinfo.check 521 | 't := 522 | nameptr #1 > 523 | { 524 | namesleft #1 > 525 | { "; " * t * } 526 | { 527 | ";" * 528 | s nameptr "{ll}" format.name$ duplicate$ "others" = 529 | { 't := } 530 | { pop$ } 531 | if$ 532 | t "others" = 533 | { 534 | 535 | " " * bbl.etal * 536 | } 537 | { " " * t * } 538 | if$ 539 | } 540 | if$ 541 | } 542 | 't 543 | if$ 544 | nameptr #1 + 'nameptr := 545 | namesleft #1 - 'namesleft := 546 | } 547 | while$ 548 | } if$ 549 | } 550 | FUNCTION {format.authors} 551 | { author "author" format.names 552 | } 553 | FUNCTION {get.bbl.editor} 554 | { editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } 555 | 556 | FUNCTION {format.editors} 557 | { editor "editor" format.names duplicate$ empty$ 'skip$ 558 | { 559 | " " * 560 | get.bbl.editor 561 | "(" swap$ * ")" * 562 | * 563 | } 564 | if$ 565 | } 566 | FUNCTION {format.book.pages} 567 | { pages "pages" bibinfo.check 568 | duplicate$ empty$ 'skip$ 569 | { " " * bbl.pages * } 570 | if$ 571 | } 572 | FUNCTION {format.isbn} 573 | { isbn "isbn" bibinfo.check 574 | duplicate$ empty$ 'skip$ 575 | { 576 | "ISBN " swap$ * 577 | } 578 | if$ 579 | } 580 | 581 | FUNCTION {format.issn} 582 | { issn "issn" bibinfo.check 583 | duplicate$ empty$ 'skip$ 584 | { 585 | "ISSN " swap$ * 586 | } 587 | if$ 588 | } 589 | 590 | FUNCTION {format.cite} 591 | { cite "cite" bibinfo.check 592 | duplicate$ empty$ 'skip$ 593 | { 594 | "[cit. " swap$ * "]" * 595 | } 596 | if$ 597 | } 598 | 599 | 600 | FUNCTION {format.doi} 601 | { doi "doi" bibinfo.check 602 | duplicate$ empty$ 'skip$ 603 | { 604 | "\doi{" swap$ * "}" * 605 | } 606 | if$ 607 | } 608 | FUNCTION {select.language} 609 | { duplicate$ empty$ 610 | 'pop$ 611 | { language empty$ 612 | 'skip$ 613 | { "{\selectlanguage{" language * "}" * swap$ * "}" * } 614 | if$ 615 | } 616 | if$ 617 | } 618 | 619 | FUNCTION {format.note} 620 | { 621 | note empty$ 622 | { "" } 623 | { note #1 #1 substring$ 624 | duplicate$ "{" = 625 | 'skip$ 626 | { output.state mid.sentence = 627 | { "l" } 628 | { "u" } 629 | if$ 630 | change.case$ 631 | } 632 | if$ 633 | note #2 global.max$ substring$ * "note" bibinfo.check 634 | } 635 | if$ 636 | } 637 | 638 | FUNCTION {format.title} 639 | { title 640 | "title" bibinfo.check 641 | duplicate$ empty$ 'skip$ 642 | { 643 | select.language 644 | } 645 | if$ 646 | } 647 | FUNCTION {output.bibitem} 648 | { newline$ 649 | "\bibitem{" write$ 650 | cite$ write$ 651 | "}" write$ 652 | newline$ 653 | "" 654 | before.all 'output.state := 655 | } 656 | 657 | FUNCTION {n.dashify} 658 | { 659 | 't := 660 | "" 661 | { t empty$ not } 662 | { t #1 #1 substring$ "-" = 663 | { t #1 #2 substring$ "--" = not 664 | { "--" * 665 | t #2 global.max$ substring$ 't := 666 | } 667 | { { t #1 #1 substring$ "-" = } 668 | { "-" * 669 | t #2 global.max$ substring$ 't := 670 | } 671 | while$ 672 | } 673 | if$ 674 | } 675 | { t #1 #1 substring$ * 676 | t #2 global.max$ substring$ 't := 677 | } 678 | if$ 679 | } 680 | while$ 681 | } 682 | 683 | FUNCTION {word.in} 684 | { bbl.in capitalize 685 | " " * } 686 | 687 | FUNCTION {format.date} 688 | { 689 | month "month" bibinfo.check 690 | duplicate$ empty$ 691 | year "year" bibinfo.check duplicate$ empty$ 692 | { swap$ 'skip$ 693 | { "there's a month but no year in " cite$ * warning$ } 694 | if$ 695 | * 696 | } 697 | { swap$ 'skip$ 698 | { 699 | swap$ 700 | " " * swap$ 701 | } 702 | if$ 703 | * 704 | } 705 | if$ 706 | } 707 | FUNCTION {format.btitle} 708 | { title "title" bibinfo.check 709 | duplicate$ empty$ 'skip$ 710 | { 711 | emphasize 712 | select.language 713 | } 714 | if$ 715 | } 716 | FUNCTION {either.or.check} 717 | { empty$ 718 | 'pop$ 719 | { "can't use both " swap$ * " fields in " * cite$ * warning$ } 720 | if$ 721 | } 722 | FUNCTION {format.bvolume} 723 | { volume empty$ 724 | { "" } 725 | { bbl.volume volume tie.or.space.prefix 726 | "volume" bibinfo.check * * 727 | series "series" bibinfo.check 728 | duplicate$ empty$ 'pop$ 729 | { emphasize ", " * swap$ * } 730 | if$ 731 | "volume and number" number either.or.check 732 | } 733 | if$ 734 | } 735 | FUNCTION {format.number.series} 736 | { volume empty$ 737 | { number empty$ 738 | { series field.or.null } 739 | { series empty$ 740 | { number "number" bibinfo.check } 741 | { output.state mid.sentence = 742 | { bbl.number } 743 | { bbl.number capitalize } 744 | if$ 745 | number tie.or.space.prefix "number" bibinfo.check * * 746 | bbl.in space.word * 747 | series "series" bibinfo.check * 748 | } 749 | if$ 750 | } 751 | if$ 752 | } 753 | { "" } 754 | if$ 755 | } 756 | FUNCTION {is.num} 757 | { chr.to.int$ 758 | duplicate$ "0" chr.to.int$ < not 759 | swap$ "9" chr.to.int$ > not and 760 | } 761 | 762 | FUNCTION {extract.num} 763 | { duplicate$ 't := 764 | "" 's := 765 | { t empty$ not } 766 | { t #1 #1 substring$ 767 | t #2 global.max$ substring$ 't := 768 | duplicate$ is.num 769 | { s swap$ * 's := } 770 | { pop$ "" 't := } 771 | if$ 772 | } 773 | while$ 774 | s empty$ 775 | 'skip$ 776 | { pop$ s } 777 | if$ 778 | } 779 | 780 | FUNCTION {convert.edition} 781 | { extract.num "l" change.case$ 's := 782 | s "first" = s "1" = or 783 | { bbl.first 't := } 784 | { s "second" = s "2" = or 785 | { bbl.second 't := } 786 | { s "third" = s "3" = or 787 | { bbl.third 't := } 788 | { s "fourth" = s "4" = or 789 | { bbl.fourth 't := } 790 | { s "fifth" = s "5" = or 791 | { bbl.fifth 't := } 792 | { s #1 #1 substring$ is.num 793 | { s bbl.th * 't := } 794 | { edition 't := } 795 | if$ 796 | } 797 | if$ 798 | } 799 | if$ 800 | } 801 | if$ 802 | } 803 | if$ 804 | } 805 | if$ 806 | t 807 | } 808 | 809 | FUNCTION {format.edition} 810 | { edition duplicate$ empty$ 'skip$ 811 | { 812 | convert.edition 813 | output.state mid.sentence = 814 | { "l" } 815 | { "t" } 816 | if$ change.case$ 817 | "edition" bibinfo.check 818 | " " * bbl.edition * 819 | } 820 | if$ 821 | } 822 | INTEGERS { multiresult } 823 | FUNCTION {multi.page.check} 824 | { 't := 825 | #0 'multiresult := 826 | { multiresult not 827 | t empty$ not 828 | and 829 | } 830 | { t #1 #1 substring$ 831 | duplicate$ "-" = 832 | swap$ duplicate$ "," = 833 | swap$ "+" = 834 | or or 835 | { #1 'multiresult := } 836 | { t #2 global.max$ substring$ 't := } 837 | if$ 838 | } 839 | while$ 840 | multiresult 841 | } 842 | FUNCTION {format.pages} 843 | { pages duplicate$ empty$ 'skip$ 844 | { duplicate$ multi.page.check 845 | { 846 | bbl.pages swap$ 847 | n.dashify 848 | } 849 | { 850 | bbl.page swap$ 851 | } 852 | if$ 853 | tie.or.space.prefix 854 | "pages" bibinfo.check 855 | * * 856 | } 857 | if$ 858 | } 859 | FUNCTION {format.journal.pages} 860 | { pages duplicate$ empty$ 'pop$ 861 | { swap$ duplicate$ empty$ 862 | { pop$ pop$ format.pages } 863 | { 864 | ": " * 865 | swap$ 866 | n.dashify 867 | pages multi.page.check 868 | 'bbl.pages 869 | 'bbl.page 870 | if$ 871 | swap$ tie.or.space.prefix 872 | "pages" bibinfo.check 873 | * * 874 | * 875 | } 876 | if$ 877 | } 878 | if$ 879 | } 880 | FUNCTION {format.journal.eid} 881 | { eid "eid" bibinfo.check 882 | duplicate$ empty$ 'pop$ 883 | { swap$ duplicate$ empty$ 'skip$ 884 | { 885 | ": " * 886 | } 887 | if$ 888 | swap$ * 889 | } 890 | if$ 891 | } 892 | FUNCTION {format.vol.num.pages} 893 | { volume field.or.null 894 | duplicate$ empty$ 'skip$ 895 | { 896 | bbl.volume swap$ tie.or.space.prefix 897 | "volume" bibinfo.check 898 | * * 899 | } 900 | if$ 901 | number "number" bibinfo.check duplicate$ empty$ 'skip$ 902 | { 903 | swap$ duplicate$ empty$ 904 | { "there's a number but no volume in " cite$ * warning$ } 905 | 'skip$ 906 | if$ 907 | swap$ 908 | ", " bbl.nr * number tie.or.space.prefix pop$ * swap$ * 909 | } 910 | if$ * 911 | } 912 | 913 | FUNCTION {format.chapter.pages} 914 | { chapter empty$ 915 | { "" } 916 | { type empty$ 917 | { bbl.chapter } 918 | { type "l" change.case$ 919 | "type" bibinfo.check 920 | } 921 | if$ 922 | chapter tie.or.space.prefix 923 | "chapter" bibinfo.check 924 | * * 925 | } 926 | if$ 927 | } 928 | 929 | FUNCTION {format.booktitle} 930 | { 931 | booktitle "booktitle" bibinfo.check 932 | emphasize 933 | } 934 | FUNCTION {format.in.ed.booktitle} 935 | { format.booktitle duplicate$ empty$ 'skip$ 936 | { 937 | format.bvolume duplicate$ empty$ 'pop$ 938 | { ", " swap$ * * } 939 | if$ 940 | editor "editor" format.names.ed duplicate$ empty$ 'pop$ 941 | { 942 | bbl.edby 943 | " " * swap$ * 944 | swap$ 945 | "," * 946 | " " * swap$ 947 | * } 948 | if$ 949 | word.in swap$ * 950 | } 951 | if$ 952 | } 953 | FUNCTION {empty.misc.check} 954 | { author empty$ title empty$ howpublished empty$ 955 | month empty$ year empty$ note empty$ 956 | and and and and and 957 | key empty$ not and 958 | { "all relevant fields are empty in " cite$ * warning$ } 959 | 'skip$ 960 | if$ 961 | } 962 | FUNCTION {format.thesis.type} 963 | { type duplicate$ empty$ 964 | 'pop$ 965 | { swap$ pop$ 966 | "t" change.case$ "type" bibinfo.check 967 | } 968 | if$ 969 | } 970 | FUNCTION {format.tr.number} 971 | { number "number" bibinfo.check 972 | type duplicate$ empty$ 973 | { pop$ bbl.techrep } 974 | 'skip$ 975 | if$ 976 | "type" bibinfo.check 977 | swap$ duplicate$ empty$ 978 | { pop$ "t" change.case$ } 979 | { tie.or.space.prefix * * } 980 | if$ 981 | } 982 | FUNCTION {format.article.crossref} 983 | { 984 | key duplicate$ empty$ 985 | { pop$ 986 | journal duplicate$ empty$ 987 | { "need key or journal for " cite$ * " to crossref " * crossref * warning$ } 988 | { "journal" bibinfo.check emphasize word.in swap$ * } 989 | if$ 990 | } 991 | { word.in swap$ * " " *} 992 | if$ 993 | " \cite{" * crossref * "}" * 994 | } 995 | FUNCTION {format.crossref.editor} 996 | { editor #1 "{vv~}{ll}" format.name$ 997 | "editor" bibinfo.check 998 | editor num.names$ duplicate$ 999 | #2 > 1000 | { pop$ 1001 | "editor" bibinfo.check 1002 | " " * bbl.etal 1003 | * 1004 | } 1005 | { #2 < 1006 | 'skip$ 1007 | { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = 1008 | { 1009 | "editor" bibinfo.check 1010 | " " * bbl.etal 1011 | * 1012 | } 1013 | { 1014 | bbl.and space.word 1015 | * editor #2 "{vv~}{ll}" format.name$ 1016 | "editor" bibinfo.check 1017 | * 1018 | } 1019 | if$ 1020 | } 1021 | if$ 1022 | } 1023 | if$ 1024 | } 1025 | FUNCTION {format.book.crossref} 1026 | { volume duplicate$ empty$ 1027 | { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ 1028 | pop$ word.in 1029 | } 1030 | { bbl.volume 1031 | capitalize 1032 | swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * 1033 | } 1034 | if$ 1035 | editor empty$ 1036 | editor field.or.null author field.or.null = 1037 | or 1038 | { key empty$ 1039 | { series empty$ 1040 | { "need editor, key, or series for " cite$ * " to crossref " * 1041 | crossref * warning$ 1042 | "" * 1043 | } 1044 | { series emphasize * } 1045 | if$ 1046 | } 1047 | { key * } 1048 | if$ 1049 | } 1050 | { format.crossref.editor * } 1051 | if$ 1052 | " \cite{" * crossref * "}" * 1053 | } 1054 | FUNCTION {format.incoll.inproc.crossref} 1055 | { 1056 | editor empty$ 1057 | editor field.or.null author field.or.null = 1058 | or 1059 | { key empty$ 1060 | { format.booktitle duplicate$ empty$ 1061 | { "need editor, key, or booktitle for " cite$ * " to crossref " * 1062 | crossref * warning$ 1063 | } 1064 | { word.in swap$ * } 1065 | if$ 1066 | } 1067 | { word.in key * " " *} 1068 | if$ 1069 | } 1070 | { word.in format.crossref.editor * " " *} 1071 | if$ 1072 | " \cite{" * crossref * "}" * 1073 | } 1074 | FUNCTION {format.org.or.pub} 1075 | { 't := 1076 | "" 1077 | address empty$ t empty$ and 1078 | 'skip$ 1079 | { 1080 | address "address" bibinfo.check * 1081 | t empty$ 1082 | 'skip$ 1083 | { address empty$ 1084 | 'skip$ 1085 | { ": " * } 1086 | if$ 1087 | t * 1088 | } 1089 | if$ 1090 | } 1091 | if$ 1092 | } 1093 | FUNCTION {format.publisher.address} 1094 | { publisher "publisher" bibinfo.warn format.org.or.pub 1095 | } 1096 | 1097 | FUNCTION {format.organization.address} 1098 | { organization "organization" bibinfo.check format.org.or.pub 1099 | } 1100 | 1101 | FUNCTION {article} 1102 | { output.bibitem 1103 | format.authors "author" output.check 1104 | add.colon 1105 | format.title "title" output.check 1106 | new.sentence 1107 | crossref missing$ 1108 | { 1109 | journal 1110 | "journal" bibinfo.check 1111 | emphasize 1112 | "journal" output.check 1113 | format.vol.num.pages output 1114 | format.date "year" output.check 1115 | } 1116 | { format.article.crossref output.nonnull 1117 | } 1118 | if$ 1119 | eid empty$ 1120 | { format.journal.pages } 1121 | { format.journal.eid } 1122 | if$ 1123 | format.issn output 1124 | format.doi output 1125 | format.note output 1126 | format.eprint output 1127 | fin.entry 1128 | write.url 1129 | } 1130 | FUNCTION {book} 1131 | { output.bibitem 1132 | author empty$ 1133 | { format.editors "author and editor" output.check 1134 | add.colon 1135 | } 1136 | { format.authors output.nonnull 1137 | add.colon 1138 | crossref missing$ 1139 | { "author and editor" editor either.or.check } 1140 | 'skip$ 1141 | if$ 1142 | } 1143 | if$ 1144 | format.btitle "title" output.check 1145 | crossref missing$ 1146 | { format.bvolume output 1147 | new.sentence 1148 | format.number.series output 1149 | format.publisher.address output 1150 | } 1151 | { 1152 | new.sentence 1153 | format.book.crossref output.nonnull 1154 | } 1155 | if$ 1156 | format.edition output 1157 | format.date "year" output.check 1158 | format.isbn output 1159 | format.book.pages output 1160 | format.doi output 1161 | format.note output 1162 | format.eprint output 1163 | fin.entry 1164 | write.url 1165 | } 1166 | FUNCTION {booklet} 1167 | { output.bibitem 1168 | format.authors output 1169 | add.colon 1170 | format.title "title" output.check 1171 | new.sentence 1172 | howpublished "howpublished" bibinfo.check output 1173 | address "address" bibinfo.check output 1174 | format.date output 1175 | format.isbn output 1176 | format.book.pages output 1177 | format.doi output 1178 | format.note output 1179 | format.eprint output 1180 | fin.entry 1181 | write.url 1182 | } 1183 | 1184 | FUNCTION {inbook} 1185 | { output.bibitem 1186 | author empty$ 1187 | { format.editors "author and editor" output.check 1188 | add.colon 1189 | } 1190 | { format.authors output.nonnull 1191 | add.colon 1192 | crossref missing$ 1193 | { "author and editor" editor either.or.check } 1194 | 'skip$ 1195 | if$ 1196 | } 1197 | if$ 1198 | format.btitle "title" output.check 1199 | crossref missing$ 1200 | { 1201 | format.bvolume output 1202 | format.chapter.pages "chapter and pages" output.check 1203 | new.sentence 1204 | format.number.series output 1205 | format.publisher.address output 1206 | } 1207 | { 1208 | format.chapter.pages "chapter and pages" output.check 1209 | new.sentence 1210 | format.book.crossref output.nonnull 1211 | } 1212 | if$ 1213 | format.edition output 1214 | format.date "year" output.check 1215 | crossref missing$ 1216 | { format.isbn output } 1217 | 'skip$ 1218 | if$ 1219 | format.pages "pages" output.check 1220 | format.doi output 1221 | format.note output 1222 | format.eprint output 1223 | fin.entry 1224 | write.url 1225 | } 1226 | 1227 | FUNCTION {incollection} 1228 | { output.bibitem 1229 | format.authors "author" output.check 1230 | add.colon 1231 | format.title "title" output.check 1232 | new.sentence 1233 | crossref missing$ 1234 | { format.in.ed.booktitle "booktitle" output.check 1235 | format.number.series output 1236 | format.chapter.pages output 1237 | format.publisher.address output 1238 | format.edition output 1239 | format.date "year" output.check 1240 | format.isbn output 1241 | } 1242 | { format.incoll.inproc.crossref output.nonnull 1243 | format.chapter.pages output 1244 | } 1245 | if$ 1246 | format.pages "pages" output.check 1247 | format.doi output 1248 | format.note output 1249 | format.eprint output 1250 | fin.entry 1251 | write.url 1252 | } 1253 | FUNCTION {inproceedings} 1254 | { output.bibitem 1255 | format.authors "author" output.check 1256 | add.colon 1257 | format.title "title" output.check 1258 | new.sentence 1259 | crossref missing$ 1260 | { format.in.ed.booktitle "booktitle" output.check 1261 | format.number.series output 1262 | publisher empty$ 1263 | { format.organization.address output } 1264 | { organization "organization" bibinfo.check output 1265 | format.publisher.address output 1266 | } 1267 | if$ 1268 | format.date "year" output.check 1269 | format.isbn output 1270 | format.issn output 1271 | } 1272 | { format.incoll.inproc.crossref output.nonnull 1273 | } 1274 | if$ 1275 | format.pages "pages" output.check 1276 | format.doi output 1277 | format.note output 1278 | format.eprint output 1279 | fin.entry 1280 | write.url 1281 | } 1282 | FUNCTION {conference} { inproceedings } 1283 | FUNCTION {manual} 1284 | { output.bibitem 1285 | author empty$ 1286 | { organization "organization" bibinfo.check 1287 | duplicate$ empty$ 'pop$ 1288 | { output 1289 | address "address" bibinfo.check output 1290 | } 1291 | if$ 1292 | } 1293 | { format.authors output.nonnull } 1294 | if$ 1295 | add.colon 1296 | format.btitle "title" output.check 1297 | new.sentence 1298 | author empty$ 1299 | { organization empty$ 1300 | { 1301 | address "address" bibinfo.check output 1302 | } 1303 | 'skip$ 1304 | if$ 1305 | } 1306 | { 1307 | organization "organization" bibinfo.check output 1308 | address "address" bibinfo.check output 1309 | } 1310 | if$ 1311 | format.edition output 1312 | format.date output 1313 | format.doi output 1314 | format.note output 1315 | format.eprint output 1316 | fin.entry 1317 | write.url 1318 | } 1319 | 1320 | FUNCTION {mastersthesis} 1321 | { output.bibitem 1322 | format.authors "author" output.check 1323 | add.colon 1324 | format.btitle 1325 | "title" output.check 1326 | new.sentence 1327 | bbl.mthesis format.thesis.type output.nonnull 1328 | school "school" bibinfo.warn output 1329 | address "address" bibinfo.check output 1330 | format.date "year" output.check 1331 | format.doi output 1332 | format.note output 1333 | format.eprint output 1334 | fin.entry 1335 | write.url 1336 | } 1337 | 1338 | FUNCTION {misc} 1339 | { output.bibitem 1340 | format.authors output 1341 | add.colon 1342 | format.title output 1343 | new.sentence 1344 | howpublished "howpublished" bibinfo.check output 1345 | format.date output 1346 | format.doi output 1347 | format.note output 1348 | format.eprint output 1349 | fin.entry 1350 | write.url 1351 | empty.misc.check 1352 | } 1353 | 1354 | 1355 | 1356 | FUNCTION {online} 1357 | { output.bibitem 1358 | format.authors output 1359 | add.colon 1360 | format.title output 1361 | new.sentence 1362 | site "site" bibinfo.warn output 1363 | emphasize 1364 | add.blank 1365 | "[online]" output 1366 | new.sentence 1367 | publisher empty$ 1368 | { 1369 | format.organization.address output } 1370 | { 1371 | organization "organization" bibinfo.check output 1372 | format.publisher.address output 1373 | } 1374 | if$ 1375 | format.date output 1376 | lastupdate "lastupdate" bibinfo.check output 1377 | add.blank 1378 | format.cite output 1379 | format.eprint output 1380 | format.issn output 1381 | format.note output 1382 | fin.entry 1383 | write.url 1384 | } 1385 | 1386 | 1387 | FUNCTION {phdthesis} 1388 | { output.bibitem 1389 | format.authors "author" output.check 1390 | add.colon 1391 | format.btitle 1392 | "title" output.check 1393 | new.sentence 1394 | bbl.phdthesis format.thesis.type output.nonnull 1395 | school "school" bibinfo.warn output 1396 | address "address" bibinfo.check output 1397 | format.date "year" output.check 1398 | format.doi output 1399 | format.note output 1400 | format.eprint output 1401 | fin.entry 1402 | write.url 1403 | } 1404 | 1405 | FUNCTION {proceedings} 1406 | { output.bibitem 1407 | editor empty$ 1408 | { organization "organization" bibinfo.check output 1409 | } 1410 | { format.editors output.nonnull } 1411 | if$ 1412 | add.colon 1413 | format.btitle "title" output.check 1414 | format.bvolume output 1415 | format.number.series output 1416 | editor empty$ 1417 | { publisher empty$ 1418 | 'skip$ 1419 | { 1420 | format.publisher.address output 1421 | } 1422 | if$ 1423 | } 1424 | { publisher empty$ 1425 | { 1426 | format.organization.address output } 1427 | { 1428 | organization "organization" bibinfo.check output 1429 | format.publisher.address output 1430 | } 1431 | if$ 1432 | } 1433 | if$ 1434 | format.date "year" output.check 1435 | format.isbn output 1436 | format.issn output 1437 | format.doi output 1438 | format.note output 1439 | format.eprint output 1440 | fin.entry 1441 | write.url 1442 | } 1443 | 1444 | FUNCTION {techreport} 1445 | { output.bibitem 1446 | format.authors "author" output.check 1447 | add.colon 1448 | format.title 1449 | "title" output.check 1450 | new.sentence 1451 | format.tr.number output.nonnull 1452 | institution "institution" bibinfo.warn output 1453 | address "address" bibinfo.check output 1454 | format.date "year" output.check 1455 | format.doi output 1456 | format.note output 1457 | format.eprint output 1458 | fin.entry 1459 | write.url 1460 | } 1461 | 1462 | FUNCTION {unpublished} 1463 | { output.bibitem 1464 | format.authors "author" output.check 1465 | add.colon 1466 | format.title "title" output.check 1467 | format.date output 1468 | format.doi output 1469 | format.note "note" output.check 1470 | format.eprint output 1471 | fin.entry 1472 | write.url 1473 | } 1474 | 1475 | FUNCTION {default.type} { misc } 1476 | READ 1477 | FUNCTION {sortify} 1478 | { purify$ 1479 | "l" change.case$ 1480 | } 1481 | INTEGERS { len } 1482 | FUNCTION {chop.word} 1483 | { 's := 1484 | 'len := 1485 | s #1 len substring$ = 1486 | { s len #1 + global.max$ substring$ } 1487 | 's 1488 | if$ 1489 | } 1490 | FUNCTION {sort.format.names} 1491 | { 's := 1492 | #1 'nameptr := 1493 | "" 1494 | s num.names$ 'numnames := 1495 | numnames 'namesleft := 1496 | { namesleft #0 > } 1497 | { s nameptr 1498 | "{ll{ }}{ f{ }}{ jj{ }}" 1499 | format.name$ 't := 1500 | nameptr #1 > 1501 | { 1502 | nameptr #3 1503 | #1 + = 1504 | numnames #3 1505 | > and 1506 | { "others" 't := 1507 | #1 'namesleft := } 1508 | 'skip$ 1509 | if$ 1510 | " " * 1511 | namesleft #1 = t "others" = and 1512 | { "zzzzz" * } 1513 | { t sortify * } 1514 | if$ 1515 | } 1516 | { t sortify * } 1517 | if$ 1518 | nameptr #1 + 'nameptr := 1519 | namesleft #1 - 'namesleft := 1520 | } 1521 | while$ 1522 | } 1523 | 1524 | FUNCTION {sort.format.title} 1525 | { 't := 1526 | "A " #2 1527 | "An " #3 1528 | "The " #4 t chop.word 1529 | chop.word 1530 | chop.word 1531 | sortify 1532 | #1 global.max$ substring$ 1533 | } 1534 | FUNCTION {author.sort} 1535 | { author empty$ 1536 | { key empty$ 1537 | { "to sort, need author or key in " cite$ * warning$ 1538 | "" 1539 | } 1540 | { key sortify } 1541 | if$ 1542 | } 1543 | { author sort.format.names } 1544 | if$ 1545 | } 1546 | FUNCTION {author.editor.sort} 1547 | { author empty$ 1548 | { editor empty$ 1549 | { key empty$ 1550 | { "to sort, need author, editor, or key in " cite$ * warning$ 1551 | "" 1552 | } 1553 | { key sortify } 1554 | if$ 1555 | } 1556 | { editor sort.format.names } 1557 | if$ 1558 | } 1559 | { author sort.format.names } 1560 | if$ 1561 | } 1562 | FUNCTION {author.organization.sort} 1563 | { author empty$ 1564 | { organization empty$ 1565 | { key empty$ 1566 | { "to sort, need author, organization, or key in " cite$ * warning$ 1567 | "" 1568 | } 1569 | { key sortify } 1570 | if$ 1571 | } 1572 | { "The " #4 organization chop.word sortify } 1573 | if$ 1574 | } 1575 | { author sort.format.names } 1576 | if$ 1577 | } 1578 | FUNCTION {editor.organization.sort} 1579 | { editor empty$ 1580 | { organization empty$ 1581 | { key empty$ 1582 | { "to sort, need editor, organization, or key in " cite$ * warning$ 1583 | "" 1584 | } 1585 | { key sortify } 1586 | if$ 1587 | } 1588 | { "The " #4 organization chop.word sortify } 1589 | if$ 1590 | } 1591 | { editor sort.format.names } 1592 | if$ 1593 | } 1594 | FUNCTION {presort} 1595 | { type$ "book" = 1596 | type$ "inbook" = 1597 | or 1598 | 'author.editor.sort 1599 | { type$ "proceedings" = 1600 | 'editor.organization.sort 1601 | { type$ "manual" = 1602 | 'author.organization.sort 1603 | 'author.sort 1604 | if$ 1605 | } 1606 | if$ 1607 | } 1608 | if$ 1609 | " " 1610 | * 1611 | year field.or.null sortify 1612 | * 1613 | " " 1614 | * 1615 | title field.or.null 1616 | sort.format.title 1617 | * 1618 | #1 entry.max$ substring$ 1619 | 'sort.key$ := 1620 | } 1621 | ITERATE {presort} 1622 | SORT 1623 | STRINGS { longest.label } 1624 | INTEGERS { number.label longest.label.width } 1625 | FUNCTION {initialize.longest.label} 1626 | { "" 'longest.label := 1627 | #1 'number.label := 1628 | #0 'longest.label.width := 1629 | } 1630 | FUNCTION {longest.label.pass} 1631 | { number.label int.to.str$ 'label := 1632 | number.label #1 + 'number.label := 1633 | label width$ longest.label.width > 1634 | { label 'longest.label := 1635 | label width$ 'longest.label.width := 1636 | } 1637 | 'skip$ 1638 | if$ 1639 | } 1640 | EXECUTE {initialize.longest.label} 1641 | ITERATE {longest.label.pass} 1642 | FUNCTION {begin.bib} 1643 | { preamble$ empty$ 1644 | 'skip$ 1645 | { preamble$ write$ newline$ } 1646 | if$ 1647 | "\begin{thebibliography}{" longest.label * "}" * 1648 | write$ newline$ 1649 | "\providecommand{\biburl}[1]{\url{#1}}" 1650 | % "\providecommand{\biburl}[1]{#1}" 1651 | write$ newline$ 1652 | "\providecommand{\urlprefix}{Dostupn{\' e} z: }" 1653 | write$ newline$ 1654 | "\expandafter\ifx\csname urlstyle\endcsname\relax" 1655 | write$ newline$ 1656 | " \providecommand{\doi}[1]{doi:\discretionary{}{}{}#1}\else" 1657 | write$ newline$ 1658 | " \providecommand{\doi}{doi:\discretionary{}{}{}\begingroup \urlstyle{rm}\Url}\fi" 1659 | write$ newline$ 1660 | "\providecommand{\selectlanguage}[1]{\relax}" 1661 | write$ newline$ 1662 | "\providecommand{\eprint}[2][]{\biburl{#2}}" 1663 | write$ newline$ 1664 | } 1665 | EXECUTE {begin.bib} 1666 | EXECUTE {init.state.consts} 1667 | ITERATE {call.type$} 1668 | FUNCTION {end.bib} 1669 | { newline$ 1670 | "\end{thebibliography}" write$ newline$ 1671 | } 1672 | EXECUTE {end.bib} 1673 | %% End of customized bst file 1674 | %% 1675 | %% End of file `czech.bst'. 1676 | --------------------------------------------------------------------------------