mt-polygon-simplification/thesis/custom-listing.tex
2019-07-14 20:37:26 +02:00

141 lines
5.6 KiB
TeX

\definecolor{mygreen}{rgb}{0,0.6,0}
\definecolor{mygray}{rgb}{0.5,0.5,0.5}
\definecolor{mymauve}{rgb}{0.58,0,0.82}
\definecolor{darkgray}{rgb}{.4,.4,.4}
\definecolor{purple}{rgb}{0.65, 0.12, 0.82}
% === Customize a bit the look ===
\lstset{ %
backgroundcolor=\color{white}, % choose the background color; you must add \usepackage{color} or \usepackage{xcolor}
basicstyle=\footnotesize, % the size of the fonts that are used for the code
breakatwhitespace=false, % sets if automatic breaks should only happen at whitespace
breaklines=true, % sets automatic line breaking
captionpos=b, % sets the caption-position to bottom
commentstyle=\color{mygreen}, % comment style
deletekeywords={...}, % if you want to delete keywords from the given language
escapeinside={\%*}{*)}, % if you want to add LaTeX within your code
extendedchars=true, % lets you use non-ASCII characters; for 8-bits encodings only, does not work with UTF-8
frame=single, % adds a frame around the code
keepspaces=true, % keeps spaces in text, useful for keeping indentation of code (possibly needs columns=flexible)
keywordstyle=\color{blue}, % keyword style
% language=Octave, % the language of the code
morekeywords={*,...}, % if you want to add more keywords to the set
numbers=left, % where to put the line-numbers; possible values are (none, left, right)
numbersep=5pt, % how far the line-numbers are from the code
numberstyle=\tiny\color{mygray}, % the style that is used for the line-numbers
rulecolor=\color{black}, % if not set, the frame-color may be changed on line-breaks within not-black text (e.g. comments (green here))
showspaces=false, % show spaces everywhere adding particular underscores; it overrides 'showstringspaces'
showstringspaces=false, % underline spaces within strings only
showtabs=false, % show tabs within strings adding particular underscores
stepnumber=1, % the step between two line-numbers. If it's 1, each line will be numbered
stringstyle=\color{mymauve}, % string literal style
tabsize=2, % sets default tabsize to 2 spaces
title=\lstname, % show the filename of files included with \lstinputlisting; also try caption instead of title
aboveskip=1em,
belowskip=1em
}
% END of listing package
% === define Javascript language ===
\lstdefinelanguage{JavaScript}{
keywords={typeof, new, true, false, catch, function, return, null, catch, switch, var, if, in, while, do, else, case, break},
keywordstyle=\color{blue}\bfseries,
ndkeywords={class, export, boolean, throw, implements, import, this},
ndkeywordstyle=\color{darkgray}\bfseries,
identifierstyle=\color{black},
sensitive=false,
comment=[l]{//},
morecomment=[s]{/*}{*/},
commentstyle=\color{purple}\ttfamily,
stringstyle=\color{red}\ttfamily,
morestring=[b]',
morestring=[b]"
}
\lstset{
language=JavaScript,
extendedchars=true,
basicstyle=\footnotesize\ttfamily,
showstringspaces=false,
showspaces=false,
numbers=left,
numberstyle=\footnotesize,
numbersep=9pt,
tabsize=2,
breaklines=true,
showtabs=false,
captionpos=b
}
% === define diff ===
\lstdefinelanguage{diff}{
sensitive=true,
% diff command line
morecomment=[f][\color{gray}][0]{diff},
% commit identifiers for git diff
morecomment=[f][\color{gray}][0]{index},
% hunk location/line numbers for unified format
morecomment=[f][\color{blue}][0]{@@},
% hunk location/line numbers for context format
morecomment=[f][\color{magenta}][0]{***},
% changed line for context format
morecomment=[f][\color{violet}][0]{!},
% deleted lines for unified format
morecomment=[f][\color{red!60!black}][0]-,
% added lines for unified format
morecomment=[f][\color{green!60!black}][0]+,
% file name and time stamp old file
morecomment=[f][\color{magenta}][0]{---},
% file name and time stamp new file
morecomment=[f][\color{magenta}][0]{+++},
% Binary files ... differ
morecomment=[f][\color{gray}][0]{Binary},
% Only in ...: file.txt
morecomment=[f][\color{gray}][0]{Only},
% old mode ...
morecomment=[f][\color{gray}][0]{old},
% new mode ...
morecomment=[f][\color{gray}][0]{new},
% rename from/to ...
morecomment=[f][\color{gray}][0]{rename},
% similarity index ...%
morecomment=[f][\color{gray}][0]{similarity},
% deleted file mode ...%
morecomment=[f][\color{gray}][0]{deleted},
% hunk separator for context format
morecomment=[f][\color{magenta}][0]{***************},
% deleted lines for normal format
morecomment=[f][\color{red!60!black}][0]<,
% added lines for normal format
morecomment=[f][\color{green!60!black}][0]>,
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{0},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{1},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{2},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{3},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{4},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{5},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{6},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{7},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{8},
% line number specifier for normal format
morecomment=[f][\color{blue}][0]{9},
}[comments]
\lstdefinelanguage{diff2}{
morecomment=[f][\color{blue}]{@@}, % group identifier
morecomment=[f][\color{red}]-, % deleted lines
morecomment=[f][\color{green}]+, % added lines
morecomment=[f][\color{magenta}]{---}, % Diff header lines (must appear after +,-)
morecomment=[f][\color{magenta}]{+++},
}