Thesis LaTeX Template

For the purpose of my Master Thesis I put a LaTeX class Scriptum.cls together. A sample document made using this class can be downloaded here and the source code is also available as a tutorial. This PDF document is also a documentation to the LaTeX class.

% Permission is granted to copy all or part of the template class for personal, educational,
% non-commerical use off-line as long as the copyright message
%
%                           Copyright © 2010-2011 by Jan Kubovy
%
% is maintained and the message
%
%                Scriptum LaTeX Class by Jan Kubovy (Copyright (c) 2010-2011)
%
% is present in the PDF Creator field (see below). This material may not be sold,
% incorporated in commercial documents or products, or used for promotional purposes. Links
% to my website (http://blog.kubovy.cz) are always welcome.
%
% Special thanks to Marek Sacha and Filip Navara who were a big help during the development
% of this template and also good friends during my studies at the Czech Technical University
% in Prague and at the Johannes Kepler University in Linz.
%
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{Thesis}[2011/07/10 Thesis Template]

\def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax}

%%%%%%%%%%%%%%%%%%%%%
% V A R I A B L E S %
%%%%%%%%%%%%%%%%%%%%%
% Declare some variables to hold the text fields for the preliminary pages
\newcommand{\Title}[1]{\gdef\VariableField@Title{#1}}
\newcommand{\Author}[1]{\gdef\VariableField@Author{#1}}
\newcommand{\AuthorEmail}[1]{\gdef\VariableField@AuthorEmail{#1}}
\newcommand{\docname}[1]{\gdef\VariableField@DocName{#1}}
\newcommand{\degree}[1]{\gdef\VariableField@Degree{#1}}
\newcommand{\Advisor}[1]{\gdef\VariableField@Advisor{#1}}
\newcommand{\Month}[1]{\gdef\VariableField@Month{#1}}
\newcommand{\Year}[1]{\gdef\VariableField@Year{#1}}
\newcommand{\Abstract}[1]{\gdef\VariableField@Abstract{#1}}
\newcommand{\AbstractTwo}[1]{\gdef\VariableField@AbstractTwo{#1}}
\newcommand{\HideAbstractTwo}{\gdef\VariableField@HideAbstractTwo{TRUE}}
\newcommand{\AbstractTwoTitle}[1]{\gdef\VariableField@AbstractTwoTitle{#1}}
\newcommand{\Assignment}[1]{\gdef\VariableField@Assignment{#1}}
\newcommand{\Statement}[1]{\gdef\VariableField@Statement{#1}}
\newcommand{\Keywords}[1]{\gdef\VariableField@Keywords{#1}}
\newcommand{\Acknowledgments}[1]{\gdef\VariableField@Acknowledgments{#1}}
\newcommand{\Support}[1]{\gdef\VariableField@Support{#1}}
\newcommand{\Institution}[1]{\gdef\VariableField@Institution{#1}}
\newcommand{\Department}[1]{\gdef\VariableField@Department{#1}}
\newcommand{\Place}[1]{\gdef\VariableField@Place{#1}}
\newcommand{\NoVersion}{\gdef\VariableField@NoVersion{TRUE}}
\newcommand{\ShowStatementPage}{\gdef\VariableField@ShowStatementPage{TRUE}}

% Initialize the variables to their default values
\docname{Draft}
\Title{Unknwn Document}
\Author{Unknown Author}
\Keywords{}

\newcommand{\StatementContent}{
	I hereby declare under oath that the submitted \VariableField@DocName has been written solely by me without any third-party assistance. Additional sources or aids are fully documented in this paper, and sources for literal or paraphrased quotes are accurately credited.
%	I herewith declare that I wrote the \VariableField@DocName by myself and without any help. I did not 	use any other than the quoted sources and means and that I marked all 	those 	passages which I took from the sources either lterally or analogously as such.
}

\Statement{
  \StatementContent
  \begin{flushright}
	\begin{tabular}{c}
 		~\\
		~\\
		~\\
		~\\
		~\\
		\textbf{\VariableField@Author} \\
		\today
	\end{tabular}
  \end{flushright}
}
\AbstractTwoTitle{ABSTRACT}


%%%%%%%%%%%%%%%%%
% O P T I O N S %
%%%%%%%%%%%%%%%%%
\DeclareOption{placeholders}{
  \degree{[Name of Degree]}
  \docname{[Document Name]}
  \Title{[Title: Titles Must Be in Mixed Case and May Not Exceed Six Inches on One Line\\
         and Must Be in the Inverted Pyramid Format When\\
         Additional Lines Are Needed]}
  \Author{[Author Name]}
  \AuthorEmail{[address@email.com]}
  \Abstract{[The abstract is a summary of the \VariableField@DocName with emphasis on the findings of the study. The abstract must not exceed 350 words in length and fit on one page, single spaced.]}
  \Keywords{[A comma-separated list of descriptive words for search purposes]}
  \Department{[Department Name]}
  \Institution{[Institution Name]}
  \Place{[Place]}
  \Assignment{[The assignment should be here...]}
  \Acknowledgments{[People who contributed, motivated, etc.]}
  \Support{[Governmental support or support of an organisation, etc.]}
}

\DeclareOption{bachelor}{
  \degree{Bachelor of Science}
  \docname{Bachelor's Thesis}
}

\DeclareOption{masters}{
  \degree{Master of Science}
  \docname{Master's Thesis}
}

\DeclareOption{workingNotes}{
  \degree{}
  \docname{Working Notes}
}

\DeclareOption{assignment}{
  \Assignment{
    \includepdf{assignment.pdf}
  }
}

\DeclareOption{signature}{
  \Statement{
    \StatementContent\ifx\VariableField@AbstractTwo\@empty\else
    \begin{flushright}
      \begin{tabular}{c}
        \includegraphics[width=8cm]{signature.png} \\
        \textbf{\VariableField@Author} \\
        \today
      \end{tabular}
    \end{flushright}
  }
}

\DeclareOption{hideSecondAbstract}{
	\HideAbstractTwo
}

\DeclareOption{noVersion}{
  \NoVersion
}

\DeclareOption{statement}{
  \ShowStatementPage
}

\newcommand{\documentVersion}{
}
\DeclareOption{revision}{
  \renewcommand{\documentVersion}{
	\newdateformat{dbdate}{\THEYEAR-\twodigit{\THEMONTH}-\twodigit{\THEDAY}}
	\newtimeformat{dbtime}{\twodigit{\THEHOUR}:\twodigit{\THEMINUTE}}
	\renewcommand{\thefootnote}{}

    \footnotetext[9]{
      %\\
      \color{Gray}%\tiny
	    Date:~\dbdate\today T\settimeformat{dbtime}\currenttime ~
	    \ifundefined{VariableField@NoVersion}
		    Revision:~\input{.git/refs/heads/master.}
		  \fi
    }
  }
}


%%%%%%%%%%%%%%%%%%%%%%%
% T I T L E   P A G E %
%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\maketitlepage}{
  \unsetHead
  \unsetFoot
  \topmargin 0cm
  ~
  \vskip 0.1\vsize
  %\vfill

  {
    \begin{center}

	  \providecommand\pdfbookmark[3][]{} \pdfbookmark[0]{Title}{bm:Title}
      {\Huge\VariableField@Title \\[1\baselineskip]}
      %\vspace{5 mm}
      {\Large \VariableField@DocName} \\
      \vspace{20 mm}

      \ifundefined{VariableField@Author}\else
        {\LARGE\VariableField@Author} \\
        \ifundefined{VariableField@AuthorEmail}\else
          {\ttfamily \small \VariableField@AuthorEmail} \\
        \fi
        \vspace{5 mm}
      \fi

      \ifundefined{VariableField@Department}\else
        {\VariableField@Department} \\
      \fi

      \ifundefined{VariableName@institution}\else
        {\VariableField@Institution} \\
      \fi

      \ifundefined{VariableField@Advisor}\else
      {
        \vspace{10 mm}
        {\small \VariableField@Advisor}
      }
      \fi
      \vfill
      \ifundefined{VariableField@Place}\else
        \VariableField@Place,
        ~
      \fi
      \ifundefined{VariableField@Month}
        \monthname
      \else
        \VariableField@Month
      \fi
      ~
      \ifundefined{VariableField@Year}
        \the\year
      \else
        \VariableField@Year
      \fi

      \documentVersion

    \end{center}
  }
  \vfill
  \cleardoublepage
}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% A S S I G N M E N T  P A G E %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\makeassignmentnpage}{
	\VariableField@Assignment\par
	\cleardoublepage
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% S T A T E M E N T   P A G E %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\makestatementpage}{
  \unsetHead
  \setFoot
  \topmargin 0cm
  ~
  \vfill
  {
    %\centering
    \providecommand\pdfbookmark[3][]{} \pdfbookmark[0]{Statement}{bm:Statement}
    %STATEMENT\\[1\baselineskip]\par
  }
  \addtolength{\parskip}{\baselineskip}
  \VariableField@Statement\par
  \clearpage
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% A B S T R A C T    P A G E %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\makeabstractpage}{
  \unsetHead
  \setFoot
  \topmargin 0cm
  %~
  %\vfill
  {
	\chapter*{Abstract}
    \providecommand\pdfbookmark[3][]{} \pdfbookmark[0]{Abstract}{bm:Abstract}
    \VariableField@Abstract\par
    \vfill
	%\vspace{2cm}
	\noindent \textbf{Keywords:}~\VariableField@Keywords
  }

  \ifundefined{VariableField@AbstractTwo}\else
    \ifx\VariableField@AbstractTwo\@empty\else
      \ifundefined{VariableField@HideAbstractTwo}
        {
          \chapter*{\VariableField@AbstractTwoTitle}
          \VariableField@AbstractTwo\par
          %\vspace{2cm}
          \vfill
          \noindent \textbf{Keywords:}~\VariableField@Keywords
        }
  	  %\fi
    \fi
  \fi
  %\addtolength{\parskip}{-\baselineskip}
  \cleardoublepage
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% S U P P O R T    P A G E %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\makesupportpage}{
  \unsetHead
  \setFoot
  ~
  \vfill
  \providecommand\pdfbookmark[3][]{} \pdfbookmark[0]{Support}{bm:Support}

  \noindent\rule{\linewidth}{2 pt}
  ~\\
  \VariableField@Support
  ~\\
  \noindent\rule{\linewidth}{2 pt}

  \par\renewcommand{\baselinestretch}{1}\small\normalsize\par
  ~
  \clearpage
}

% Allow opt-out on acknowledgments
\DeclareOption{noacknowlegments}{
  \renewcommand{\acknowledgmentspage}{}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% A C K N O W L E D G E M E N T    P A G E %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\makeacknowledgmentspage}{
  \unsetHead
  \setFoot
  {
    \centering
    \chapter*{Acknowledgements}
    \providecommand\pdfbookmark[3][]{} \pdfbookmark[0]{Acknowledgments}{bm:Acknowledge}
  }
  \VariableField@Acknowledgments
  \par\renewcommand{\baselinestretch}{1}\small\normalsize\par
  \vfill
  ~
  \cleardoublepage
}

% Allow opt-out on acknowledgments
\DeclareOption{noacknowlegments}{
  \renewcommand{\acknowledgmentspage}{}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% P R E L I M I N A R Y   P A G E S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Define the macro for making preliminary pages
\newcommand{\makepreliminarypages}{
  \hypersetup{
    pdfauthor = {\VariableField@Author},
    pdftitle = {\VariableField@Title},
    pdfsubject = {\VariableField@DocName},
    pdfkeywords = {\VariableField@Keywords},
    pdfcreator = {Scriptum LaTeX Class by Jan Kubovy (Copyright (c) 2010-2011)},
    pdfproducer = {dvips + ps2pdf}
  }

  \renewcommand{\thefootnote}{\color{Gray}\fnsymbol{footnote}}
  \pagenumbering{roman}
  %\singlespace
  %\oneandhalfspace
  %\changepage{0.5in}{}{}{}{}{}{-0.2in}{-0.3in}{}
  %\newpage


  \grayfootnotehrule
  %\footnoterelax

  \maketitlepage

  \ifundefined{VariableField@Assignment}\else
    \makeassignmentnpage
  \fi

  %\renewcommand{\thefootnote}{\color{Gray}\arabic{footnote}}
  %\renewcommand{\thefootnote}{\color{CadetBlue}\arabic{footnote}}

  \addtolength{\parskip}{\baselineskip}

  \ifundefined{VariableField@Support}\else
  	\makesupportpage
  \fi

  \ifundefined{VariableField@Acknowledgments}\else
	  \makeacknowledgmentspage
  \fi

  \ifundefined{VariableField@ShowStatementPage}\else
    \makestatementpage
  \fi

  \ifundefined{VariableField@Abstract}\else
    \ifx\VariableField@Abstract\@empty\else
      \makeabstractpage
    \fi
  \fi

  \cleardoublepage

  \providecommand\pdfbookmark[3][]{} \pdfbookmark[0]{Contents}{bm:Contents}
  \tableofcontents

  \cleardoublepage

  \pagenumbering{arabic}
  \setcounter{page}{1}

  \footnotehrule
  \renewcommand{\thefootnote}{\color{Black}\arabic{footnote}}

  \setHead
  \setFoot
  \cleardoublepage
}

% A command to handle single sided preliminary pages in a double sided environment

% Define the '\clearemptydoublepage' command to clear pages but not number any blank pages inserted.
\let\cle@rdoublep@ge\cleardoublepage
\newcommand{\cle@remptydoublep@ge}{
  \clearpage
  \if@twoside
  	\ifodd\c@page\else
  \fi\fi
  {\pagestyle{empty}\cle@rdoublep@ge}
}
\renewcommand{\cleardoublepage}{\cle@remptydoublep@ge}

% Load the class and needed packages
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
\ProcessOptions
\LoadClass[titlepage,a4paper,11pt]{book}

%%%%%%%%%%%%%%%%%%%
% P A C K A G E S %
%%%%%%%%%%%%%%%%%%%
\usepackage[utf8]{inputenc}
\usepackage{nameref}  % Name references
\usepackage{mdwlist}  % List without spaces
\usepackage{graphicx} % Graphics and color packages
\usepackage[usenames,dvipsnames]{color}
\usepackage{multirow} % Multi cell row package
\usepackage{rotating} % Rotating package
\usepackage{float}
\usepackage{datetime}
\usepackage{pdfpages}
%\usepackage{fancyvrb}
\usepackage{datetime}
\usepackage{ifdraft}
\usepackage{ifthen}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsmath}

%\usepackage{algorithmic}
\usepackage{program}
\usepackage[chapter]{algorithm}
\renewcommand{\listalgorithmname}{
  \addtocounter{chapter}{1}
  {\hfill \color{Gray}\fontsize{100}{130}\selectfont \Alph{chapter}}\newline
  List of \ALG@name s
}
\usepackage{qtree}


%%%%%%%%%%%%%%%%%%%%%%%%%%%
% A B B R E V A T I O N S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{abbrevs}

\newcommand{\newConst}[2]{
  \newabbrev#1{\const{#2}}
}
\newcommand{\newVendor}[3]{
	\newabbrev#1{\vendor{#2}}[\vendor{#3}]
}
\newcommand{\newProduct}[3]{
	\newabbrev#1{\product{#2}}[\product{#3}]
}
\newcommand{\newTerm}[2]{
  \newabbrev#1{\term{#2}}
}
\newcommand{\newEmph}[2]{
  \newabbrev#1{\emph{#2}}
}
\newcommand{\newAbbrev}[3]{
	\newabbrev#1{#2 (#3)}[#3]
	\addcontentsline{abbr}{abbrev}{\protect{#3 #2}}
}
\makeatletter \newcommand \listofabbrevs{
    \cleardoublepage
    \chapter{List of Abbreviations} \@starttoc{abbr}
}
\newcommand\l@abbrev[2]{\par\noindent #1 \par} \makeatother

%%%%%%%%%%%%%%%%%%%%%%%%%%%
% T I T L E S   F O N T S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{sectsty}
\parttitlefont{\bfseries}
\chaptertitlefont{\bfseries}
\allsectionsfont{\bfseries}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% P E R   P A G E   F O O T N O T E %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{perpage}
\MakePerPage{footnote}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% R E V E R S E   M A R G I N S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\let\tmp\oddsidemargin
\let\oddsidemargin\evensidemargin
\let\evensidemargin\tmp
\reversemarginpar

%%%%%%%%%%%
% F O N T %
%%%%%%%%%%%
\usepackage[T1]{fontenc}
\usepackage[adobe-utopia]{mathdesign}

%%%%%%%%%%%%
% QUOTCHAP %
%%%%%%%%%%%%
\usepackage[utopia]{quotchap}

%%%%%%%%%%
% QUOTES %
%%%%%%%%%%
\newcommand{\epigraph}[2]{\begin{savequote}[14pc] #1 \qauthor{-- #2}\end{savequote}}
\renewcommand\chapterheadstartvskip{\vspace*{-4\baselineskip}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%
% F A N C Y   H E A D E R %
%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{fancyhdr}

\fancypagestyle{plain}{ %
\fancyhf{} % remove everything
\rfoot{\fancyplain{}{\thepage}}
\renewcommand{\headrulewidth}{0pt} % remove lines as well
\renewcommand{\footrulewidth}{0pt}}

\pagestyle{fancy}

\fancyhf{}
\renewcommand{\headrulewidth}{0pt} % remove lines as well
\renewcommand{\footrulewidth}{0pt}

\newcommand{\setHead}{
	\fancyhead[LE]{\nouppercase{\leftmark}}%{\leftmark}
   	\fancyhead[RE]{\nouppercase{\rightmark}}%{\rightmark ~~~~~~~~~~~~}
   	\fancyhead[LO]{\nouppercase{\leftmark}}%{\leftmark}
   	\fancyhead[RO]{\nouppercase{\rightmark}}%{\rightmark}
   	\fancyhead[CE,CO]{}
	\renewcommand{\headrulewidth}{1pt} % remove lines as well
}

\newcommand{\setFoot}{
	\fancyfoot[RO]{\thepage}
	\fancyfoot[LE]{\thepage}
	\fancyfoot[CE,CO,RE,LO]{}
}

\newcommand{\unsetHead}{
   	\fancyhead[LE,LO,CE,CO,RE,RO]{}
	\renewcommand{\headrulewidth}{0pt} % remove lines as well
}

\newcommand{\unsetFoot}{
   	\fancyfoot[LE,LO,CE,CO,RE,RO]{}
	\renewcommand{\footrulewidth}{0pt}
}
\unsetHead


%%%%%%%%%%%%%%%%%%%
% B O O K M A R K %
%%%%%%%%%%%%%%%%%%%
\usepackage[pagebackref=true,bookmarksnumbered=true]{hyperref}
\hypersetup{
	unicode=true,
	pdftoolbar=false,
	pdfmenubar=false,
	pdffitwindow=true,
	pdfstartview=FitR,
	pdfborder={0 0 0.2 [1 0]},
	bookmarksopen=true,
	bookmarksopenlevel=3,
	colorlinks=false,
	linkcolor=black,
    citecolor=black,
    filecolor=black,
    urlcolor=black
}
\newcommand{\bookmark}[1]{
  \providecommand\pdfbookmark[3][]{} \pdfbookmark[0]{#1}{bm:#1}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% R E F E R E N C I N G   O V E R R I D E S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\figureautorefname{Figure}
\def\tableautorefname{Table}
\def\partautorefname{Part}
\def\appendixautorefname{Appendix}
\def\equationautorefname{Equation}
\def\Itemautorefname{item}
\def\chapterautorefname{Chapter}
\def\sectionautorefname{Section}
\def\subsectionautorefname{Section}
\def\subsubsectionautorefname{Section}
\def\paragraphautorefname{paragraph}
\def\Hfootnoteautorefname{footnote}
\def\AMSautorefname{Equation}
\def\theoremautorefname{Theorem}
\def\pageautorefname{page}
\def\algorithmautorefname{Algorithm}

\let\orgautoref\autoref
%\providecommand{\autoref}[1]{\orgautoref{#1}~\Nameref{#1}}
\renewcommand{\autoref}[1]{\ifdraft{\orgautoref{#1}~`\nameref{#1}' on page XY}{\orgautoref{#1}~\Nameref{#1}}}

\newcommand{\nopageautoref}[1]{\orgautoref{#1}~`\nameref{#1}'}
\newcommand{\tinyautoref}[1]{\orgautoref{#1}}

%%%%%%%%%%%
% T O D O %
%%%%%%%%%%%
\newcommand{\todo}[1]{
	\ifdraft{
      \addcontentsline{tdo}{todo}{\protect{#1}}
      \marginpar{\tiny#1}
    }{}
}
\makeatletter \newcommand \listoftodos{
  \ifdraft{
    \cleardoublepage
    \chapter*{Todo list} \@starttoc{tdo}
  }{}
}
\newcommand\l@todo[2]{\par\noindent Page \textit{#2}: \parbox{10cm}{#1}\par} \makeatother

%%%
\setlength{\parindent}{20pt}
\setlength{\parskip}{-12pt}

%%%%%%%%%%%%%%%%%%%%%
% P A R T   P A G E %
%%%%%%%%%%%%%%%%%%%%%
\def\mypart#1#2{%
	\unsetHead
	\par\break % Page break
	~
	%\vfill
	\vskip 0.3\vsize % Vertical shift
	\refstepcounter{part}% Next part
	\addcontentsline{toc}{part}{\thepart ~~ #1}
	{
		\begin{flushright}
		  {
              \color{Gray}
              {\fontsize{80}{130}\selectfont Part~}
              {\fontsize{100}{130}\selectfont \thepart}
          }\\
          \Huge \textbf{#1} \\
		\end{flushright}
	}%
	\vskip .1\vsize % Vertical shift
	%\vfill
	% Some text
	#2
	\vfill %\break % Fill the end of page and page break
	\cleardoublepage
	\setHead
}
\renewcommand{\part}[2]{\mypart{#1}{#2}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% H I D E   T I T L E   F O R   L I S T   O F   F I G U R E S   A N D   T A B L E S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\renewcommand{\listfigurename}{
  {\color{Gray}\fontsize{100}{130}\selectfont \Alph{chapter}}\\
  List of Figures
}
\let\oldlistoffigures\listoffigures
\renewcommand{\listoffigures}{
  \addtocounter{chapter}{1}
  \oldlistoffigures
  \addcontentsline{toc}{chapter}{\protect\numberline{\Alph{chapter}}List of Figures}
}

\renewcommand{\listtablename}{
  {\color{Gray}\fontsize{100}{130}\selectfont \Alph{chapter}}\\
  List of Tables
}
\let\oldlistoftables\listoftables
\renewcommand{\listoftables}{
  \addtocounter{chapter}{1}
  \oldlistoftables
  \addcontentsline{toc}{chapter}{\protect\numberline{\Alph{chapter}}List of Tables}
}

%\renewcommand{\listfigurename}{}
%\renewcommand{\listtablename}{}
%\renewcommand*{\chaptername}{}
%\renewcommand*{\contentsname}{}
%\renewcommand*{\refname}{}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% D R A F T   W A T E R M A R K %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifdraft{
  \usepackage{draftwatermark}
  \SetWatermarkText{DRAFT}
  \SetWatermarkLightness{0.95}
  \SetWatermarkScale{2}
}{}

%%%%%%%%%%%%%%%%%%%
% F O O T N O T E %
%%%%%%%%%%%%%%%%%%%
\newcommand{\footnoterelax}{
	\renewcommand{\footnoterule}{\relax}
}
\newcommand{\footnotehrule}{
	\renewcommand{\footnoterule}{\vspace*{-3pt}\hrule width 2in height 0.4pt \vspace*{2.6pt}}
}
\newcommand{\grayfootnotehrule}{
	\renewcommand{\footnoterule}{\vspace*{-3pt}\color{Gray}\hrule width 2in height 0.4pt \vspace*{2.6pt}}
}
\newcommand{\grayfootnote}[1]{
	\footnote{\color{Gray} #1}
}

%%%%%%%%%%%%%%%%%%%%%%%
% R E F E R E N C E S %
%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\references}[1]{
  \appendix
  \addtocounter{chapter}{1}
  \renewcommand{\bibname}{
    {\color{Gray}\fontsize{100}{130}\selectfont \Alph{chapter}}\\
    References
  }
  \bibliographystyle{plain}
  \bibliography{#1}
  \addcontentsline{toc}{chapter}{\arabic{chapter}~~~~References}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% L I S T   I T E M   B U L L E T S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\renewcommand{\labelitemi}{$\bullet$}
\renewcommand{\labelitemii}{$\circ$}
\renewcommand{\labelitemiii}{$-$}
\renewcommand{\labelitemiv}{$\cdot$}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% A D D I T I O N A L   C O M M A N D S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\vendor}[1] {\textsc{#1}}
\newcommand{\product}[1] {\textit{#1}}
\newcommand{\term}[1]{\texttt{#1}}
\newcommand{\const}[1]{\texttt{\uppercase{#1}}}
\newcommand{\checkboxX}[1]{\item [{\parbox[][][c]{\wd0}{\LARGE$\boxtimes$}}] #1}
\newcommand{\checkboxV}[1]{\item [{\parbox[][][c]{\wd0}{\LARGE$\surd$}}] #1}
\newcommand{\checkboxO}[1]{\item [{\parbox[][][c]{\wd0}{\LARGE$\square$}}] #1}
\newcommand{\checkboxI}[1]{\item [{\parbox[][][c]{\wd0}{\LARGE$\boxminus$}}] #1}
\newcommand{\itemDot}[1]{\item [{\parbox[][][c]{\wd0}{\LARGE$\cdot$}}] #1}

\renewcommand*{\sectfont}{\bfseries \selectfont}

Leave a Reply

Your email address will not be published. Required fields are marked *