diff -r 193a9fdcedd6 -r 10c096d59218 Slides/langs.sty --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Slides/langs.sty Tue Jun 14 12:24:25 2016 +0100 @@ -0,0 +1,69 @@ +\usepackage{listings} +\usepackage{etoolbox} +\setmonofont[Scale=.95]{Consolas} +\newfontfamily{\consolas}{Consolas} + +\definecolor{codered}{rgb}{0.6,0,0} % for strings +\definecolor{codegreen}{rgb}{0.25,0.5,0.35} % comments +\definecolor{codepurple}{rgb}{0.5,0,0.35} % keywords +\definecolor{codedocblue}{rgb}{0.25,0.35,0.75} % doc +\definecolor{codeblue}{rgb}{0.25,0.35,0.75} % types + +\BeforeBeginEnvironment{lstlisting}{\par\noindent\begin{minipage}{\linewidth}} +\AfterEndEnvironment{lstlisting}{\end{minipage}\par} + +\lstdefinelanguage{Scala}{ + morekeywords={abstract,case,catch,class,def,% + do,else,extends,false,final,finally,% + for,if,implicit,import,match,mixin,% + new,null,object,override,package,% + private,protected,requires,return,sealed,% + super,this,throw,trait,true,try,% + type,val,var,while,with,yield,write,read},% + otherkeywords={=>,<-,<\%,<:,>:,\#},% + sensitive=true,% + %directives={Int,Char,Rexp,String,Boolean,BigInt,Unit,List,Set},% + %moredelim=*[directive]:,% + morecomment=[l]{//},% + morecomment=[n]{/*}{*/}, + morestring=[s]{"""}{"""}, + morestring=[b]", + morestring=[b]', +}[keywords,comments,strings] + +\lstdefinelanguage{While}{ + morekeywords={if,then,else,while,do,true,false,write,upto,read,for,skip}, + morecomment=[l]{//}, + morecomment=[n]{/*}{*/}, + morestring=[b]", + otherkeywords={=,!=,:=,<,>,\%;*,/}, +}[keywords,comments,strings] + +\lstdefinestyle{mystyle} + {basicstyle=\ttfamily, + keywordstyle=\color{codepurple}\bfseries, + stringstyle=\color{codegreen}, + commentstyle=\color{codegreen}, + morecomment=[s][\color{codedocblue}]{/**}{*/}, + numbers=left, + numberstyle=\tiny\color{black}, + stepnumber=1, + numbersep=10pt, + tabsize=2, + showspaces=false, + showstringspaces=false, + xleftmargin=8mm, + emphstyle=\color{codeblue}\bfseries, + keepspaces +} + +\lstset{language=Scala, + style=mystyle} + + +\newcommand{\code}[1]{{\lstinline{#1}}} +\newcommand{\pcode}[1]{\mbox{\lstset{language={},keywordstyle=\color{black}}\lstinline!#1!}} +\newcommand{\scode}[1]{\mbox{\lstset{language={},basicstyle=\ttfamily\color{codegreen}}\lstinline!#1!}} +\makeatother + +\lstset{escapeinside={(*@}{@*)}}