\RequirePackage{ntnu} \RequirePackage{xcolor} \RequirePackage{listings} \RequirePackage{tcolorbox} \definecolor{code-foreground}{RGB}{248, 248, 242} % Monokai fg \definecolor{code-background}{RGB}{39, 40, 34} % Monokai bg \definecolor{code-keyword}{RGB}{249, 38, 144} % Monokai Red \definecolor{code-string}{RGB}{230, 219, 116} % Monokai Yellow \definecolor{code-comment}{RGB}{117, 113, 94} % Monokai Grey \definecolor{code-identifier}{RGB}{166, 226, 46} % Monokai Green \tcbuselibrary{ breakable, listings } % TODO: Add stuff like box chars and maybe chess pieces \lstset{literate= {á}{{\'a}}1 {é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1 {ú}{{\'u}}1 {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1 {à}{{\`a}}1 {è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1 {À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1 {ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1 {Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1 {â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1 {Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1 {Ã}{{\~A}}1 {ã}{{\~a}}1 {Õ}{{\~O}}1 {õ}{{\~o}}1 {Ø}{{\O}}1 {œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1 {ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1 {ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1 {€}{{\euro}}1 {£}{{\pounds}}1 {«}{{\guillemotleft}}1 {»}{{\guillemotright}}1 {ñ}{{\~n}}1 {Ñ}{{\~N}}1 {¿}{{?`}}1 } \lstdefinestyle{monokai}{ frame=none, xleftmargin=5mm, numbers=left, stepnumber=1, % the step between two line-numbers. numbersep=5pt, % how far the line-numbers are from the code showspaces=false, % show spaces adding particular underscores showstringspaces=false, % underline spaces within strings showtabs=false, % show tabs within strings adding particular underscores tabsize=2, % default tabsize captionpos=b, % caption-position breaklines=true, % sets automatic line breaking breakatwhitespace=true, % sets if automatic breaks should only happen at whitespace numberstyle=\color{white!60!black}\ttfamily, backgroundcolor=\color{code-background}, basicstyle=\color{code-foreground}\ttfamily, keywordstyle=\color{code-keyword}\ttfamily, stringstyle=\color{code-string}\ttfamily, commentstyle=\color{code-comment}\ttfamily, identifierstyle=\color{code-identifier}, emph={format_string, eff_ana_bf, permute, eff_ana_btr}, emphstyle=\color{identifier}\ttfamily } \newtcbinputlisting{\codeFile}[3][]{ title={\Large\color{white} #2}, listing file=#2, % file path listing inputencoding=utf8, colback=code-background, boxrule=3pt, arc=0pt, outer arc=0pt, top=0pt, bottom=0pt, enlarge top by=0pt, enlarge bottom by=0pt, colframe=ntnublue, coltext=code-foreground, listing only, left=10pt, enhanced, breakable, listing options={ style=monokai, language=#3 }, #1 % temp file }