188 lines
7.4 KiB
TeX
188 lines
7.4 KiB
TeX
% Cette classe de document est basee sur [report].
|
|
% Assurez vous d'avoir installe tous les paquets utiles
|
|
%%%%%% Licence%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% la classe LaTeX thesis
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% This program is free software: you can redistribute it and/or modify
|
|
% it under the terms of the GNU General Public License as published by
|
|
% the Free Software Foundation
|
|
%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% PROPOSITION DE TEMPLATE POUR THESE DE DBL par L.YALA (Doctorante
|
|
% IRISA-UR1, Juin 2018)
|
|
%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% Revision des en-tetes et prise en compte de [twoside]
|
|
% Revision de la gestion de la bibliographie avec BiblaTex
|
|
% Ajouts de boites et encarts grises
|
|
% revision de l'enchainement des chapitres
|
|
% Mise aux normes typographiques suivant les Regles Typographiques
|
|
% en usage a l'Imprimerie Nationale
|
|
%
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
\NeedsTeXFormat{LaTeX2e}
|
|
\ProvidesClass{thesis}[19/03/2023 v6]
|
|
|
|
\LoadClass[twoside,11pt,a4paper]{book} % notez le "twoside", essentiellement pour alterner les en-tete et pieds de page gauche et droit si on veut utliser les fancyhead.
|
|
|
|
\RequirePackage[T1]{fontenc} % permet de spécifier à LaTeX l'utilisation du codage de caractères T1, nouvelle norme LaTeX non utilisée par défaut pour des raisons de compatibilité avec les anciens documents LaTeX.
|
|
\RequirePackage[english,french]{babel} % Last language is the default, use \selectlanguage{english} to switch
|
|
|
|
\RequirePackage{setspace} % permet d'utiliser les commandes \spacing, doublespace (double interligne), singlespace (simple interligne) et onehalfspace (un interligne et demi)
|
|
\RequirePackage{csquotes} % Assurer les guillemets français
|
|
\frenchspacing
|
|
\FrenchFootnotes
|
|
|
|
\RequirePackage[pdfversion=1.7]{hyperref} %Utiliser pour une bibliographie interactive + sommaire et TOC interactifs (pour une sortie PDF, par exemple).
|
|
\hypersetup{colorlinks=true, citecolor=black, filecolor=black, linkcolor=black, urlcolor=black}
|
|
|
|
\RequirePackage{ifpdf}
|
|
\RequirePackage{ifthen} % Entrer valeurs booléennes et autres options
|
|
\RequirePackage[usenames,dvipsnames]{color} % pour les couleurs
|
|
\RequirePackage{textcomp}
|
|
\RequirePackage{titlesec}
|
|
\RequirePackage{parcolumns}
|
|
\RequirePackage{multicol}
|
|
|
|
\RequirePackage{tikz} % tikz est utilise pour tracer des boites, par exemple
|
|
\usetikzlibrary{fadings,babel}
|
|
|
|
\RequirePackage{fix-cm}
|
|
\RequirePackage{graphicx} % Pour insérer des images. Utiliser le format jpg pour plus de simplicité.
|
|
\RequirePackage{shorttoc} % pour le sommaire, au debut.
|
|
\RequirePackage{fancyhdr} % Afin de réaliser soi-même les en-têtes et pieds de page, voir chaque début de chapitre.
|
|
\RequirePackage{pifont} % Pour utiliser des symboles divers.
|
|
\RequirePackage{color}
|
|
\RequirePackage{wallpaper}
|
|
\RequirePackage{epigraph} % \cleartoevenpage
|
|
\RequirePackage{eso-pic} % For \AddToShipoutPicture used for cover backgrounds
|
|
\RequirePackage{framed} % utilise pour coloriser les encarts
|
|
|
|
\RequirePackage{lmodern} % Assurer une bonne impression!
|
|
\RequirePackage[inner=30mm,outer=20mm,top=30mm,bottom=20mm]{geometry}
|
|
%Ou bien : \RequirePackage[top=4 cm, bottom=4 cm, left=3 cm, right=3 cm]{geometry} % On peut modifier ces valeurs pour augmenter ou réduire les marges. Attention aux en-têtes de chapitres.
|
|
\onehalfspacing %Interligne 1,5
|
|
|
|
% Define commands to set fonts throughout the document
|
|
\newcommand*{\selectfontchapheads}{\fontfamily{phv}\selectfont} % Font style used chapter headings
|
|
|
|
% Override default font here if you want
|
|
%\renewcommand{\rmdefault}{qpl}
|
|
%\renewcommand{\sfdefault}{qpl}
|
|
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%% CONDITIONAL COMPILATION %%%%%%%%%%%%%%%
|
|
\RequirePackage{xparse}
|
|
\ExplSyntaxOn
|
|
\tl_const:Nn \c_getenv_par_tl { \par }
|
|
\NewDocumentCommand{\ifenvsetTF}{mmm}
|
|
{
|
|
\sys_get_shell:nnN { kpsewhich ~ --var-value ~ #1 } { } \l_tmpa_tl
|
|
\tl_if_eq:NNTF \l_tmpa_tl \c_getenv_par_tl { #3 } { #2 }
|
|
}
|
|
\ExplSyntaxOff
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%% En-tete chap %%%%%%%%%%%%%%%%
|
|
|
|
\makeatletter
|
|
\def\thickhrulefill{\leavevmode \leaders \hrule height 1ex \hfill \kern \z@}
|
|
\def\@makechapterhead#1{%
|
|
\vspace*{-30\p@}%
|
|
{\parindent \z@ \raggedleft \reset@font
|
|
\scshape \@chapapp{} \thechapter
|
|
\par\nobreak
|
|
\interlinepenalty\@M
|
|
\selectfontchapheads \Huge \bfseries #1\par\nobreak
|
|
%\vspace*{1\p@}%
|
|
\hrulefill
|
|
\par\nobreak
|
|
\vskip 50\p@
|
|
}}
|
|
\def\@makeschapterhead#1{%
|
|
\vspace*{-50\p@}%
|
|
{\parindent \z@ \raggedleft \reset@font
|
|
\scshape \vphantom{\@chapapp{} \thechapter}
|
|
\par\nobreak
|
|
\interlinepenalty\@M
|
|
\selectfontchapheads \Huge \bfseries #1 \par\nobreak
|
|
%\vspace*{1\p@}%
|
|
\hrulefill
|
|
\par\nobreak
|
|
\vskip 30\p@
|
|
}}
|
|
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%%%% Interligne simple pour citations et vers %%%%%%%%%%%%%%%%%%
|
|
%% Environnements: QUOTE, QUOTATION, VERSE
|
|
% Copyright (C) 2002 Mike Nolta <mrnolta@princeton.edu>, GPL V. 2.0 and
|
|
% later version. http://www.physics.princeton.edu/cosmology/computing/PrincetonThesis.cls
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
\let\orig@quote\quote
|
|
\let\endorig@quote\endquote
|
|
\renewenvironment*{quote}
|
|
{\begin{orig@quote}\begin{singlespace}}
|
|
{\end{singlespace}\end{orig@quote}}
|
|
|
|
\let\old@quotation\quotation
|
|
\let\endold@quotation\endquotation
|
|
\renewenvironment*{quotation}
|
|
{\begin{old@quotation}\begin{singlespace}}
|
|
{\end{singlespace}\end{old@quotation}}
|
|
|
|
\let\old@verse\verse
|
|
\let\endold@verse\endverse
|
|
\renewenvironment*{verse}
|
|
{\begin{old@verse}\begin{singlespace}}
|
|
{\end{singlespace}\end{old@verse}}
|
|
|
|
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%%%%%%%%%%%%%%%% EN-TETES PAGES %%%%%%%%%%%%%%%%
|
|
|
|
%%%%%%%%% Pour suppirmer les entetes et pied de page gênants par exemple juste avant un chapitre sur une page de droite
|
|
\newcommand{\clearemptydoublepage}{%
|
|
\newpage{\pagestyle{empty}\cleardoublepage}}
|
|
%%%% .... et utiliser la commande \clearemptydoublepage juste avant le \chapter
|
|
|
|
\fancyhf{} % on annule le fancy automatique
|
|
|
|
%%%%%%%%%% Gerer les en tetes dans les frontmatter mainmatter et backmatter
|
|
\RequirePackage{geometry}
|
|
\RequirePackage{etoolbox}
|
|
|
|
\appto\frontmatter{\pagestyle{fancy}
|
|
\renewcommand{\sectionmark}[1]{}
|
|
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
|
|
\fancyhead[LE,RO]{\small\thepage}
|
|
\fancyhead[RO]{\small\leftmark} % \rightmark = section courante
|
|
\fancyhead[LE]{\small\leftmark} % \leftmark = chapitre courant
|
|
\fancyfoot[C]{\thepage} % marque la page au centre
|
|
}
|
|
|
|
\appto\mainmatter{\pagestyle{fancy}
|
|
\renewcommand{\sectionmark}[1]{\markright{\thesection.\ #1}}
|
|
\renewcommand{\chaptermark}[1]{\markboth{\chaptername~\thechapter~--\ #1}{}}
|
|
\fancyhead[LE,RO]{\small\thepage}
|
|
\fancyhead[RO]{\small\rightmark} % \rightmark = section courante
|
|
\fancyhead[LE]{\small\leftmark} % \leftmark = chapitre courant
|
|
\fancyfoot[C]{\thepage} % marque la page au centre
|
|
}
|
|
|
|
\appto\backmatter{\pagestyle{fancy}
|
|
\renewcommand{\sectionmark}[1]{\markright{\thesection.\ #1}}
|
|
\renewcommand{\chaptermark}[1]{\markboth{\chaptername~\thechapter~--\ #1}{}}
|
|
\fancyhead[LE,RO]{\small\thepage}
|
|
\fancyhead[RO]{}
|
|
\fancyhead[LE]{}
|
|
\fancyfoot[C]{\thepage} % marque la page au centre
|
|
}
|