From 6ecadcb8571712536f9d121264f67f30f7bb0147 Mon Sep 17 00:00:00 2001
From: Camil Staps
Date: Fri, 3 Jun 2016 00:39:37 +0200
Subject: First version almost finished

---
 paper/clean.sty | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 73 insertions(+)
 create mode 100644 paper/clean.sty

(limited to 'paper/clean.sty')

diff --git a/paper/clean.sty b/paper/clean.sty
new file mode 100644
index 0000000..15c50fc
--- /dev/null
+++ b/paper/clean.sty
@@ -0,0 +1,73 @@
+\usepackage{listings}
+
+\lstdefinelanguage{Clean}{%
+	alsoletter={ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_`1234567890},
+	alsoletter={~!@\#$\%^\&*-+=?<>:|\\.},
+	morekeywords={generic,implementation,definition,dynamic,module,import,from,where,in,of,case,let,infix,infixr,infixl,class,instance,with,if,derive},
+	sensitive=true,
+	morecomment=[l]{//},
+	morecomment=[n]{/*}{*/},
+	morestring=[b]",
+	morestring=[b]',
+	emptylines=1,
+	basicstyle=\small,
+	identifierstyle=\small\ttfamily,
+	commentstyle=\itshape,
+	keywordstyle=\bfseries,
+	stringstyle=\ttfamily,
+	numbers=none,
+	showstringspaces=false,
+	basewidth=0.45em,
+	columns=[c]fixed,
+	keepspaces=true,
+	breaklines=false,
+	tabsize=4,
+	texcl=true,
+	escapeinside={(\#}{\#)},
+	literate=%
+		% Basic Clean constructs
+		{\\}{{$\lambda\:$}}1
+		{A.}{{$\forall\;\,$}}1
+		{E.}{{$\exists\;\,$}}1
+		{>}{{$>$}}1
+		{<}{{$<$}}1
+		{`}{{\texttt{'}}}1
+		{<=}{{$\leq$}}1
+		{>=}{{$\geq$}}1
+		{<>}{{$\neq$}}1
+		{->}{{$\rightarrow$}}2
+		{<-}{{$\leftarrow$}}1
+		{=}{{$=$}}1
+		{~}{{$\sim$}}1
+		{*}{{$\star$}}1
+		{\#}{{$\sharp$}}1
+		{\{|}{{$\{\!|\!$}}1
+		{|\}}{{$\!|\!\}$}}1
+		{:=}{{$:=$}}2
+		{=:}{{$\>=:$}}3
+		{==}{{$==$}}2
+		{++}{{$+\!\!+$}}2
+		{+++}{{$+\!\!\!\!+\!\!\!\!+$}}2
+		{:==}{{$:==$}}3
+		{\{|*|\}}{{$\{\!|\!\!\star\!\!|\!\}$}}3
+		%
+		% Basic iTask constructs
+		{>||>}{{$\triangleright\triangleright$}}2
+		{>>=}{{\texttt{>>=}}}3
+		{>>|}{{\texttt{>>|}}}3
+		{?>>}{{\texttt{?>>}}}3
+		{!>>}{{\texttt{!>>}}}3
+		{-||-}{{\texttt{-||-}}}4
+		{.||.}{{\texttt{.||.}}}4
+		{.&&.}{{\texttt{.\&\&.}}}4
+}
+
+\newcommand{\CleanInline}[1]{\lstinline[language=Clean]�#1�}
+\newcommand{\CI}[1]{\CleanInline{#1}}
+
+\lstdefinestyle{numbers}{numbers=left, stepnumber=1, numberstyle=\tiny, numbersep=5pt}
+
+\lstnewenvironment{CleanCode}{\lstset{language=Clean,identifierstyle=\ttfamily}}{}
+\lstnewenvironment{CleanCodeN}{\lstset{language=Clean,style=numbers}}{}
+\lstnewenvironment{CleanCodeB}{\lstset{language=Clean,frame=single}}{}
+\lstnewenvironment{CleanCodeNB}{\lstset{language=Clean,style=numbers,frame=single}}{}
-- 
cgit v1.2.3

