Files
college-infos/docs/preamble.tex
T
OpenCode 423a32f220 docs(pronote-auth): reconstruire le source LaTeX et régénérer le PDF
Les fichiers de chapitres référencés par docs/pronote-auth.tex (preamble, frontmatter, ch-*, annex-*) n'avaient jamais été committés, rendant le PDF non reproductible. Reconstitution fidèle depuis docs/pronote-auth.md, correction des instructions de compilation (TEXINPUTS + -output-directory), ajout de l'Annexe C, du Glossaire et de l'Historique des révisions, PDF régénéré (27 pages).
2026-09-12 21:17:23 +02:00

160 lines
5.2 KiB
TeX
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
% =============================================================================
% PRÉAMBULE LaTeX — Authentification Pronote
% =============================================================================
% --- Classe de document ---
\documentclass[11pt,a4paper,oneside]{report}
% --- Encodage et langue ---
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{lmodern}
% --- Polices (plan documentaire : EB Garamond / Carlito / DejaVu Sans Mono) ---
% EB Garamond (sérif) : police principale du document
\usepackage{ebgaramond}
% Carlito (sans-sérif, compatible métriquement Calibri)
\usepackage[sfdefault]{carlito}
% DejaVu Sans Mono (chasse fixe) : code, JSON, requêtes HTTP
% (fontspec est déjà chargé par EB Garamond sous LuaLaTeX)
\setmonofont{DejaVu Sans Mono}[Scale=0.9]
% --- Couleurs (palette Bleu Institutionnel & Ardoise) ---
\usepackage{xcolor}
\definecolor{primaryNavy}{RGB}{20,45,85}
\definecolor{secondarySlate}{RGB}{70,95,125}
\definecolor{accentSteel}{RGB}{0,115,150}
\definecolor{lightGray}{RGB}{240,240,240}
\definecolor{warningRed}{RGB}{180,50,50}
% --- Mise en page ---
\usepackage[a4paper, margin=2.5cm, top=2cm, bottom=2cm]{geometry}
\usepackage{parskip}
\setlength{\parskip}{1em}
\setlength{\parindent}{0pt}
% --- Hyperliens et PDF ---
\usepackage{hyperref}
\hypersetup{
colorlinks=true,
linkcolor=accentSteel,
urlcolor=accentSteel,
citecolor=secondarySlate,
filecolor=primaryNavy,
menucolor=primaryNavy,
runcolor=primaryNavy,
pdfauthor={Équipe Architecture & Sécurité},
pdftitle={Authentification Pronote — Référence technique},
pdfsubject={Référence technique d'authentification pour pronote-sync},
pdfkeywords={Pronote, authentification, pronote-sync, QR code, token, ENT, iCal},
bookmarksopen=true,
bookmarksnumbered=true
}
% --- Titres et sections ---
\usepackage{titlesec}
\titleformat{\chapter}[display]
{\normalfont\huge\bfseries\color{primaryNavy}}
{\chaptertitlename\ \thechapter}
{20pt}
{\Huge\color{primaryNavy}}
\titleformat{\section}
{\normalfont\Large\bfseries\color{primaryNavy}}
{\thesection}
{1em}
{\color{primaryNavy}}
\titleformat{\subsection}
{\normalfont\large\bfseries\color{secondarySlate}}
{\thesubsection}
{1em}
{\color{secondarySlate}}
\titleformat{\subsubsection}
{\normalfont\bfseries\color{secondarySlate}}
{\thesubsubsection}
{1em}
{\color{secondarySlate}}
% --- Tableaux ---
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{array}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}\hspace{1em}}p{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}\hspace{1em}}p{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}\hspace{1em}}p{#1}}
% --- Listes et encadrés ---
\usepackage{enumitem}
\setlist[itemize]{leftmargin=*, topsep=0.5em, itemsep=0.25em}
\setlist[enumerate]{leftmargin=*, topsep=0.5em, itemsep=0.25em}
% --- Callouts (encadrés colorés) ---
\usepackage{mdframed}
\newmdenv[linecolor=warningRed, linewidth=2pt, leftmargin=10pt, rightmargin=10pt, innerleftmargin=10pt, innerrightmargin=10pt, backgroundcolor=red!5!white, roundcorner=5pt, skipabove=10pt, skipbelow=10pt]{warningbox}
\newmdenv[linecolor=secondarySlate, linewidth=2pt, leftmargin=10pt, rightmargin=10pt, innerleftmargin=10pt, innerrightmargin=10pt, backgroundcolor=blue!5!white, roundcorner=5pt, skipabove=10pt, skipbelow=10pt]{infobox}
% --- Code source ---
\usepackage{listings}
\lstdefinestyle{pronote}{
basicstyle=\ttfamily\footnotesize,
breaklines=true,
frame=single,
rulecolor=\color{gray!30},
backgroundcolor=\color{lightGray},
keywordstyle=\color{primaryNavy},
stringstyle=\color{secondarySlate},
commentstyle=\color{gray},
showstringspaces=false,
tabsize=2,
captionpos=b,
xleftmargin=10pt,
xrightmargin=10pt,
aboveskip=10pt,
belowskip=10pt
}
\lstset{style=pronote}
% --- Symboles et icônes ---
\usepackage{amssymb}
\usepackage{pifont}
\newcommand{\checkmarkicon}{\ding{51}} % ✓
\newcommand{\warningicon}{\ding{43}} % ⚠
\newcommand{\infoicon}{\ding{48}} %
\newcommand{\crossicon}{\ding{55}} % ✗
% --- Mathématiques ---
\usepackage{amsmath}
% --- Table des matières ---
\usepackage{tocloft}
\renewcommand{\cftchapfont}{\normalfont\bfseries\color{primaryNavy}}
\renewcommand{\cftsecfont}{\normalfont\color{primaryNavy}}
\renewcommand{\cftsubsecfont}{\normalfont\color{secondarySlate}}
% --- En-têtes et pieds de page ---
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[LE,RO]{\thepage}
\fancyhead[LO]{\nouppercase{\rightmark}}
\fancyhead[RE]{\nouppercase{\leftmark}}
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\footrulewidth}{0pt}
% --- Espacement vertical ---
\usepackage{setspace}
\onehalfspacing
% --- Césure ---
\usepackage{microtype}
% --- Support des emojis (repli sur texte si non disponible) ---
\newcommand{\emojiwarning}{\warningicon}
\newcommand{\emojicheck}{\checkmarkicon}
\newcommand{\emojicross}{\crossicon}
\newcommand{\emojiinfo}{\infoicon}
% =============================================================================
% FIN DU PRÉAMBULE
% =============================================================================