summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/droit-fr/droit-fr.cls
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/droit-fr/droit-fr.cls')
-rw-r--r--Master/texmf-dist/tex/latex/droit-fr/droit-fr.cls180
1 files changed, 102 insertions, 78 deletions
diff --git a/Master/texmf-dist/tex/latex/droit-fr/droit-fr.cls b/Master/texmf-dist/tex/latex/droit-fr/droit-fr.cls
index cc5ad7b2ba4..15dd03051f2 100644
--- a/Master/texmf-dist/tex/latex/droit-fr/droit-fr.cls
+++ b/Master/texmf-dist/tex/latex/droit-fr/droit-fr.cls
@@ -1,38 +1,35 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{droit-fr}[2013/05/04 v0.2 classe pour droit francais]
+\ProvidesClass{droit-fr}[2014/01/30 v0.4 classe pour droit francais]
\LoadClassWithOptions{memoir} % classe de référence: memoir
-%%% PACKAGES REQUIS %%%
-
-\RequirePackage[utf8]{inputenc}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{mathptmx} % police Times
-\RequirePackage{engrec} % compteur à symbole grecs
-\RequirePackage{filecontents} % génération des fichers de style makeindex
-\RequirePackage{lipsum} % génération de texte automatique
-\RequirePackage{ifdraft} % comportements spécifiques quand l'option de classe draft est présente
-\RequirePackage{xifthen} % code conditionnel
-\RequirePackage{kvoptions} % support des options de type clé=valeur
-\RequirePackage{babel} % support des langues
-\RequirePackage[babel]{csquotes} % support des guillemets babel
-\RequirePackage{hyperref} % hyperliens PDF
-\RequirePackage{bookmark} % signets PDF
-
%%% OPTIONS %%%
+\RequirePackage{kvoptions} % support des options de type clé=valeur
\SetupKeyvalOptions{family=drfr,prefix=drfr@}
-\DeclareBoolOption{footnotereset}
+\DeclareBoolOption[true]{footnotereset}
+\DeclareBoolOption[true]{versetitle}
\ProcessKeyvalOptions{drfr}
\ifdrfr@footnotereset
% reset des notes de bas de page à chaque nouvelle page
-\RequirePackage[perpage]{footmisc}
+\PassOptionsToPackage{perpage}{footmisc}
\else
% numérotation continue des notes de bas de pages du début à la fin
\counterwithout{footnote}{chapter}
\fi
+%%% PACKAGES REQUIS %%%
+\RequirePackage[utf8]{inputenc} % pour bonne interprétation des caractère spéciaux dans la classe
+\RequirePackage{ifdraft} % comportements spécifiques quand l'option de classe draft est présente
+\RequirePackage{xifthen} % code conditionnel
+\RequirePackage{xstring} % code conditionnel
+\RequirePackage{footmisc} % gestion des notes de bas de page
+\RequirePackage{engrec} % compteur à symbole grecs
+\RequirePackage{filecontents} % génération des fichers de style makeindex
+\usepackage{babel} % support des langues
+\usepackage[babel]{csquotes} % support des guillemets babel
+
%%% PAGE DE TITRE %%%
% université
@@ -84,10 +81,10 @@
\thispagestyle{empty}
\begin{center}
-{\LARGE Université \theuniversity \\[1\onelineskip]}
-{\large École doctorale de \theschool \\[2\onelineskip]}
+{\LARGE Universit\'e \theuniversity \\[1\onelineskip]}
+{\large \'Ecole doctorale de \theschool \\[2\onelineskip]}
-{Thèse de doctorat en \thespeciality \\
+{Th\`ese de doctorat en \thespeciality \\
soutenue le \theapprovaldate \\[2\onelineskip]}
{\LARGE\bfseries \thetitle \\[2\onelineskip]}
@@ -161,11 +158,11 @@ Membres du jury: & \themembera \\
%%% SECTIONS %%%
-% parties ("Première partie")
+% [-2] parties ("Première partie")
% macro de conversion compteur => chaine de caractères de genre féminin
\newcommand{\counterToFrenchF}[1]{\ifcase\value{#1}\or Première\or
- Seconde\or Troisième\or Quatrième\or Cinquième\or
+ Deuxième\or Troisième\or Quatrième\or Cinquième\or
Sixième\or Septième\or Huitième\or Neuvième\or Dixième\or
Onzième\or Douzième\or Treizième\or Quatorzième\or Quinzième\or
Seizième\or Dix-septième\or Dix-huitième\or Dix-neuvième\or Vingtième\fi}
@@ -174,7 +171,7 @@ Membres du jury: & \themembera \\
\renewcommand{\printbooknum}{} % numéro
\newcommand{\partie}{\book}
-% titres (I)
+% [-1] titres (I)
\AtBeginDocument{%
\renewcommand*{\partname}{Titre}
@@ -182,77 +179,81 @@ Membres du jury: & \themembera \\
\counterwithin*{part}{book}% RAZ du compteur \part dans un nouveau book
\newcommand{\titre}{\part}
-% chapitres (1)
+% [0] chapitres (1)
\counterwithin*{chapter}{part}% RAZ du compteur \chapter dans une nouvelle part
\newcommand{\chapitre}{\chapter}
-% sections (I)
+% [1] sections (I)
\renewcommand*{\thesection}{Section \Roman{section}}
%\setbeforesecskip{}
%\setsecindent{}
\setaftersecskip{2em}
-\setsecheadstyle{\LARGE\bfseries}
-\newcommand{\sectio}{\section}
+\setsecheadstyle{\LARGE\bfseries\raggedright}
+\setsechook{\needspace{4\baselineskip}}
-% paragraphes (§1)
+% [2] paragraphes (§1)
-\renewcommand*{\thesubsection}{\S\ \arabic{subsection}.}
+\renewcommand*{\thesubsection}{\S~\arabic{subsection}.}
%\setbeforesubsecskip{}
%\setsubsecindent{}
\setaftersubsecskip{1.5em}
-\setsubsecheadstyle{\Large\bfseries}
+\setsubsecheadstyle{\Large\bfseries\raggedright}
+\setsubsechook{\needspace{4\baselineskip}}
\newcommand{\paragraphe}{\subsection}
-% sous-paragraphes (A.)
+% [3] sous-paragraphes (A.)
\renewcommand*{\thesubsubsection}{\Alph{subsubsection}.}
%\setbeforesubsubsecskip{}
%\setsubsubsecindent{}
%\setaftersubsubsecskip{}
-\setsubsubsecheadstyle{\large\bfseries}
+\setsubsubsecheadstyle{\large\bfseries\raggedright}
+\setsubsubsechook{\needspace{4\baselineskip}}
\newcommand{\souspara}{\subsubsection}
-% alinéas (1.)
+% [4] alinéas (1.)
\renewcommand*{\theparagraph}{\arabic{paragraph}.}
%\setbeforeparaskip{}
%\setparaindent{}
%\setafterparaskip{}
-%\setparaheadstyle{}
+\setparaheadstyle{\bfseries\raggedright}
+\setparahook{\needspace{4\baselineskip}}
\newcommand{\alinea}{\paragraph}
-% sous-alinéas (a.)
+% [5] sous-alinéas (a.)
\renewcommand*{\thesubparagraph}{\alph{subparagraph}.}
%\setbeforesubparaskip{}
-%\setsubparaindent{}
-%\setaftersubparaskip{}
-%\setsubparaheadstyle{}
+\setsubparaindent{0pt}
+%\setaftersubparaskip{} %
+\setsubparaheadstyle{\bfseries\raggedright}
+\setsubparahook{\needspace{4\baselineskip}}
\newcommand{\sousalinea}{\subparagraph}
-% points (i.)
+% [6] points (i.)
\newcommand{\subsubparagraph}{\@startsection{subsubparagraph}
{6}{\parindent}{1\baselineskip plus 0.25\baselineskip}
- {.5em}{\normalsize\bfseries}}
+ {.5em}{\normalsize\bfseries\raggedright}}
\newlistentry[subparagraph]{subsubparagraph}{toc}{5}
\newcommand*{\subsubparagraphmark}[1]{} % gobble heading mark
\renewcommand{\thesubsubparagraph}{\roman{subsubparagraph}.}
\newcommand{\point}{\subsubparagraph}
-% souspoints (alpha.)
+% [7] souspoints (alpha.)
\newcommand{\subsubsubparagraph}{\@startsection{subsubsubparagraph}
{7}{\parindent}{1\baselineskip plus 0.25\baselineskip}
- {.5em}{\normalsize\bfseries}}
+ {.5em}{\normalsize\bfseries\raggedright}}
\newlistentry[subsubparagraph]{subsubsubparagraph}{toc}{6}
\newcommand*{\subsubsubparagraphmark}[1]{} % gobble heading mark
\renewcommand{\thesubsubsubparagraph}{\engrec{subsubsubparagraph}.}
\newcommand{\souspoint}{\subsubsubparagraph}
-% versets (paragraphes numérotés)
+% [8] versets (paragraphes numérotés)
\newcommand{\versetsec}[1]{\@startsection{versetsec}
{8}{\parindent}{0.5\baselineskip}
@@ -261,15 +262,48 @@ Membres du jury: & \themembera \\
\newcommand*{\versetsecmark}[1]{} % gobble heading mark
\renewcommand{\theversetsec}{\arabic{versetsec}.}
-\newcommand{\versetsecfilled}{\versetsec{-0.5em}}
+\newcommand{\versetsecfilled}{\versetsec{-1em}}
\newcommand{\versetsecblank}{\versetsec{-0em}}
% référencement des versets dans l'index
\newcounter{indexv}
-\newcommand{\verset}[1]{%
+
+% style des versets: caractères séparateur avec le texte
+\newcommand{\versetsep}{}
+\newcommand{\versetsepifempty}{}
+\newcommand{\versetsepspace}{1em}
+\newcommand{\versetsepstyle}{\normalfont}
+
+% ajout de point final si nécessaire.
+% aucun point n'est ajouté si le verset est déjà fini par "!", "?", "." ou "/ldots".
+\newcommand{\versetdot}[1]{%
+ \IfEndWith{#1}{.}{}{%
+ \IfEndWith{#1}{?}{}{%
+ \IfEndWith{#1}{!}{}{%
+ \IfEndWith{#1}{\ldots}{}{.}%
+ }%
+ }%
+ }%
+}
+
+\newcommand{\versetcontent}[1]{%
\ifthenelse{\equal{#1}{}}%
{\versetsecblank{#1}}%
- {\versetsecfilled{#1}}%
+ {\versetsecfilled{#1\protect\versetdot{#1}}}%
+}
+
+\newcommand{\verset}[1]{%
+ \ifdrfr@versetitle%
+ \ifthenelse{\equal{#1}{}}%
+ {\ifthenelse{\equal{\versetsepifempty}{}}%
+ {\versetcontent{#1}}%
+ {\versetcontent{{\versetsepstyle\versetsepifempty}}}}%
+ {\ifthenelse{\equal{\versetsep}{}}%
+ {\versetcontent{#1}}%
+ {\versetcontent{#1\hspace{\versetsepspace}{\versetsepstyle\versetsep}}}}%
+ \else%
+ \versetcontent{{\versetsepstyle\versetsepifempty}}%
+ \fi%
\addtocounter{indexv}{1}%
}
@@ -278,6 +312,8 @@ Membres du jury: & \themembera \\
\maxsecnumdepth{all}
\setcounter{secnumdepth}{7} % pour points (6) et sous-points (7)
+% option pour éviter les pbs d'hyperliens ambigus (de \part et \chapter)
+\PassOptionsToPackage{hypertexnames=false}{hyperref}
%%% REFERENCES CROISEES
@@ -295,13 +331,6 @@ Membres du jury: & \themembera \\
\renewcommand{\memglodesc}[1]{\hspace{1ex}#1}
\renewcommand{\memglonum}[1]{}
-% groupes par lettre alphabétique
-\newcommand{\doglobookmark}[1]{%
-{\bfseries\centering%
-#1\phantomsection\pdfbookmark[1]{#1}{#1-glo}%
-\vskip\onelineskip\par}}
-
-
%%% INDEX %%%
\renewcommand*{\seename}{\textit{voir}}
@@ -309,30 +338,25 @@ Membres du jury: & \themembera \\
\ifdraft{\showindexmarks}{}
-\newcommand{\indexv}[1]{\specialindex{\jobname}{indexv}{#1}}
-\newcommand{\printindexv}{\printindex[\jobname]}
+% index de base par versets
+\newcommand{\indexvfilename}{\jobname}
+\newcommand{\makeindexv}{\makeindex[\indexvfilename]}
+\newcommand{\indexv}[1]{\specialindex{\indexvfilename}{indexv}{#1}}
+\newcommand{\printindexv}{\printindex[\indexvfilename]}
+
+% index d'auteur par versets
+\newcommand{\indexafilename}{auteurs}
+\newcommand{\makeindexa}{\makeindex[\indexafilename]}
+\newcommand{\indexa}[1]{\specialindex{\indexafilename}{indexv}{#1}}
+\newcommand{\printindexa}{\printindex[\indexafilename]}
+% entête de l'index
\newcommand{\idxmark}[1]{#1\markboth{#1}{#1}}
+% raccourcis de style pour entrées indexées
\newcommand{\hyperbf}[1]{\textbf{\hyperpage{#1}}}
\newcommand{\hyperit}[1]{\textit{\hyperpage{#1}}}
-% groupes par lettre alphabétique
-\newcommand{\doidxbookmark}[1]{%
-{\def\@tempa{Symbols}\def\@tempb{#1}%
-\bfseries\centering \ifx\@tempa\@tempb %
-Symboles
-\phantomsection%
-\pdfbookmark[1]{Symboles}{Analphabetics-idx}%
-\label{AnalphabeticsAnalphabeticsAnalphabetics-idx}%
-\else
-#1%
-\phantomsection%
-\pdfbookmark[1]{#1}{#1-idx}%
-% \label{#1#1#1-idx}%
-\fi%
-\vskip\onelineskip\par}}
-
%%% SOMMAIRE & TABLE DES MATIERES %%%
@@ -476,9 +500,9 @@ delim_0 "}, "
% not forgetting the subitem case% added 2008
item_x1 "} \n \\subitem "
% Wrap and uppercase head letters
-headings_flag 1
-heading_prefix "\\doidxbookmark{"
-heading_suffix "}"
+heading_prefix "{\\bfseries\\hfil "
+heading_suffix "\\hfil}\\nopagebreak\n"
+headings_flag 1
\end{filecontents}
% génération du fichier de style .gst
@@ -489,9 +513,9 @@ postamble "\n\\end{theglossary}\n"
item_0 "\n\\glossitem"
delim_0 "{\\memglonum{"
encap_suffix "}}}"
+heading_prefix "{\\bfseries\\hfil "
+heading_suffix "\\hfil}\\nopagebreak\n"
headings_flag 1
-heading_prefix "\\doglobookmark{"
-heading_suffix "}"
% Input style parameters
keyword "\\glossaryentry"
\end{filecontents}