\documentclass{article}

\usepackage[utf8x]{inputenc} % encodage utf-8
\usepackage[french]{babel} % en français
\usepackage[T1]{fontenc} % encodage T1 police
\usepackage[hidelinks]{hyperref} % lien dans table des matières
\usepackage{listings} % intégration code
\usepackage[dvipsnames]{xcolor} % couleur

\definecolor{defaultPredicat}{RGB}{121, 94, 38}
\definecolor{definitionChar}{RGB}{175, 0, 219}
\definecolor{argsAndPredicat}{RGB}{0, 96, 181}
\definecolor{string}{RGB}{163, 99, 21}
\definecolor{comment}{RGB}{0, 128, 0}
\lstset{
    frame=single, % encadré
    breaklines=true, % lignes dans le cadre
    columns=fullflexible, % contenu bien présenté dans le cadre
    % chiffres
    numbers=left,
    numberstyle=\tiny,
    % affichage
    basicstyle=\ttfamily,
    keywordstyle=\color{defaultPredicat},
    identifierstyle=\color{argsAndPredicat},
    stringstyle=\color{string},
    commentstyle=\color{comment},
    literate=
        {:-}{{\textcolor{definitionChar}{:- }}}1
    % utf-8 fix source: https://en.wikibooks.org/wiki/LaTeX/Source_Code_Listings
        {á}{{\'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 {ẽ}{{\~e}}1 {ĩ}{{\~i}}1 {õ}{{\~o}}1 {ũ}{{\~u}}1
        {Ã}{{\~A}}1 {Ẽ}{{\~E}}1 {Ĩ}{{\~I}}1 {Õ}{{\~O}}1 {Ũ}{{\~U}}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 {¡}{{!`}}1,
    showstringspaces=false, % espaces normaux
    language=Prolog % language
}
\author{Kévin Martins Da Veiga [20009472] et Anri Kennel [20010664]}
\title{Projet Heyawake en Prolog}
\date{}

\begin{document}

    \maketitle
    \tableofcontents
    \newpage

    \section{Présentation du Projet}
    \subsection{Introduction et règles du jeu}
    \noindent L'Heyawake est un puzzle joué dans une grille rectangulaire séparés en plusieurs aires dont le but
    est de colorés des cellules en noir et blanc en accord avec les règles :
    \\\indent -> Certaines aires contiennent un chiffre qui montre combien il y a de cellules noires dans l'aire
    \\\indent\indent -> Région avec un 0 ne doivent pas avoir de cellules noires
    \\\indent\indent -> Région avec un 1 contient une cellule noire
    \\\indent -> Toutes les cellules blanches doivent être connectés en un seul groupe, pas de groupe isolés, elles doivent toutes être reliés
    \\\indent -> Deux cellules noires de peuvent être l'un à côté de l'autre horizontalement et verticalement (en diagonale, c'est possible)
    \\\indent\indent -> Ca veut dire que les cellules noires doivent être que entourés de cellules blanches
    \\\indent -> Une rangée de cellule blanche ne peuvent pas être alignée au-delà de 2 aires
    \subsection{Réalisation}

    \section{Résolution d'une grille avec des aires}
    \subsection{On a essayé\dots}

    \section{Le programme}
    \subsection{La fonction principal en détail}
    \subsection{Listing des prédicats utilisés}
    \subsection{On a pas réussi\dots}

    \newpage
    \section{Annexe : les codes}
    \subsection{Programme qui ne fonctionne pas}
    \lstinputlisting{../resolveur.pl}

\end{document}
