X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=thesis.pre;h=d36c6e5f259920175f5213965ef8001eb5b7225d;hb=a2306329d05c56ee45a7a71e6c09cf1cb5007fc1;hp=89effc2b455b3ef0bb684ac316dfdee3929a05fe;hpb=6c6184edee2e3ae64176ee53d891f244b649ba1b;p=msc-thesis1617.git diff --git a/thesis.pre b/thesis.pre index 89effc2..d36c6e5 100644 --- a/thesis.pre +++ b/thesis.pre @@ -1,24 +1,121 @@ -\documentclass[a4paper]{book} +\documentclass[twoside,a4paper,titlepage]{book} \usepackage{geometry} % Papersize +\usepackage[british]{babel} % Internationalization \usepackage[titletoc]{appendix} % Appendices -\usepackage{rutitlepage/rutitlepage} % Titlepage \usepackage{hyperref} % Hyperlinks -\usepackage{float} % Better table positioning \usepackage{booktabs} % Better looking tables -\usepackage{todonotes} % Todo's +\usepackage{caption} % Captions +\usepackage{subcaption} % Subcaptions +\usepackage{listings} % source code +\usepackage{float} % floating images +\usepackage{lmodern} % Better teletype fonts +\usepackage{textcomp} % Nice listings quotes +\usepackage{pgf-umlsd} % Connection diagrams +\usepackage{graphicx} % Graphics +\usepackage{epstopdf} % Eps graphics +\usepackage{etoolbox} % Patch chapter command +\usepackage[nodayofweek]{datetime} % Use a fixed document date -\urlstyle{same} +% Fix fonts +\normalfont +\DeclareFontShape{OT1}{lmr}{bx}{sc} { <-> ssub * lmr/bx/n }{} + +% Have better page numbering in chapters +\patchcmd{\chapter}{plain}{headings}{}{} + +% Arrows for communication diagrams +\usetikzlibrary{arrows,shadows} + +% Images directory +\graphicspath{{img/}} + +% Fix list of listings title +\renewcommand{\lstlistlistingname}{List of Listings} + +% Fix list of listings chapter separator +\makeatletter +\let\my@chapter\@chapter +\renewcommand*{\@chapter}{% + \addtocontents{lol}{\protect\addvspace{10pt}}% + \my@chapter} +\makeatother + +% Always have url in teletype +\urlstyle{tt} + +% Setup pdf parameters \hypersetup{% - pdftitle={iTasks and the Internet of Things}, + pdftitle={Task Oriented Programming and the Internet of Things}, pdfauthor={Mart Lubbers}, - pdfsubject={iTasks and the Internet of Things}, + pdfsubject={Task Oriented Programming and the Internet of Things}, pdfcreator={Mart Lubbers}, pdfproducer={Mart Lubbers}, pdfkeywords={TOP,iTasks,Clean,Function Programming,IoT}, hidelinks=true } -\title{iTasks and the Internet of Things} -\author{Mart Lubbers BSc.\\{\small\url{mart@martlubbers.net}}} -\date{\today} +% Fix gls in hyperlink errors +\pdfstringdefDisableCommands{% + \def\acrlong#1{}% + \def\acrlongpl#1{}% + \def\acrshort#1{}% + \def\acrfull#1{}% + \def\gls#1{}% + \def\glspl#1{}% + \def\Gls#1{}% + \def\Glspl#1{}% +} + +% Clean language spec for listings +\lstdefinelanguage{Clean}{% + alsoletter={ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_`1234567890}, + alsoletter={~!@\#$\%^\&*-+=?<>:|\\.}, + morekeywords={generic,implementation,definition,dynamic,module,import,from,where,in,of,case,let,infix,infixr,infixl,class,instance,with,if,derive,::}, + sensitive=true, + morecomment=[l]{//}, + morecomment=[n]{/*}{*/}, + morestring=[b]", + morestring=[b]', + emptylines=1, + basewidth=0.45em, + columns=[c]fixed, + texcl=true, + upquote=true, + literate=% + % Basic Clean constructs + {\\}{{$\lambda\:$}}1 + {A.}{{$\forall\;\,$}}1 + {E.}{{$\exists\;\,$}}1 + {*}{{$^*$}}1 +} + +% Handy shortcut for inline Clean code +\newcommand{\CI}[1]{\lstinline[language=Clean,basicstyle=\ttfamily\fontseries{l}\normalsize]|#1|} + +% General listings settings +\lstset{% + breakatwhitespace=false, + breaklines=true, + captionpos=b, + keepspaces=true, + basicstyle=\ttfamily\fontseries{l}\footnotesize, + commentstyle=\slshape\fontseries{m}, + keywordstyle=\bfseries\fontseries{b}, + stringstyle=\ttfamily, + showspaces=false, + showstringspaces=false, + showtabs=false, + tabsize=4, + frame=L, + language=Clean +} + +% Increase the depth for the table of contenst +\setcounter{secnumdepth}{3} + +% Document info +\title{Task Oriented Programming and the Internet of Things} +\author{Mart Lubbers BSc.\\ + {\small\href{mailto:mart@martlubbers.net}{mart@martlubbers.net}}} +\date{\formatdate{10}{7}{2017}}