
s1210629013@55404: %% hgb.sty
s1210629013@55404: %% Autor: Wilhelm Burger (wilhelm.burger@fh-hagenberg.at)
s1210629013@55404: %% Diese Datei ist Teil des hagenberg-Package zur Erstellung von 
s1210629013@55404: %% Bachelor- und Diplomarbeiten.
s1210629013@55404: 
s1210629013@55404: \NeedsTeXFormat{LaTeX2e}
s1210629013@55404: \newcommand{\hgbDate}{2013/02/19}	%Versionsdatum
s1210629013@55404: \ProvidesPackage{hgb}[\hgbDate]
s1210629013@55404: 
s1210629013@55404: % options german/english are passed from the class file
s1210629013@55404: \DeclareOption{english}{\providecommand{\hgb@MainLanguage}{english}}
s1210629013@55404: \DeclareOption{german}{\providecommand{\hgb@MainLanguage}{german}}
s1210629013@55404: \ProcessOptions\relax
s1210629013@55404: 
s1210629013@55404: 
s1210629013@55404: %% ------ Shadowing conflicting symbols from other packages -------
s1210629013@55404: 
s1210629013@55404: % Macros for resolving name conflicts (from symbols.tex by Scott Pakin):
s1210629013@55404: % There are a number of symbols (e.g., \Square) that are defined by      %
s1210629013@55404: % multiple packages.  In order to typeset all the variants in this       %
s1210629013@55404: % document, we have to give glyph a unique name.  To do that, we define  %
s1210629013@55404: % \savesymbol{XXX}, which renames a symbol from \XXX to \origXXX, and    %
s1210629013@55404: % \restoresymbol{yyy}{XXX}, which renames \origXXX back to \XXX and     %
s1210629013@55404: % defines a new command, \yyyXXX, which corresponds to the most recently %
s1210629013@55404: % loaded version of \XXX.   
s1210629013@55404: % Wilbur: modified to use "orig@" instead of "orig" (not visible to users)
s1210629013@55404: 
s1210629013@55404: % Save a symbol that we know is going to get redefined.
s1210629013@55404: \def\@savesymbol#1{%
s1210629013@55404:   \expandafter\let\expandafter\origsym\expandafter=\csname#1\endcsname
s1210629013@55404:   \expandafter\let\csname orig@#1\endcsname=\origsym
s1210629013@55404:   \expandafter\let\csname#1\endcsname=\relax
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: % Restore a previously saved symbol, and rename the current one.
s1210629013@55404: \def\@restoresymbol#1#2{%
s1210629013@55404:   \expandafter\let\expandafter\newsym\expandafter=\csname#2\endcsname
s1210629013@55404:   \expandafter\global\expandafter\let\csname#1#2\endcsname=\newsym
s1210629013@55404:   \expandafter\let\expandafter\origsym\expandafter=\csname orig@#2\endcsname
s1210629013@55404:   \expandafter\global\expandafter\let\csname#2\endcsname=\origsym
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: % example:
s1210629013@55404: %\@savesymbol{EUR}	% shadows \EUR command defined in eurosym-Package
s1210629013@55404: %\RequirePackage{marvosym} % package defines \EUR again
s1210629013@55404: %\@restoresymbol{eurosim}{EUR}	%original \EUR is now available as \eurosimEUR
s1210629013@55404: 
s1210629013@55404: %% ------------------ Required Packages ----------------------
s1210629013@55404: 
s1210629013@55404: \RequirePackage{cmap}								%utf8-change
s1210629013@55404: %\RequirePackage[latin1]{inputenc} 	%utf8-change
s1210629013@55404: \RequirePackage[utf8]{inputenc} 		%utf8-change
s1210629013@55404: % see http://tex.stackexchange.com/questions/1390/latin-modern-vs-cm-super
s1210629013@55404: \RequirePackage{lmodern}						%utf8-change, Latin Modern Fonts
s1210629013@55404: 
s1210629013@55404: % T1-Fonts zur besseren Silbentrennung bei Umlauten etc.,
s1210629013@55404: % verwendet automatisch die cm-super Type1 Postscript Schriften 
s1210629013@55404: % (in MikTeX ab 2.4 installiert):
s1210629013@55404: \RequirePackage[T1]{fontenc}
s1210629013@55404: 
s1210629013@55404: \RequirePackage{ifthen}
s1210629013@55404: \RequirePackage[english,german,ngerman]{babel}
s1210629013@55404: \RequirePackage{datetime}
s1210629013@55404: 
s1210629013@55404: \RequirePackage{eurosym} % provides \euro - conflict with marvosym on \EUR!
s1210629013@55404: %\RequirePackage{marvosym} % provides \EUR and other unusual symbols!
s1210629013@55404: %\@ifundefined{euro}%
s1210629013@55404: %   {\newcommand*{\euro}{\EUR}}%
s1210629013@55404: %	 {}
s1210629013@55404: 
s1210629013@55404: \@ifundefined{hgb@MainLanguage}%
s1210629013@55404:    {\newcommand*{\hgb@MainLanguage}{german}}%
s1210629013@55404: 	 {}
s1210629013@55404: 
s1210629013@55404: % Hauptsprache einstellen (babel):
s1210629013@55404: \ifthenelse{\equal{\hgb@MainLanguage}{german}}%
s1210629013@55404: 	{\main@language{ngerman}}{}
s1210629013@55404: \ifthenelse{\equal{\hgb@MainLanguage}{english}}%
s1210629013@55404: 	{\main@language{english}}{}
s1210629013@55404: 	
s1210629013@55404: %\RequirePackage[fixlanguage]{babelbib} %removed for biblatex
s1210629013@55404: 
s1210629013@55404: %\RequirePackage[dvips]{graphicx} % zur Einbindung von EPS-Grafiken, %utf8-change
s1210629013@55404: \RequirePackage{graphicx} 	%utf8-change, no dvips any longer
s1210629013@55404: 
s1210629013@55404: \RequirePackage[T1,hyphens,obeyspaces,spaces,lowtilde]{url}
s1210629013@55404: \urlstyle{sf}
s1210629013@55404: 
s1210629013@55404: \RequirePackage{verbatim}
s1210629013@55404: \RequirePackage{moreverb}
s1210629013@55404: \def\verbatimtabsize{2\relax}
s1210629013@55404: 
s1210629013@55404: %\RequirePackage[noadjust]{cite} % vermeidet zusätzliches Spacing vor [..]
s1210629013@55404: 
s1210629013@55404: \RequirePackage{float}
s1210629013@55404: %\floatplacement{figure}{tbp}
s1210629013@55404: %\floatplacement{table}{tbp}
s1210629013@55404: \floatstyle{plain}
s1210629013@55404: 
s1210629013@55404: 
s1210629013@55404: % Captions mit Fontgroesse "small" und Abstand vom Seitenrand
s1210629013@55404: \RequirePackage[small,bf]{caption}
s1210629013@55404: \setlength{\captionmargin}{5mm}
s1210629013@55404: \setlength{\abovecaptionskip}{10pt}
s1210629013@55404: \setlength{\belowcaptionskip}{10pt}
s1210629013@55404: 
s1210629013@55404: %\RequirePackage[small,rm,loose]{subfigure}
s1210629013@55404: %\setlength{\subfigtopskip}{7pt}
s1210629013@55404: %\setlength{\subfigcapskip}{7pt}
s1210629013@55404: %\setlength{\subfigcaptopadj}{0pt} 
s1210629013@55404: %\setlength{\subfigbottomskip}{-3pt}
s1210629013@55404: %\setlength{\subfigcapmargin}{0pt} 
s1210629013@55404: %\setlength{\subfiglabelskip}{0.33em plus 0.07em minus 0.03em}
s1210629013@55404: 
s1210629013@55404: \RequirePackage{exscale}
s1210629013@55404: % Skaliert Mathe-Modus Ausgaben in allen Umgebungen richtig.
s1210629013@55404: 
s1210629013@55404: \RequirePackage{upquote}
s1210629013@55404: % Setzt "richtige" Quotes in verbatim-Umgebung
s1210629013@55404: 
s1210629013@55404: %\RequirePackage{psfrag}	%utf8-change, no psfrag no more
s1210629013@55404: 
s1210629013@55404: % AMS-Math für mathematischen Schriftsatz
s1210629013@55404: \RequirePackage{amsmath}
s1210629013@55404: \RequirePackage{amsfonts}
s1210629013@55404: \RequirePackage{amsbsy}
s1210629013@55404: 
s1210629013@55404: %% ---------------------- Environments -------------------------
s1210629013@55404: 
s1210629013@55404: %\newenvironment{sourcecode}%
s1210629013@55404: %{\begin{minipage}{0.95\textwidth}%
s1210629013@55404: %   \hrule%
s1210629013@55404: %   \bigskip%
s1210629013@55404: %   \begin{footnotesize}%
s1210629013@55404: %}%
s1210629013@55404: %{\end{footnotesize}
s1210629013@55404: %   \hrule\end{minipage}%
s1210629013@55404: %}
s1210629013@55404: 
s1210629013@55404: % Umschalten von Deutsch auf Englisch (babel)
s1210629013@55404: \newenvironment{english}%
s1210629013@55404: {\begin{otherlanguage}{english}}%
s1210629013@55404: {\end{otherlanguage}}
s1210629013@55404: 
s1210629013@55404: \newenvironment{german}%
s1210629013@55404: {\begin{otherlanguage}{ngerman}}%
s1210629013@55404: {\end{otherlanguage}}
s1210629013@55404: 
s1210629013@55404: 
s1210629013@55404: %% --------------------- Makros --------------------------------
s1210629013@55404: 
s1210629013@55404: %\newcommand{\latex}{{\rm \LaTeX}\xspace} % aus Bequemlichkeit
s1210629013@55404: %\newcommand{\latex}{{\sl La\-TeX}\xspace} % kein schnoerkeliges LaTeX mehr
s1210629013@55404: \newcommand{\latex}{La\-TeX\xspace} % kein schnoerkeliges LaTeX mehr
s1210629013@55404: 
s1210629013@55404: %\newcommand{\tex}{{\sl TeX}\xspace}     % kein schnoerkeliges TeX mehr
s1210629013@55404: \newcommand{\tex}{TeX\xspace}     % kein schnoerkeliges TeX mehr
s1210629013@55404: 
s1210629013@55404: %\newcommand{\bs}{\char '134} % Backslash character
s1210629013@55404: \newcommand{\bs}{\textbackslash} % Backslash character
s1210629013@55404: 
s1210629013@55404: %inline fractions
s1210629013@55404: \def\fraction#1/#2{\leavevmode\kern.0em
s1210629013@55404:   \raise.5ex\hbox{\the\scriptfont0 #1}\kern-.1em
s1210629013@55404:   /\kern-.15em\lower.25ex\hbox{\the\scriptfont0 #2}}
s1210629013@55404: 
s1210629013@55404: \newcommand\trennstrich{%
s1210629013@55404:   \nopagebreak[4]
s1210629013@55404:   \vskip 1.5ex %
s1210629013@55404: %  \nopagebreak[4]
s1210629013@55404:   \noindent\makebox[\textwidth]{\rule{4cm}{0.4pt}}
s1210629013@55404:   \vskip 2.5ex}
s1210629013@55404:   
s1210629013@55404: %Div. Abkürzungen (in Anlehnung an Jochen Küpper, jkthesis):
s1210629013@55404: %\usepackage{xspace}
s1210629013@55404: \RequirePackage{xspace}
s1210629013@55404: 
s1210629013@55404: \newcommand{\bzgl}{bzgl.\@\xspace}
s1210629013@55404: \newcommand{\bzw}{bzw.\@\xspace}
s1210629013@55404: \newcommand{\ca}{ca.\@\xspace}
s1210629013@55404: \newcommand{\dah}{d.\thinspace{}h.\@\xspace}
s1210629013@55404: \newcommand{\Dah}{D.\thinspace{}h.\@\xspace}
s1210629013@55404: \newcommand{\ds}{d.\thinspace{}sind\@\xspace}
s1210629013@55404: \newcommand{\evtl}{evtl.\@\xspace}
s1210629013@55404: \newcommand{\ia}{i.\thinspace{}Allg.\@\xspace}
s1210629013@55404: \newcommand{\sa}{s.\ auch\@\xspace}
s1210629013@55404: \newcommand{\so}{s.\ oben\xspace}
s1210629013@55404: \newcommand{\su}{s.\ unten\@\xspace}
s1210629013@55404: 
s1210629013@55404: \newcommand{\ua}{u.\thinspace{}a.\@\xspace}
s1210629013@55404: \newcommand{\Ua}{U.\thinspace{}a.\@\xspace}
s1210629013@55404: \newcommand{\uae}{u.\thinspace{}Ä.\@\xspace}
s1210629013@55404: \newcommand{\usw}{usw.\@\xspace}
s1210629013@55404: \newcommand{\uva}{u.\thinspace{}v.\thinspace{}a.\@\xspace}
s1210629013@55404: \newcommand{\uvm}{u.\thinspace{}v.\thinspace{}m.\@\xspace}
s1210629013@55404: \newcommand{\va}{vor allem\@\xspace}
s1210629013@55404: \newcommand{\vgl}{vgl.\@\xspace}
s1210629013@55404: \newcommand{\zB}{z.\thinspace{}B.\@\xspace}
s1210629013@55404: \newcommand{\ZB}{Zum Beispiel\xspace}
s1210629013@55404: 
s1210629013@55404: %Zeichen fuer die reellen, komplexen ... Zahlen (AMS Blackboard)
s1210629013@55404: %\RequirePackage{amsfonts}
s1210629013@55404: %\RequirePackage{amsbsy}
s1210629013@55404: \newcommand{\R}{\ensuremath{\mathbb{R}}}
s1210629013@55404: \newcommand{\Z}{\ensuremath{\mathbb{Z}}}
s1210629013@55404: \newcommand{\N}{\ensuremath{\mathbb{N}}}
s1210629013@55404: %\newcommand{\C}{\mathbb{C}} % utf8-change (problem with T1 encoding)
s1210629013@55404: \newcommand{\Cpx}{\ensuremath{\mathbb{C}}}	% utf8-change
s1210629013@55404: \newcommand{\Q}{\ensuremath{\mathbb{Q}}}
s1210629013@55404: 
s1210629013@55404: %Messbox zur Druckkontrolle:
s1210629013@55404: \newcommand{\Messbox}[2]{% Parameters: #1=Breite, #2=Hoehe
s1210629013@55404: \setlength{\unitlength}{1.0mm}%
s1210629013@55404: \begin{picture}(#1,#2)%
s1210629013@55404: \linethickness{0.05mm}%
s1210629013@55404: \put(0,0){\dashbox{0.2}(#1,#2)%
s1210629013@55404: {\parbox{#1mm}{%
s1210629013@55404: \centering\footnotesize 
s1210629013@55404: %{\bf MESSBOX}\\ 
s1210629013@55404: Breite $ = #1 {\rm\ mm}$\\
s1210629013@55404: H\"ohe $ = #2 {\rm\ mm}$
s1210629013@55404: }}}\end{picture}
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: %% ------------- Einstellungen fuer's Layout --------------
s1210629013@55404: 
s1210629013@55404: %\nonfrenchspacing    % erzeugt breitere Abstände zwischen Sätzen
s1210629013@55404: \frenchspacing     	  % erzeugt normale Abstände zwischen Sätzen
s1210629013@55404: %\pagestyle{headings}  % Normale Kopfzeilen
s1210629013@55404: 
s1210629013@55404: %% div. Parameter: nur dann ändern, wenn man genau weiss was man tut!
s1210629013@55404: %\setlength{\hoffset}{-1in}
s1210629013@55404: %\setlength{\voffset}{-1in}
s1210629013@55404: %\setlength{\oddsidemargin}{3cm}
s1210629013@55404: %\setlength{\evensidemargin}{2.5cm}
s1210629013@55404: %\setlength{\textwidth}{15.5cm}
s1210629013@55404: %\setlength{\textheight}{22.8cm}
s1210629013@55404: %\setlength{\topmargin}{2.54cm}
s1210629013@55404: %\setlength{\headheight}{1ex}
s1210629013@55404: %\setlength{\headsep}{1cm}
s1210629013@55404: %\parindent0pt
s1210629013@55404: %\parskip1.5ex plus0.5ex minus0.5ex % flexibler Absatzabstand
s1210629013@55404: 
s1210629013@55404: % Make float placement easier    
s1210629013@55404: \renewcommand{\floatpagefraction}{.9}  % vorher: .5
s1210629013@55404: \renewcommand{\textfraction}{.01}      % vorher: .2
s1210629013@55404: \renewcommand{\topfraction}{.9}        % vorher: .7
s1210629013@55404: \renewcommand{\bottomfraction}{.7}     % vorher: .3
s1210629013@55404: \setcounter{topnumber}{3}              % vorher: 2
s1210629013@55404: \setcounter{bottomnumber}{2}           % vorher: 1
s1210629013@55404: \setcounter{totalnumber}{5}            % vorher: 3
s1210629013@55404: 
s1210629013@55404: %% ------------- Math Stuff --------------
s1210629013@55404: %% Problem mit Satzzeichen im Math-Modus!
s1210629013@55404: %% Verwende Komma (statt Punkt) als Trennzeichen in Dezimalzahlen 
s1210629013@55404: %\DeclareMathSymbol{,}{\mathpunct}{letters}{"3B}
s1210629013@55404: %\DeclareMathSymbol{.}{\mathord}{letters}{"3B}
s1210629013@55404: %\DeclareMathSymbol{\decimal}{\mathord}{letters}{"3A}
s1210629013@55404: 
s1210629013@55404: %% ------------- Algorithms Stuff ---------
s1210629013@55404: 
s1210629013@55404: % 'algorithm' liefert die Float-Umgebung für Algorithmen (\begin{algorithm}...)
s1210629013@55404: \@ifundefined{chapter}%
s1210629013@55404:   {\RequirePackage[ruled]{algorithm}}%
s1210629013@55404: 	{\RequirePackage[ruled,chapter]{algorithm}}
s1210629013@55404: 
s1210629013@55404: %\floatname{algorithm}{Algorithmus}
s1210629013@55404: %\DeclareCaptionLabelSeparator{colon}{: } % Anpassung an den standard caption style
s1210629013@55404: \DeclareCaptionStyle{ruled}{labelfont=bf,labelsep=colon} 
s1210629013@55404: 
s1210629013@55404: % 'algorithmicx' liefert das Innere der Algorithmen (\begin{algorithmic}[1]...)
s1210629013@55404: \RequirePackage{algorithmicx}
s1210629013@55404: \RequirePackage{algpseudocode}
s1210629013@55404: \algsetlanguage{pseudocode}
s1210629013@55404: \renewcommand{\algorithmicprocedure}{} % use no 'Procedure' keyword
s1210629013@55404: 
s1210629013@55404: 
s1210629013@55404: 
s1210629013@55404: %% ------------- Program environment / code listings --------------
s1210629013@55404: 
s1210629013@55404: % define the program float environment:
s1210629013@55404: \@ifundefined{chapter}%
s1210629013@55404:    {\newfloat{program}{tbp}{lop}}%
s1210629013@55404: 	 {\newfloat{program}{tbp}{lop}[chapter]}
s1210629013@55404: %\floatname{program}{Programm}
s1210629013@55404: %\floatname{program}{\@ProgramName}
s1210629013@55404: \floatstyle{plain}
s1210629013@55404: \restylefloat*{program}
s1210629013@55404: 	
s1210629013@55404: \ifthenelse{\equal{\bbl@main@language}{german} \or \equal{\bbl@main@language}{ngerman}}%
s1210629013@55404: {	\floatname{program}{Programm}
s1210629013@55404:   \floatname{algorithm}{Algorithmus}
s1210629013@55404: }{}
s1210629013@55404: 
s1210629013@55404: \ifthenelse{\equal{\bbl@main@language}{english}}%
s1210629013@55404: {	\floatname{program}{Program}
s1210629013@55404:   \floatname{algorithm}{Algorithm}
s1210629013@55404: }{}
s1210629013@55404: 
s1210629013@55404: 
s1210629013@55466: \RequirePackage{xcolor}
s1210629013@55404: \definecolor{lightgray}{gray}{0.9}
s1210629013@55404: \definecolor{midgray}{gray}{0.5}
s1210629013@55404: \color{black}
s1210629013@55404: \newcommand{\@MissingArg}[1]{\textcolor{red}{#1}}
s1210629013@55404: 
s1210629013@55404: %\RequirePackage{listings}			% utf8-change
s1210629013@55404: \RequirePackage{listingsutf8} 	% utf8-change
s1210629013@55404: \lstset{
s1210629013@55404: %language=Java,%
s1210629013@55404: inputencoding=utf8,	% utf8-change
s1210629013@55404: extendedchars=true,	% utf8-change
s1210629013@55404: basicstyle=\ttfamily\footnotesize,%
s1210629013@55404: keywordstyle=,%\ttfamily,%\bfseries,
s1210629013@55404: identifierstyle=,%\sffamily, %\bfseries
s1210629013@55404: commentstyle=\normalfont\itshape,%
s1210629013@55404: stringstyle=\ttfamily,%
s1210629013@55404: showstringspaces=false,%
s1210629013@55404: columns = flexible,% fixed, 
s1210629013@55404: breaklines=true,%
s1210629013@55404: tabsize=2, %
s1210629013@55404: backgroundcolor=\color{lightgray},
s1210629013@55404: xleftmargin=6mm,%
s1210629013@55404: frame=none,
s1210629013@55404: framexleftmargin=6mm,
s1210629013@55404: numbers=left,%
s1210629013@55404: numbersep=5pt,%
s1210629013@55404: numberstyle=\normalfont\scriptsize,%
s1210629013@55404: stepnumber=1,%
s1210629013@55404: numberfirstline=true,%
s1210629013@55404: numberblanklines=true,%
s1210629013@55404: texcl=true,%		%important: read program comments as Latex content
s1210629013@55404: mathescape=false,	%set false by default?
s1210629013@55404: upquote=true,%
s1210629013@55404: keepspaces=true,%
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \lstset{literate=% to allow Umlauts etc. in listed code % utf8-change
s1210629013@55404: {Ö}{{\"O}}1
s1210629013@55404: {Ä}{{\"A}}1
s1210629013@55404: {Ü}{{\"U}}1
s1210629013@55404: {ß}{{\ss}}2
s1210629013@55404: {ü}{{\"u}}1
s1210629013@55404: {ä}{{\"a}}1
s1210629013@55404: {ö}{{\"o}}1
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{JavaCode}[1][]	% code environment for Java 
s1210629013@55404: {\lstset{%
s1210629013@55404: 	language=Java,
s1210629013@55404: 	escapeinside={/+}{+/},% makes "/+" and "+/" available for Latex escapes (labels etc.)
s1210629013@55404: 	#1}}
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{CCode}[1][]	% code environment for C (ANSI)
s1210629013@55404: {\lstset{%
s1210629013@55404: 	language=[ANSI]C,
s1210629013@55404: 	escapeinside={/+}{+/},% makes "/+" and "+/" available for Latex escapes (labels etc.)
s1210629013@55404: 	#1}}
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{CppCode}[1][]	% code environment for C++ (ISO)
s1210629013@55404: {\lstset{%
s1210629013@55404: 	language=[ISO]C++,
s1210629013@55404: 	escapeinside={/+}{+/},% makes "/+" and "+/" available for Latex escapes (labels etc.)
s1210629013@55404: 	#1}}
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{PhpCode}[1][]
s1210629013@55404: {\lstset{%
s1210629013@55404:   language=PHP,
s1210629013@55404: %  mathescape=false,
s1210629013@55404:   escapeinside={/+}{+/},
s1210629013@55404:   #1}}%
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{HtmlCode}[1][]
s1210629013@55404: {\lstset{%
s1210629013@55404:   language=HTML,
s1210629013@55404: %  mathescape=false,
s1210629013@55404:   escapeinside={/+}{+/},
s1210629013@55404:   #1}}%
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstdefinelanguage{CSS}
s1210629013@55404: {	morekeywords={color,background,margin,padding,font,weight,display,position,top,%
s1210629013@55404: 			left,right,bottom,list,style,border,size,white,space,min,width},
s1210629013@55404: 	sensitive=false,
s1210629013@55404: 	morecomment=[l]{//},
s1210629013@55404: 	morecomment=[s]{/*}{*/},
s1210629013@55404: 	morestring=[b]"
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{CssCode}[1][]
s1210629013@55404: {\lstset{%
s1210629013@55404:   language=CSS,
s1210629013@55404: %  mathescape=false,
s1210629013@55404:   escapeinside={/+}{+/},
s1210629013@55404:   #1}}%
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{XmlCode}[1][]
s1210629013@55404: {\lstset{%
s1210629013@55404:   language=XML,
s1210629013@55404: %  mathescape=false,
s1210629013@55404:   escapeinside={/+}{+/},
s1210629013@55404:   #1}}%
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstdefinelanguage{JavaScript}
s1210629013@55404: {	keywords={attributes, class, classend, do, empty, endif, endwhile, fail, function,% 
s1210629013@55404: 			functionend, if, implements, in, inherit, inout, not, of, operations, out, 
s1210629013@55404: 			return, set, then, types, while, use},
s1210629013@55404: 	sensitive=false,
s1210629013@55404: 	morecomment=[l]{//},
s1210629013@55404: 	morecomment=[s]{/*}{*/}
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{JsCode}[1][]
s1210629013@55404: {\lstset{%
s1210629013@55404:   language=JavaScript,
s1210629013@55404:   mathescape=false,
s1210629013@55404:   escapeinside={/+}{+/},
s1210629013@55404:   #1}}%
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{LaTeXCode}[1][]	% code environment for Latex
s1210629013@55404: {\lstset{%
s1210629013@55404: 	language=[LaTeX]TeX,
s1210629013@55404: 	commentstyle={},
s1210629013@55404: 	texcl=false,
s1210629013@55404: 	escapechar={},
s1210629013@55404: 	%	mathescape=false,
s1210629013@55404: 	escapeinside={/+}{+/},
s1210629013@55404: 	#1}}%
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: \lstnewenvironment{GenericCode}[1][]	% generic code environment
s1210629013@55404: {\lstset{%
s1210629013@55404: 	language={},
s1210629013@55404: 	keepspaces=true,
s1210629013@55404: 	commentstyle={},
s1210629013@55404: 	texcl=false,
s1210629013@55404: 	escapechar={},
s1210629013@55404: 	escapeinside={},
s1210629013@55404: %	mathescape=false,
s1210629013@55404: 	#1}}
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: %% ------------- Experimental --------------
s1210629013@55404: 
s1210629013@55404: \newenvironment{NarrowList}%
s1210629013@55404: {\begin{list}{}%
s1210629013@55404: {\setlength{\leftmargin}{2.5em}
s1210629013@55404:  \setlength{\labelwidth}{1em}
s1210629013@55404:  \setlength{\labelsep}{0.5em}
s1210629013@55404:  \setlength{\itemsep}{0.5ex}
s1210629013@55404:  \setlength{\parsep}{0ex}
s1210629013@55404:  \setlength{\topsep}{0ex}
s1210629013@55404: \raggedright
s1210629013@55404: }}%
s1210629013@55404: {\end{list}}
s1210629013@55404: 
s1210629013@55404: \newenvironment{FileList}[1]%
s1210629013@55404: {\paragraph{Pfad:} \url{#1}
s1210629013@55404:  \begin{list}{}%
s1210629013@55404: {\setlength{\leftmargin}{5cm}
s1210629013@55404:  \setlength{\labelwidth}{4cm}
s1210629013@55404:  \setlength{\labelsep}{0.25cm}
s1210629013@55404:  \setlength{\rightmargin}{0cm}
s1210629013@55404:  \setlength{\itemindent}{0cm}
s1210629013@55404:  \setlength{\itemsep}{0.5ex}
s1210629013@55404:  \setlength{\parsep}{0ex}
s1210629013@55404:  \setlength{\topsep}{1ex}
s1210629013@55404: \raggedright
s1210629013@55404: }}%
s1210629013@55404: {\end{list}}
s1210629013@55404: 
s1210629013@55404: \def\widedotfill{\leaders\hbox to 8pt{\hfil.\hfil}\hfill}
s1210629013@55404: 
s1210629013@55404: \newcommand{\fitem}[1]{%
s1210629013@55404: %\item[\url{#1}\hfill]
s1210629013@55404: %\item[\url{#1}\dotfill]
s1210629013@55404: \item[\url{#1}\widedotfill]
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \newcommand{\Frametext}[1]{%
s1210629013@55404: \setlength{\fboxrule}{0.05mm}%
s1210629013@55404: \setlength{\fboxsep}{0.5mm}%
s1210629013@55404: \fbox{\vphantom{Ag}#1}%
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \newcommand{\FramePic}[1]{%
s1210629013@55404: \setlength{\fboxrule}{0.1mm}%
s1210629013@55404: \setlength{\fboxsep}{0mm}%
s1210629013@55404: \fbox{#1}%
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \newcommand{\optbreaknh}{\hskip 0pt } %optional break without hyphen: e.g. PlugIn{\optbrknh}Filter
s1210629013@55404: 
s1210629013@55404: % Erzeugt einen neuen, nicht eingerückten Absatz
s1210629013@55404: % mit zusätzlichem Abstand:
s1210629013@55404: \newcommand{\SuperPar}[0]{% 
s1210629013@55404: \par\bigskip\noindent%
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: %%% Date-related commands ----------------------------------
s1210629013@55404: 
s1210629013@55404: \RequirePackage{datetime}
s1210629013@55404: \showdowfalse	% do not show day of week
s1210629013@55404: 
s1210629013@55404: % adapted from \newdate in datetime.sty
s1210629013@55404: \newcommand*{\@modifydate}[4]{%
s1210629013@55404: \@namedef{date@#1@d}{#2}%
s1210629013@55404: \@namedef{date@#1@m}{#3}%
s1210629013@55404: \@namedef{date@#1@y}{#4}%
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \newdate{hgb@date}{\the\day}{\the\month}{\the\year}
s1210629013@55404: \newcommand{\Date}[3]{%	example for use: \Date{16}{5}{2008}
s1210629013@55404:   \@modifydate{hgb@date}{#1}{#2}{#3}
s1210629013@55404: }
s1210629013@55404: 
s1210629013@55404: \newcommand{\hgb@GetDateDay}{\getdateday{hgb@date}}
s1210629013@55404: \newcommand{\hgb@GetDateMonth}{\getdatemonth{hgb@date}}
s1210629013@55404: \newcommand{\hgb@GetDateYear}{\getdateyear{hgb@date}}
s1210629013@55404: \newcommand{\hgb@DisplayDate}{\displaydate{hgb@date}}
s1210629013@55404: 
s1210629013@55404: %%% Experimental:
s1210629013@55404: %\RequirePackage{hyperref}		% ignores \pdfinfo commmands % utf8-change
s1210629013@55404: \RequirePackage[unicode]{hyperref}	% utf8-change
s1210629013@55404: \definecolor{@darkblue}{RGB}{0,0,140}
s1210629013@55404: \definecolor{@darkgreen}{RGB}{0,100,70}
s1210629013@55404: \hypersetup{
s1210629013@55404:   colorlinks   = true, %Colours links instead of ugly boxes
s1210629013@55404:   urlcolor     = @darkblue, %Colour for external hyperlinks
s1210629013@55404:   linkcolor    = @darkblue, %Colour of internal links
s1210629013@55404:   citecolor    = @darkgreen %Colour of citations
s1210629013@55404: }	%see https://www.tug.org/applications/hyperref/manual.html
s1210629013@55404: 
s1210629013@55404: 
s1210629013@55404: \RequirePackage[all]{hypcap} % fixes hyperref problem with references to float captions
s1210629013@55404: %\RequirePackage[novbox]{pdfsync} % ersetzt durch -synctex=-1 option
s1210629013@55404: %\RequirePackage[noadjust]{cite} % vermeidet zusätzliches Spacing vor [..] % entfernt wegen biblatex
s1210629013@55404: 
s1210629013@55404: \RequirePackage{ifpdf}
s1210629013@55404: \ifpdf % LaTeX is in native PDF mode (pdflatex) 
s1210629013@55404:   \RequirePackage{epstopdf}		% zur automatischen Konvertierung von EPS-Dateien nach PDF für pdflatex
s1210629013@55404: %  \pdfcompresslevel=0			  % 0 = keine Kompression, 9 = max. Kompression
s1210629013@55404: %  \pdfimageresolution=300
s1210629013@55404: \else % LaTeX is in emulation mode (DVI-PS-PDF)
s1210629013@55404:   \RequirePackage[hyphenbreaks]{breakurl}	% erlaubt Zeilenumbruch von URLs auch ohne pdflatex (DIV, PS, PDF)
s1210629013@55404: \fi	
s1210629013@55404: 	
s1210629013@55404: \RequirePackage{enumitem}	% fix excessive vertical spacing in lists
s1210629013@55404: \setlist{%
s1210629013@55404: 	partopsep = .0ex plus .1ex, 
s1210629013@55404: 	topsep = .6ex plus .3ex, 
s1210629013@55404: 	itemsep = .0ex plus .1ex, 
s1210629013@55404: 	parsep = .4ex plus .2ex
s1210629013@55404: }
s1210629013@55404: %\setlist{nolistsep}	% kein Spacing zwischen items
s1210629013@55404: %\setlist{noitemsep}  % überhaupt kein vertik. Spacing
s1210629013@55404: 
s1210629013@55404: %% -------------------------------------------------------
s1210629013@55404: 
s1210629013@55404: \newcommand{\TurnWidowsOff}{%
s1210629013@55404: \clubpenalty=10000%
s1210629013@55404: \widowpenalty=10000%
s1210629013@55404: \displaywidowpenalty=10000}
s1210629013@55404: 
s1210629013@55404: \newenvironment{nowidows}%
s1210629013@55404: {\TurnWidowsOff}%
s1210629013@55404: {}
s1210629013@55404: 
s1210629013@55404: %%Beispiel
s1210629013@55404: %\begin{nowidows}
s1210629013@55404: %Beliebiger Text, in dem absolut keine Hurenkinder zugelassen werden.
s1210629013@55404: %\end{nowidows}
s1210629013@55404: 
s1210629013@55404: %%How to display TeX parameters:
s1210629013@55404: \newcommand{\ShowParameter}[1]{\relax\the#1\showthe#1}
s1210629013@55404: %Beispiel: \ShowParameter{\clubpenalty}
s1210629013@55404: 
s1210629013@55404: \setlength{\parskip}{0pt plus 0.1pt}
s1210629013@55404: %\flushbottom
s1210629013@55404: \raggedbottom
s1210629013@55404: 
s1210629013@55404: %% -------------------------------------------------------
s1210629013@55404: 




