\usepackage[T1]{fontenc}
\usepackage{ae}
\usepackage[ngerman,english]{babel}
-\usepackage{hyperref,color,url,acronym,graphicx,makeidx,amsfonts,amsmath}
+\usepackage{makeidx}%,showidx}
+% evil hack to enable command expansion in \index
+% \makeatletter
+% \def\makeindex{%
+% \newwrite\@indexfile
+% \immediate\openout\@indexfile=\jobname.idx
+% \def\index{\@bsphack\begingroup
+% \@sanitize
+% \@wrindex} \typeout
+% {Writing custom index file \jobname.idx}%
+% \let\makeindex\@empty
+% }
+% \def\@wrindex#1{%
+% \edef\@wrindex@params{#1}%
+% \protected@write\@indexfile{}%
+% {\string\indexentry{\@wrindex@params}{\thepage}}%
+% \endgroup\@esphack}
+% \def\T1{\@empty} % someone needs this... don't know why
+% \let\@origindex\index
+% \renewcommand{\index}[1]{\expandafter\@origindex{#1}}
+% \def\index#1{\expandafter\@datrueindex{#1}\typeout{new index used}}
+% \makeatother
+\usepackage{hyperref,color,url,acronym,graphicx,amsfonts,amsmath}
\usepackage{sidecap}
\usepackage{todonotes}
\usepackage{enumitem}
-% FIXME hyperref setup
-
\makeindex
%\newcommand{\todo}[1]{\textcolor{red}{\index{Todo}\LARGE TODO:~#1}}
-\newcommand{\definition}[1]{\textit{#1}\index{#1}} % FIXME: add to glossary?
-\newcommand{\cmd}[1]{\texttt{#1}\index{#1 (command)}} % FIXME: add to glossary?
-\newcommand{\prog}[1]{\texttt{#1}\index{#1 (program)}} % FIXME: add to glossary?
+\newcommand{\definition}[1]{\textit{#1}\index{#1}}
+\newcommand{\cmd}[1]{\texttt{#1}\index{#1 (command)}}
+\newcommand{\prog}[1]{\texttt{#1}\index{#1 (program)}}
\newcommand{\code}[1]{\texttt{#1}}
+\newcommand{\class}[1]{\code{#1}\index{#1 (class)}}
\newcommand{\file}[1]{\texttt{#1}\index{#1 (file)}}
\newcommand{\filepath}[1]{\texttt{#1}}
-\newcommand{\magicvalue}[1]{\texttt{#1}}
+\newcommand{\magicvalue}[1]{\code{#1}}
\newcommand{\opcode}[1]{\ac{opcode} \magicvalue{#1}}
% ignore output, but evaluate command with side-effects
\title{Error modeling of an autonomous, mobile robot}
% \date{July 9, 2011}
+\makeatletter
+\hypersetup{
+ colorlinks=false, % FIXME turn of for printing
+ pdftitle={\@title},
+ pdfauthor={\@author},
+ pdfcreator={\@author}
+}
+
\begin{document}
+\pagenumbering{roman}
\begin{titlepage}
\vskip 60pt
- \makeatletter
\begin{center}
{\large Braunschweig University of Technology}\\
{\large Institute of Operating Systems and Computer Networks}\\[2cm]
\todo{abstract!!!}
% \end{abstract}
+\cleardoublepage
+\pagenumbering{arabic}
+\pagestyle{headings}
+
\tableofcontents
\cleardoublepage
\listoffigures
\cleardoublepage
% \listoftables
% \cleardoublepage
-\chapter*{Table of Acronyms}
-\begin{acronym}[opcode]
- \acro{8N1}{8 data bits, no parity, 1 start/stop bit}
- \acro{CDROM}{Compact Disc Read Only Memory}
- \acro{DC}{Direct Current}
- \acro{DIN}{Deutsches Institut für Normung (German Institute for
- Standardization)}
- \acro{GNU}{GNU's Not Unix}
- \acro{GPS}{Global Positioning System}
- \acro{ISO}{International Standardization Organization}
- \acro{LED}{Light-Emitting Diode}
- \acro{NiMH}{Nickel-Metal Hydride}
- \acro{opcode}{operation code}
- \acro{OS}{operating system}
- \acro{pSTL}{pico Standard Template Library}
- \acro{RAM}{Random Access Memory}
- \acro{ROI}{Roomba Open Interface}
- \acro{STL}{Standard Template Library}
- \acro{SVN}{Subversion}
- \acro{TTL}{Transistor-Transistor Logic}
- \acro{USB}{Universal Serial Bus}
-\end{acronym}
-\pagenumbering{arabic}
-\pagestyle{headings}
+\input{acronyms}
+\cleardoublepage
% chapters
\input{introduction}