- Add: initial documentation (package options)

- Feature: color themes and setter commands
- Change: more flexible package options
This commit is contained in:
Ricardo Langner
2012-02-01 14:23:40 +01:00
parent abfae2bf89
commit f3d22715a1
8 changed files with 359 additions and 241 deletions

Binary file not shown.

2
README
View File

@@ -1,7 +1,7 @@
Clean Thesis Clean Thesis
-- A LaTeX Style for Thesis Documents -- -- A LaTeX Style for Thesis Documents --
Copyright (C) 2011 Ricardo Langner Copyright (C) 2011-2012 Ricardo Langner
Readme: Readme:

BIN
cleanthesis.pdf Normal file

Binary file not shown.

View File

@@ -2,7 +2,7 @@
% Clean Thesis % Clean Thesis
% -- A LaTeX Style for Thesis Documents -- % -- A LaTeX Style for Thesis Documents --
% %
% Copyright (C) 2011 Ricardo Langner % Copyright (C) 2011-2012 Ricardo Langner
% ************************************************** % **************************************************
% %
% Readme: % Readme:
@@ -53,114 +53,166 @@
% along with this program. If not, see <http://www.gnu.org/licenses/>. % along with this program. If not, see <http://www.gnu.org/licenses/>.
% ************************************************** % **************************************************
\NeedsTeXFormat{LaTeX2e} \NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{cleanthesis}[2011/05/27 v0.1b Clean-looking thesis style inspired by Apple's user guide documents] \ProvidesPackage{cleanthesis}[2012/02/01 v0.2 Clean-looking thesis style inspired by Apple's user guide documents]
%
%\RequirePackage{xkvview}
%\RequirePackage{xkeyval}
% OPTIONS and VALUES
% sansserif = true|false
% colormode = full|reduced|bw
% figurecaptionhang = true|false
% sectionhang = true|false
% subsectionhang = true|false
% figuresep = none|colon|period|space|quad|newline|endash
% \define@choicekey*[ct]{warning}{errorlevel}{info,warning,error}[info]{}
% \setkeys{warning}{errorlevel=info}
% \DeclareOptionX*{
% \PackageWarning{cleanthesis}{Unknown option \CurrentOption}%
% }
%\ProcessOptionsX
\RequirePackage{ifthen}
\newboolean{@sansserif}
\newboolean{@colorbw}
\newboolean{@colorreduced}
\newboolean{@figurecaptionoutside}
\newboolean{@sectionlabeloutside}
\newboolean{@subsectionlabeloutside}
% ************************************************** % **************************************************
% Style Options % Package options
% ************************************************** % **************************************************
\DeclareOption{sansserif}{\setboolean{@sansserif}{true}} %
\DeclareOption{colorbw}{\setboolean{@colorbw}{true}} % -- process all available package options
\DeclareOption{colorreduced}{\setboolean{@colorreduced}{true}} %
\DeclareOption{figurecaptionoutside}{\setboolean{@figurecaptionoutside}{true}} %
\DeclareOption{sectionlabeloutside}{\setboolean{@sectionlabeloutside}{true}} % The xkeyval package enables us to handle for example key-value pairs
\DeclareOption{subsectionlabeloutside}{\setboolean{@subsectionlabeloutside}{true}} % in an easy way
\DeclareOption*{% \RequirePackage{xkeyval}
% OPTION sansserif
% --> values = true|false
\define@boolkey[ct]{cthesis}{sansserif}[true]{}
\setkeys[ct]{cthesis}{sansserif=false}
% OPTION hangfigurecaption
% --> values = true|false
\define@boolkey[ct]{cthesis}{hangfigurecaption}[true]{}
\setkeys[ct]{cthesis}{hangfigurecaption=false}
% OPTION hangsection
% --> values = true|false
\define@boolkey[ct]{cthesis}{hangsection}[true]{}
\setkeys[ct]{cthesis}{hangsection=true}
% OPTION hangsubsection
% --> values = true|false
\define@boolkey[ct]{cthesis}{hangsubsection}[true]{}
\setkeys[ct]{cthesis}{hangsubsection=true}
% OPTION figuresep
% --> values = none|colon|period|space|quad|endash
\define@choicekey*[ct]{cthesis}{figuresep}{none,colon,period,space,quad,newline,endash}[endash]{\def\cthesis@figuresep{#1}}
\setkeys[ct]{cthesis}{figuresep=endash}
% OPTION colorize
% --> values = full|reduced|bw
\define@choicekey*[ct]{cthesis}{colorize}[\val\colorizenr]{full,reduced,bw}[full]{\def\cthesis@colorize{\colorizenr}}
\setkeys[ct]{cthesis}{colorize=full}
% OPTION colortheme
% --> values = bluemagenta|bluegreen
\define@choicekey*[ct]{cthesis}{colortheme}[\val\themenr]{bluemagenta,bluegreen}[bluemagenta]{\def\cthesis@colortheme{\themenr}}
\setkeys[ct]{cthesis}{colortheme=bluemagenta}
\DeclareOptionX*{
\PackageWarning{cleanthesis}{Unknown option \CurrentOption}% \PackageWarning{cleanthesis}{Unknown option \CurrentOption}%
} }
\ProcessOptions\relax % executes the code for each option
\ProcessOptionsX[ct]<cthesis>
% ************************************************** % **************************************************
% Color Definitions % Color Definitions
% ************************************************** % **************************************************
%
% -- defines color themes and color commands
%
%
% The xcolor package enables us to create/handle/name different colors
\RequirePackage[dvipsnames]{xcolor} \RequirePackage[dvipsnames]{xcolor}
% general clean thesis colors % updates all colors regarding the defined main and accessory
\definecolor{cthesisblack}{gray}{.05} % color, as well as the defined colorize mode (full, reduced, bw)
\definecolor{cthesisgraylight}{gray}{.8} \long\def\ct@cthesis@updatecolors{%
\definecolor{cthesismaincolor}{cmyk}{1, .50, .10, .01} % sets all colors (like colorize == full)
\definecolor{cthesisaccessorycolor}{cmyk}{.18, .98, .18, 0} % -- footer colors
\colorlet{ctcolorfooterpage}{ctcolorblack}
\colorlet{ctcolorfooterline}{ctcolormain}
\colorlet{ctcolorfootermark}{ctcolorblack}
\colorlet{ctcolorfootertitle}{ctcolormain}
% -- sectioning colors
\colorlet{ctcolorpartnum}{ctcolormain}
\colorlet{ctcolorpartline}{ctcolorblack}
\colorlet{ctcolorparttext}{ctcolorblack}
\colorlet{ctcolorchapternum}{ctcolormain}
\colorlet{ctcolorchapterline}{ctcolormain}
\colorlet{ctcolorsection}{ctcolormain}
\colorlet{ctcolorsubsection}{ctcolormain}
\colorlet{ctcolorparagraph}{ctcolorblack}
% --> text colors
\colorlet{ctcolorfloatlabel}{ctcoloraccessory}
\colorlet{ctcolorlistlabel}{ctcolormain}
% footer colors \ifcase\cthesis@colorize
\colorlet{cthesiscolorfooterpage}{cthesisblack} % case = 0 (colorize == full)
\colorlet{cthesiscolorfooterline}{cthesismaincolor} % do nothing
\colorlet{cthesiscolorfootermark}{cthesisblack} \or
\colorlet{cthesiscolorfootertitle}{cthesismaincolor} % case = 1 (colorize == reduced)
% --> footer colors
\colorlet{ctcolorfooterline}{ctcolorgray}
\colorlet{ctcolorfootertitle}{ctcolorgray}
% --> sectioning colors
\colorlet{ctcolorsubsection}{ctcolorblack}
\colorlet{ctcolorpartnum}{ctcolorblack}
% --> text colors
\colorlet{ctcolorlistlabel}{ctcolorblack}
\or
% case = 2 (colorize == bw)
% --> footer colors
\colorlet{ctcolorfooterline}{ctcolorgray}
\colorlet{ctcolorfootertitle}{ctcolorgray}
% --> sectioning colors
\colorlet{ctcolorpartnum}{ctcolorblack}
\colorlet{ctcolorchapternum}{ctcolorblack}
\colorlet{ctcolorchapterline}{ctcolorblack}
\colorlet{ctcolorsection}{ctcolorblack}
\colorlet{ctcolorsubsection}{ctcolorblack}
% --> text colors
\colorlet{ctcolorfloatlabel}{ctcolorblack}
\colorlet{ctcolorlistlabel}{ctcolorblack}
\else
\fi
}
% part colors % sets the main and accessory color for the document
\colorlet{cthesiscolorpartnum}{cthesismaincolor} \def\cthesissetcolor#1#2#3{%
\colorlet{cthesiscolorpartline}{cthesisblack} \definecolor{ctcolormain}{#1}{#2}%
\colorlet{cthesiscolorparttext}{cthesisblack} \definecolor{ctcoloraccessory}{#1}{#3}%
\ct@cthesis@updatecolors%
}
% chapter colors % sets the blue-magenta color theme (blue/magenta)
\colorlet{cthesiscolorchapternum}{cthesismaincolor} \def\cthesissetcolorbluemagenta{%
\colorlet{cthesiscolorchapterline}{cthesismaincolor} \cthesissetcolor{cmyk}{1, .50, .10, .01}{.18, .98, .18, 0}%
}
% text colors % sets the blue-green color theme (blue/green)
\colorlet{cthesiscolorsection}{cthesismaincolor} \def\cthesissetcolorbluegreen{%
\colorlet{cthesiscolorsubsection}{cthesismaincolor} \cthesissetcolor{cmyk}{.61, .47, .03, 0}{.48, .05, .91, 0}%
\colorlet{cthesiscolorfloatlabel}{cthesisaccessorycolor} }
\colorlet{cthesiscolorlistlabel}{cthesismaincolor}
\colorlet{cthesiscolorparagraph}{cthesisblack} % defines general colors
\definecolor{ctcolorblack}{gray}{0}
\definecolor{ctcolorgray}{gray}{.5}
\definecolor{ctcolorgraylight}{gray}{.8}
% sets the color theme regarding the given package option colortheme
\ifcase\cthesis@colortheme
% case 0 (colortheme == bluemagenta)
\cthesissetcolorbluemagenta
\or
% case 1 (colortheme == bluegreen)
\cthesissetcolorbluegreen
\else
% all other cases
\cthesissetcolorbluemagenta
\fi
\ifthenelse{\boolean{@colorbw}}%
{%
\setboolean{@colorreduced}{true}%
%
\colorlet{cthesiscolorchapternum}{cthesisblack}%
\colorlet{cthesiscolorchapterline}{cthesisblack}%
%
\colorlet{cthesiscolorsection}{cthesisblack}%
\colorlet{cthesiscolorfloatlabel}{cthesisblack}%
%
\colorlet{cthesiscolorpartnum}{cthesisblack}
}{}
\ifthenelse{\boolean{@colorreduced}}%
{%
\colorlet{cthesiscolorfooterline}{cthesisblack}
\colorlet{cthesiscolorfootertitle}{cthesisblack}
\colorlet{cthesiscolorsubsection}{cthesisblack}
\colorlet{cthesiscolorlistlabel}{cthesisblack}
%
\colorlet{cthesiscolorpartnum}{cthesisblack}
}{}
% ************************************************** % **************************************************
% Font Definitions (see http://www.tug.dk/FontCatalogue/) % Font Definitions (see http://www.tug.dk/FontCatalogue/)
% ************************************************** % **************************************************
\RequirePackage[T1]{fontenc} % font types and character verification \RequirePackage[T1]{fontenc} % font types and character verification
\ifthenelse{\boolean{@sansserif}}% %\ifthenelse{\boolean{@sansserif}}%
{% \ifct@cthesis@sansserif
% {%
% Using sans-serif fonts % Using sans-serif fonts
% %
%\RequirePackage{helvet} % Font: Helvetica %\RequirePackage{helvet} % Font: Helvetica
@@ -169,13 +221,15 @@
%\RequirePackage{libertine} % Font: Biolinum, the standard sans serif typeface with the Libertine package %\RequirePackage{libertine} % Font: Biolinum, the standard sans serif typeface with the Libertine package
%\RequirePackage[scaled]{berasans} % Font: Bera Sans, a a version of Bitstream Vera Sans slightly enhanced %\RequirePackage[scaled]{berasans} % Font: Bera Sans, a a version of Bitstream Vera Sans slightly enhanced
\renewcommand*\familydefault{\sfdefault}% \renewcommand*\familydefault{\sfdefault}%
}{% % }{%
\else
% Using serif fonts % Using serif fonts
% %
\RequirePackage{lmodern} % font set: Latin Modern \RequirePackage{lmodern} % font set: Latin Modern
\RequirePackage{charter} % font set: Charter \RequirePackage{charter} % font set: Charter
%\RequirePackage{fourier} % font set: (basically improved utopia) %\RequirePackage{fourier} % font set: (basically improved utopia)
} % }
\fi
% ************************************************** % **************************************************
% Load Packages % Load Packages
@@ -193,15 +247,17 @@
% %
\RequirePackage[ % modify figure and table captions \RequirePackage[ % modify figure and table captions
font={small}, % - small font size font={small}, % - small font size
labelfont={bf,sf,color=cthesiscolorfloatlabel},% - label in bold, sans-serif and magenta labelfont={bf,sf,color=ctcolorfloatlabel},% - label in bold, sans-serif and magenta
labelsep=endash, % - separator: none, colon, period, space, quad, newline, endash labelsep=\cthesis@figuresep, % - separator: none, colon, period, space, quad, newline, endash
singlelinecheck=false % - no centered single-lined captions singlelinecheck=false % - no centered single-lined captions
]{caption}[2008/08/24] ]{caption}[2008/08/24]
\ifthenelse{\boolean{@figurecaptionoutside}}% %\ifthenelse{\boolean{@figurecaptionoutside}}%
{% \ifct@cthesis@hangfigurecaption
% {%
\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}% \DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}%
\captionsetup{format=llap,labelsep=quad,singlelinecheck=false}% \captionsetup{format=llap,labelsep=quad,singlelinecheck=false}%
}{} % }{}
\fi
% %
\RequirePackage[ % page layout modifications \RequirePackage[ % page layout modifications
paper=a4paper, % - use A4 paper size paper=a4paper, % - use A4 paper size
@@ -288,7 +344,7 @@
\renewcommand{\descriptionlabel}[1]{% \renewcommand{\descriptionlabel}[1]{%
\hspace*{\labelsep}% \hspace*{\labelsep}%
\color{cthesiscolorlistlabel}% \color{ctcolorlistlabel}%
\tgherosfont\textbf{#1}% \tgherosfont\textbf{#1}%
} }
\newenvironment{my_list_desc} \newenvironment{my_list_desc}
@@ -309,17 +365,17 @@
\renewcommand{\chaptermark}[1]{% \renewcommand{\chaptermark}[1]{%
\markboth{% \markboth{%
\footnotesize% \footnotesize%
{\color{cthesiscolorfootermark}\textbf{\chaptername\ \thechapter}}% {\color{ctcolorfootermark}\textbf{\chaptername\ \thechapter}}%
\quad% \quad%
{\color{cthesiscolorfootertitle}#1}% {\color{ctcolorfootertitle}#1}%
}{}% }{}%
} }
\renewcommand{\sectionmark}[1]{% \renewcommand{\sectionmark}[1]{%
\markright{% \markright{%
\footnotesize% \footnotesize%
{\color{cthesiscolorfootermark}\textbf{\thesection}}% {\color{ctcolorfootermark}\textbf{\thesection}}%
\quad% \quad%
{\color{cthesiscolorfootertitle}#1}% {\color{ctcolorfootertitle}#1}%
}% }%
} }
% %
@@ -328,18 +384,18 @@
\fancyfootoffset[OR]{1.85cm} \fancyfootoffset[OR]{1.85cm}
\fancyfoot[OR]{% \fancyfoot[OR]{%
{\ }\tgherosfont% {\ }\tgherosfont%
{\color{cthesiscolorfooterline}\rule[-90pt]{1.25pt}{100pt}}% {\color{ctcolorfooterline}\rule[-90pt]{1.25pt}{100pt}}%
\hspace*{10pt}\begin{minipage}[b]{1.5cm}% \hspace*{10pt}\begin{minipage}[b]{1.5cm}%
\color{cthesiscolorfooterpage}\normalsize\textbf{\thepage}% \color{ctcolorfooterpage}\normalsize\textbf{\thepage}%
\end{minipage}% \end{minipage}%
} }
\fancyfootoffset[EL]{1.85cm} \fancyfootoffset[EL]{1.85cm}
\fancyfoot[EL]{% \fancyfoot[EL]{%
\tgherosfont% \tgherosfont%
\begin{minipage}[b]{1.5cm}% \begin{minipage}[b]{1.5cm}%
\raggedleft\color{cthesiscolorfooterpage}\normalsize\textbf{\thepage}% \raggedleft\color{ctcolorfooterpage}\normalsize\textbf{\thepage}%
\end{minipage}% \end{minipage}%
\hspace*{10pt}{\color{cthesiscolorfooterline}\rule[-90pt]{1.25pt}{100pt}}% \hspace*{10pt}{\color{ctcolorfooterline}\rule[-90pt]{1.25pt}{100pt}}%
} }
\renewcommand{\headrulewidth}{0pt} \renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt} \renewcommand{\footrulewidth}{0pt}
@@ -352,19 +408,19 @@
\fancyfoot[OR]{% \fancyfoot[OR]{%
{\ }\tgherosfont\footnotesize% {\ }\tgherosfont\footnotesize%
\rightmark% \rightmark%
\hspace*{0.75cm}{\color{cthesiscolorfooterline}\rule[-90pt]{1.25pt}{100pt}}% \hspace*{0.75cm}{\color{ctcolorfooterline}\rule[-90pt]{1.25pt}{100pt}}%
\hspace*{10pt}\begin{minipage}[b]{1.5cm}% \hspace*{10pt}\begin{minipage}[b]{1.5cm}%
\color{cthesiscolorfooterpage}\normalsize\textbf{\thepage}% \color{ctcolorfooterpage}\normalsize\textbf{\thepage}%
\end{minipage}% \end{minipage}%
} }
\fancyfootoffset[EL]{1.85cm} \fancyfootoffset[EL]{1.85cm}
\fancyfoot[EL]{% \fancyfoot[EL]{%
\tgherosfont\footnotesize% \tgherosfont\footnotesize%
\begin{minipage}[b]{1.5cm}% \begin{minipage}[b]{1.5cm}%
\raggedleft\color{cthesiscolorfooterpage}\normalsize\textbf{\thepage}% \raggedleft\color{ctcolorfooterpage}\normalsize\textbf{\thepage}%
\end{minipage}% \end{minipage}%
\footnotesize% \footnotesize%
\hspace*{10pt}{\color{cthesiscolorfooterline}\rule[-90pt]{1.25pt}{100pt}}% \hspace*{10pt}{\color{ctcolorfooterline}\rule[-90pt]{1.25pt}{100pt}}%
\hspace*{0.75cm}\leftmark% \hspace*{0.75cm}\leftmark%
} }
} }
@@ -435,13 +491,13 @@
\newcommand{\book}{\fontfamily{pbk}\fontseries{m}\fontsize{11}{13}\selectfont} \newcommand{\book}{\fontfamily{pbk}\fontseries{m}\fontsize{11}{13}\selectfont}
\newcommand{\tgherosfont}{\fontfamily{qhv}\selectfont} \newcommand{\tgherosfont}{\fontfamily{qhv}\selectfont}
\newcommand{\thesispartlabelfont}{\color{cthesiscolorpartnum}\book\fontsize{60}{60}\selectfont} \newcommand{\thesispartlabelfont}{\color{ctcolorpartnum}\book\fontsize{60}{60}\selectfont}
\newcommand{\thesispartfont}{\color{cthesiscolorparttext}\huge \tgherosfont\selectfont} \newcommand{\thesispartfont}{\color{ctcolorparttext}\huge \tgherosfont\selectfont}
\newcommand{\thesischapterfont}{\color{cthesisblack}\huge \fontfamily{phv}\selectfont} \newcommand{\thesischapterfont}{\color{ctcolorblack}\huge \fontfamily{phv}\selectfont}
%\newcommand{\thesissectionfont}{\color{cthesismaincolor}\LARGE\bfseries \tgherosfont} %\newcommand{\thesissectionfont}{\color{ctcolormain}\LARGE\bfseries \tgherosfont}
\newcommand{\thesissectionfont}{\color{cthesiscolorsection}\LARGE \tgherosfont} \newcommand{\thesissectionfont}{\color{ctcolorsection}\LARGE \tgherosfont}
\newcommand{\thesissubsectionfont}{\color{cthesiscolorsubsection}\Large \tgherosfont} \newcommand{\thesissubsectionfont}{\color{ctcolorsubsection}\Large \tgherosfont}
\newcommand{\thesisparagraphfont}{\color{cthesiscolorparagraph}\tgherosfont\small\bfseries} \newcommand{\thesisparagraphfont}{\color{ctcolorparagraph}\tgherosfont\small\bfseries}
% %
% headings % headings
\setkomafont{part}{\thesispartfont} % for chapter entries \setkomafont{part}{\thesispartfont} % for chapter entries
@@ -482,7 +538,7 @@
{\raggedleft{% {\raggedleft{%
{\thesispartlabelfont% {\thesispartlabelfont%
\partname\ \thepart\quad}% \partname\ \thepart\quad}%
{\color{cthesiscolorpartline}% {\color{ctcolorpartline}%
\hspace*{-225pt}\rule[20pt]{600pt}{2pt}} \hspace*{-225pt}\rule[20pt]{600pt}{2pt}}
}% }%
}% }%
@@ -494,9 +550,9 @@
\titleformat{\chapter}[display]% \titleformat{\chapter}[display]%
{\usekomafont{chapter}}% {\usekomafont{chapter}}%
{\vspace{-8em}\raggedleft{% {\vspace{-8em}\raggedleft{%
{\color{cthesiscolorchapterline}% {\color{ctcolorchapterline}%
\rule[-5pt]{2pt}{5cm}}\quad% \rule[-5pt]{2pt}{5cm}}\quad%
{\color{cthesiscolorchapternum} {\color{ctcolorchapternum}
\fontsize{60}{60}\selectfont\thechapter}% \fontsize{60}{60}\selectfont\thechapter}%
}% }%
}% }%
@@ -506,41 +562,47 @@
% %
% > formats: \section % > formats: \section
\titlespacing{\section}{0em}{.75em}{.2em}%[0pt] \titlespacing{\section}{0em}{.75em}{.2em}%[0pt]
\ifthenelse{\boolean{@sectionlabeloutside}}% %\ifthenelse{\boolean{@sectionlabeloutside}}%
{% \ifct@cthesis@hangsection
% {%
\titleformat{\section}[hang]% \titleformat{\section}[hang]%
{\usekomafont{section}}% {\usekomafont{section}}%
{\color{cthesisblack}\thesection\hspace*{10pt}}% {\color{ctcolorblack}\thesection\hspace*{10pt}}%
{0pt}% {0pt}%
{\raggedright}% {\raggedright}%
[\phantomsection] [\phantomsection]
}{% % }{%
\else
\titleformat{\section}[block]% \titleformat{\section}[block]%
{\usekomafont{section}}% {\usekomafont{section}}%
{\color{cthesisblack}\thesection\hspace*{10pt}}% {\color{ctcolorblack}\thesection\hspace*{10pt}}%
{0pt}% {0pt}%
{\raggedright}% {\raggedright}%
[\phantomsection] [\phantomsection]
} % }
\fi
% %
% > formats: \subsection % > formats: \subsection
\titlespacing{\subsection}{0em}{.5em}{0em}%[0pt] \titlespacing{\subsection}{0em}{.5em}{0em}%[0pt]
\ifthenelse{\boolean{@subsectionlabeloutside}}% %\ifthenelse{\boolean{@subsectionlabeloutside}}%
{% \ifct@cthesis@hangsubsection
% {%
\titleformat{\subsection}[hang]% \titleformat{\subsection}[hang]%
{\usekomafont{subsection}}% {\usekomafont{subsection}}%
{\color{cthesisblack}\thesubsection\hspace*{10pt}}% {\color{ctcolorblack}\thesubsection\hspace*{10pt}}%
{0pt}% {0pt}%
{\raggedright}% {\raggedright}%
[\phantomsection] [\phantomsection]
}{% % }{%
\else
\titleformat{\subsection}[block]% \titleformat{\subsection}[block]%
{\usekomafont{subsection}}% {\usekomafont{subsection}}%
{\color{cthesisblack}\thesubsection\hspace*{10pt}}% {\color{ctcolorblack}\thesubsection\hspace*{10pt}}%
{0pt}% {0pt}%
{\raggedright}% {\raggedright}%
[\phantomsection] [\phantomsection]
} % }
\fi
% %
% > formats: \paragraph % > formats: \paragraph
\titlespacing{\paragraph}{0pt}{\parsep}{1em}%[0pt] \titlespacing{\paragraph}{0pt}{\parsep}{1em}%[0pt]
@@ -579,7 +641,7 @@
% Clean chapter quotations % Clean chapter quotations
\newcommand{\hugequote}{% \newcommand{\hugequote}{%
{\book\fontsize{75}{80}\selectfont% {\book\fontsize{75}{80}\selectfont%
\hspace*{-.475em}\color{cthesisgraylight}% \hspace*{-.475em}\color{ctcolorgraylight}%
\textit{\glqq}% \textit{\glqq}%
\vskip -.26em}% \vskip -.26em}%
} }
@@ -615,3 +677,6 @@
% %
% Clean signs around word origins in definitions % Clean signs around word origins in definitions
%\newcommand{\cthesisorigin}[1]{\textsf{\textlangle}#1\textsf{\textrangle}} %\newcommand{\cthesisorigin}[1]{\textsf{\textlangle}#1\textsf{\textrangle}}

116
cleanthesis.tex Normal file
View File

@@ -0,0 +1,116 @@
\documentclass{ltxdockit}
\usepackage{btxdockit}
\usepackage[utf8]{inputenc}
\usepackage[american]{babel}
\usepackage[strict]{csquotes}
\usepackage{tabularx}
\usepackage{longtable}
\usepackage{booktabs}
\usepackage{shortvrb}
\usepackage{pifont}
\rcsid{$Id: cleanthesis.tex,v 0.2 2012/02/01 12:30:00 rlangner stable $}
\newcommand*{\cleanthesis}{CleanThesis\xspace}
\newcommand*{\cthesishome}{http://cleanthesis.der-ric.de/}
%\newcommand*{\cthesisctan}{http://www.ctan.org/tex-archive/macros/latex/contrib/../}
\titlepage{%
title={The \sty{cleanthesis} Package},
subtitle={A LaTeX Style for Thesis Documents},
url={\cthesishome},
author={Ricardo Langner},
email={info@cleanthesis.der-ric.de},
revision={\rcsrevision},
date={\rcstoday}}
\hypersetup{%
pdftitle={The \cleanthesis Package},
pdfsubject={A LaTeX Style for Thesis Documents},
pdfauthor={Ricardo Langner},
pdfkeywords={tex, latex, thesis, style}}
%\setcounter{secnumdepth}{4}
\begin{document}
\printtitlepage
\tableofcontents
\listoftables
\section{Introduction}
\label{sec:intro}
\subsection[About]{About \sty{cleanthesis}}
\label{sec:intro:about}
\subsection{License}
\label{sec:intro:license}
Copyright \textcopyright\ 2011--2012 Ricardo Langner.
\cleanthesis is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
\cleanthesis is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program.
If not, see <http://www.gnu.org/licenses/>.
\subsection{Feedback}
\label{sec:intro:feedback}
\subsection{Acknowledgments}
\label{sec:intro:ack}
\subsection{Prerequisites}
\label{sec:intro:pre}
The follwing section gives an overview of all resources required by this package.
\subsubsection{Requirements}
\label{sec:intro:req}
\section{User Guide}
\label{sec:userguide}
\subsection{Package Options}
\label{sec:userguide:pkgopt}
All package options are given in \keyval notation.
The value \texttt{true} can be omitted for all boolean keys, \eg \opt{sansserif} without a value is equivalent to \kvopt{sansserif}{true}.
All of the following options must be used as \sty{cthesis} is loaded, \ie in the optional argument to \cmd{usepackage}.
\begin{optionlist}
\boolitem[false]{sansserif}
Sets whether to use a sans serif font or not.
\boolitem[false]{hangfigurecaption}
\boolitem[true]{hangsection}
\boolitem[true]{hangsubsection}
\optitem[endash]{figuresep}{\opt{none},\opt{colon},\opt{period},\opt{space},\opt{quad},\opt{endash}}
This option can be used to define a different label separator for cations of figures. The following value are allowed:
\begin{valuelist}
\item[none] Inserts no character in between.
\item[colon] Inserts a colon (\textbf{:}) in between.
\item[period] Inserts a period (\textbf{.}) in between.
\item[space] Inserts a single space character in between.
\item[quad] Inserts a \cmd{\\quad} in between.
\item[endash] Inserts an en dash (\textbf{--}) in between.
\end{valuelist}
\optitem[full]{colorize}{\opt{full},\opt{reduced},\opt{bw}}
\optitem[bluemagenta]{colortheme}{\opt{bluemagenta},\opt{bluegreen}}
\end{optionlist}
\end{document}

View File

@@ -29,7 +29,7 @@
\vfill \vfill
{\large \thesisSubject} \\[5mm] {\large \thesisSubject} \\[5mm]
{\LARGE \color{cthesismaincolor}\textbf{\thesisTitle} \\[10mm]} {\LARGE \color{ctcolormain}\textbf{\thesisTitle} \\[10mm]}
{\Large \thesisName} \\ {\Large \thesisName} \\
\vfill \vfill

BIN
thesis-example.pdf Normal file

Binary file not shown.

View File

@@ -2,7 +2,7 @@
% Clean Thesis % Clean Thesis
% -- A LaTeX Style for Thesis Documents -- % -- A LaTeX Style for Thesis Documents --
% %
% Copyright (C) 2011 Ricardo Langner % Copyright (C) 2011-2012 Ricardo Langner
% ************************************************** % **************************************************
% %
% Readme: % Readme:
@@ -10,7 +10,7 @@
% *** Clean, Simple, Elegant *** % *** Clean, Simple, Elegant ***
% "Clean Thesis" is a LaTeX style for thesis documents, developed % "Clean Thesis" is a LaTeX style for thesis documents, developed
% for my diplom thesis (Diplomarbeit). The style can be understood % for my diplom thesis (Diplomarbeit). The style can be understood
% as my personal compromise — a typical clean looking scientific % as my personal compromise - a typical clean looking scientific
% document combined and polished with minor beautifications. % document combined and polished with minor beautifications.
% %
% The design of this "Clean Thesis" style is inspired % The design of this "Clean Thesis" style is inspired
@@ -70,7 +70,7 @@
titlepage=on, % own page for each title page titlepage=on, % own page for each title page
captions=tableabove, % display table captions above the float env captions=tableabove, % display table captions above the float env
draft=false, % value for draft version draft=false, % value for draft version
]{scrbook}% scrreprt ]{scrreprt}%
% ************************************************** % **************************************************
% Debug LaTeX Information % Debug LaTeX Information
@@ -80,15 +80,11 @@
% ************************************************** % **************************************************
% Information and Commands for Reuse % Information and Commands for Reuse
% ************************************************** % **************************************************
\newcommand{\thesisTitle}{Novel Interaction and Visualization Techniques \newcommand{\thesisTitle}{The Clean Thesis Style}
for Node-Link Diagram Editing and Exploration} \newcommand{\thesisName}{Ricardo Langner}
\newcommand{\thesisName}{Mathias Frisch} \newcommand{\thesisSubject}{Documentation}
\newcommand{\thesisSubject}{Dissertation} \newcommand{\thesisDate}{February 1, 2012}
\newcommand{\thesisDate}{January, 2012} \newcommand{\thesisVersion}{0.2}
\newcommand{\thesisVersion}{0.1b}
\newcommand{\thesisFirstSupervisor}{Prof. Dr. Raimund Dachselt}
\newcommand{\thesisSecondSupervisor}{}
\newcommand{\thesisFirstReviewer}{Jane Doe} \newcommand{\thesisFirstReviewer}{Jane Doe}
\newcommand{\thesisFirstReviewerUniversity}{\protect{Clean Thesis Style University}} \newcommand{\thesisFirstReviewerUniversity}{\protect{Clean Thesis Style University}}
@@ -98,37 +94,30 @@ for Node-Link Diagram Editing and Exploration}
\newcommand{\thesisSecondReviewerUniversity}{\protect{Clean Thesis Style University}} \newcommand{\thesisSecondReviewerUniversity}{\protect{Clean Thesis Style University}}
\newcommand{\thesisSecondReviewerDepartment}{Department of Clean Thesis Style} \newcommand{\thesisSecondReviewerDepartment}{Department of Clean Thesis Style}
\newcommand{\thesisFirstSupervisor}{Jane Doe}
\newcommand{\thesisSecondSupervisor}{John Smith}
\newcommand{\thesisUniversity}{\protect{Clean Thesis Style University}}
\newcommand{\thesisUniversity}{\protect{Otto-von-Guericke-University Magdeburg}} \newcommand{\thesisUniversityDepartment}{Department of Clean Thesis Style}
\newcommand{\thesisUniversityDepartment}{Department of Computer Science} \newcommand{\thesisUniversityInstitute}{Institut for Clean Thesis Dev}
\newcommand{\thesisUniversityInstitute}{Institute for Simulation and Computer Graphics} \newcommand{\thesisUniversityGroup}{Clean Thesis Group (CTG)}
\newcommand{\thesisUniversityGroup}{User Interface \& Software Engineering Group} \newcommand{\thesisUniversityCity}{City}
\newcommand{\thesisUniversityCity}{Magdeburg} \newcommand{\thesisUniversityStreetAddress}{Street address}
\newcommand{\thesisUniversityStreetAddress}{Universit\"atsplatz 2} \newcommand{\thesisUniversityPostalCode}{Postal Code}
\newcommand{\thesisUniversityPostalCode}{39104}
%% figure references
\newcommand{\F}[1]{Figure~\ref{#1}}
\newcommand{\f}[2][]{Figure~\ref{#2} #1}
\newcommand{\Fb}[2][]{Figure~\ref{#2} (#1)}
\newcommand{\s}[2][]{Section~\ref{#2}#1}
%\newcommand{\cha}[2][]{Chapter~\ref{#2}#1}
\newcommand{\tecterm}[2][]{\textit{#2}#1}
% ************************************************** % **************************************************
% Load and Configure Packages % Load and Configure Packages
% ************************************************** % **************************************************
%\usepackage[utf8]{inputenc} % defines file's character encoding \usepackage[utf8]{inputenc} % defines file's character encoding
\usepackage[english]{babel} % babel system, adjust the language of the content \usepackage[english]{babel} % babel system, adjust the language of the content
\usepackage[ % clean thesis style \usepackage[ % clean thesis style
%sansserif, % -use sans serif font family figuresep=colon,%
%colorreduced, % - controls the use of colors; use colorreduced or colorbw sansserif=false,%
%figurecaptionoutside, % - puts the label of figures into the margin hangfigurecaption=false,%
sectionlabeloutside, % - puts the label of sections into the margin hangsection=true,%
%subsectionlabeloutside, % - puts the label of subsections into the margin hangsubsection=true,%
colorize=full,%
colortheme=bluemagenta,%
]{cleanthesis} ]{cleanthesis}
\hypersetup{ % setup the hyperref-package options \hypersetup{ % setup the hyperref-package options
@@ -143,23 +132,6 @@ for Node-Link Diagram Editing and Exploration}
bookmarksopen=true % bookmarksopen=true %
} }
\usepackage{pdfpages}
\usepackage{xcolor}
\usepackage{soul}
%% yellow marked text
\definecolor{yellow_highlight}{rgb}{1,1,0}
\newcommand{\Y}[1]{\hl{#1}}
\makeatletter
\newcommand{\labitem}[2]{%
\def\@itemlabel{\textbf{#1}}
\item
\def\@currentlabel{#1}\label{#2}}
\makeatother
% ************************************************** % **************************************************
% Document CONTENT % Document CONTENT
% ************************************************** % **************************************************
@@ -199,53 +171,24 @@ for Node-Link Diagram Editing and Exploration}
\setcounter{page}{1} % set page counter \setcounter{page}{1} % set page counter
\pagestyle{maincontentstyle} % fancy header and footer \pagestyle{maincontentstyle} % fancy header and footer
\input{content/chapter-introduction} % INCLUDE: introduction
%\input{content/chapter-introduction} % INCLUDE: introduction \input{content/chapter-related-work} % INCLUDE: related work
\input{content/chapter1-motivation} \input{content/chapter-system} % INCLUDE: system
\input{content/chapter-concepts} % INCLUDE: concepts
\part{Research Background} \input{content/chapter-conclusion} % INCLUDE: conclusion
\label{part:background}
\input{content/chapter2-researchBackground}
\input{content/chapter3-devicesTechnologies}
\input{content/chapter4-requirements}
%\end{part}
\begin{part}{Creating and Editing \\Node-Link Diagrams}
\input{content/chapter5-relatedWork}
\input{content/chapter6-diagramEditing}
\input{content/chapter7-diagramLayouts}
\input{content/chapter8-pensPaper}
\end{part}
\begin{part}{Exploring and Analyzing \\Node-Link Diagrams}
\input{content/chapter9-relatedWork}
\input{content/chapter10-offscreen}
\input{content/chapter11-offscreentouch}
\end{part}
\begin{part}{Conclusions \& Outlook}
\input{content/chapter12-contributions}
%\input{content/chapter13-discussion}
\input{content/chapter14-outlook}
\end{part}
\cleardoublepage \cleardoublepage
% -------------------------- % --------------------------
% Back matter % Back matter
% -------------------------- % --------------------------
%\printbibheading
\cleardoublepage
{% {%
\setstretch{1.1} \setstretch{1.1}
\renewcommand{\bibfont}{\normalfont\small} \renewcommand{\bibfont}{\normalfont\small}
\setlength{\biblabelsep}{0pt} \setlength{\biblabelsep}{0pt}
\setlength{\bibitemsep}{0.5\baselineskip plus 0.5\baselineskip} \setlength{\bibitemsep}{0.5\baselineskip plus 0.5\baselineskip}
%\nocite{*} \nocite{*}
\printbibliography[nottype=online] \printbibliography[nottype=online]
\printbibliography[heading=subbibliography,title={Websites},type=online,prefixnumbers={@}] \printbibliography[heading=subbibliography,title={Webseiten},type=online,prefixnumbers={@}]
} }
\cleardoublepage \cleardoublepage
@@ -255,13 +198,7 @@ for Node-Link Diagram Editing and Exploration}
\listoftables \listoftables
\cleardoublepage \cleardoublepage
\begin{appendix} \input{content/colophon}
\input{content/appendixA}
\input{content/appendixB}
\input{content/appendixC}
\end{appendix}
%\input{content/colophon}
\cleardoublepage \cleardoublepage
\input{content/declaration} \input{content/declaration}