latex-homework/jl-devoir/jl-devoir.cls

258 lines
5.4 KiB
OpenEdge ABL
Raw Normal View History

%%%
%%%
%%% Classe : jl-devoir.cls
%%% Version : 1.0
%%% Date : 03/10/18
%%% Auteur : Jeff LANCE
%%%
%%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{jl-devoir}[2018/10/03 Classe pour les devoirs et tests, V1.0]
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
% INIT
%
%
2019-05-23 18:08:53 +00:00
\LoadClassWithOptions{scrartcl}
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
% PACKAGES
%
%
2019-05-23 18:08:53 +00:00
%% Others
%%
\RequirePackage{xkeyval}
2019-05-23 18:08:53 +00:00
%% Own packages. Those contains some global settings and definitions.
%%
\RequirePackage{commun}
\RequirePackage{couleurs}
\RequirePackage{shortcuts}
2019-05-23 18:08:53 +00:00
%% Output
%%
\RequirePackage{comment}
2019-05-23 18:08:53 +00:00
%% Layout
%%
\RequirePackage{geometry}
\RequirePackage[footsepline, plainfootsepline]{scrlayer-scrpage}
\RequirePackage{titling}
\RequirePackage{titlesec}
\RequirePackage{pageslts}
\RequirePackage{enumitem}
\RequirePackage[]{hyperref}
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\makeatletter
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
% OPTIONS
%
%
\DeclareOptionX{type}[ds]{%
\def\type{#1}%
}
\DeclareOptionX{size}[a4paper]{%
\def\size{#1}%
}
\ExecuteOptions{DIV=24}
\ExecuteOptionsX{type}
\ExecuteOptionsX{size}
\ProcessOptionsX
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
% FIXES
%
%
2019-05-23 18:08:53 +00:00
\input{fixes.tex}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
% SETTINGS
%
%
% metapost
\ifpdf
\DeclareGraphicsRule{*}{mps}{*}{}
\fi
% tkz
\usetkzobj{all} % loading all tkz objects
% sizing of the page, depending on the size parameter of the class
\ifthenelse{ \equal{\size}{a5} }{
\geometry{
a5paper,
landscape,
includeheadfoot,
hmargin=.8cm,
vmargin=.8cm,
head=14.5pt}
}{
\geometry{a4paper,
includeheadfoot,
hmargin=.8cm,
vmargin=.8cm,
head=14.5pt}
}
% title, header and footer
\ihead[]{}
\chead[]{}
\ohead[]{}
\ifoot[]{}
\cfoot[]{}
\ofoot[]{}
% KOMA-Script version (preferred)
\ifthenelse{ \equal{\type}{ds} }{
\cohead[\textbf{MATHÉMATIQUES}\\\textbf{Devoir surveillé}]
{\textbf{MATHÉMATIQUES}\\\textbf{Devoir surveillé}}
\lohead[NOM :\\Prénom :]{NOM :\\Prénom :}
2019-11-02 09:54:37 +00:00
\rohead[Le \@date\\]{Le \@date\\}
\cehead[]{}
\lehead[]{}
\rehead[]{}
}{
\ifthenelse{ \equal{\type}{dm} }{
\cohead[\textbf{MATHÉMATIQUES}\\\textbf{Devoir maison}]
{\textbf{MATHÉMATIQUES}\\\textbf{Devoir maison}}
\lohead[NOM :\\Prénom :]{NOM :\\Prénom :}
2019-11-02 09:54:37 +00:00
\rohead[\@date\\]{\@date\\}
\cehead[]{}
\lehead[]{}
\rehead[]{}
}{
\ifthenelse{ \equal{\type}{int} }{
\cohead[\textbf{MATHÉMATIQUES}\\\textbf{Interrogation}]
{\textbf{MATHÉMATIQUES}\\\textbf{Interrogation}}
\lohead[NOM :\\Prénom :]{NOM :\\Prénom :}
2019-11-02 09:54:37 +00:00
\rohead[\@date\\]{\@date\\}
\cehead[]{}
\lehead[]{}
\rehead[]{}
}{
% nothing
}
}
}
\cofoot*{}
\pagestyle{scrheadings}
\setkomafont{pagehead}{\normalfont}
\setkomafont{pagefoot}{\normalfont}
% paths
\graphicspath{{images/}}
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
2019-05-23 18:08:53 +00:00
% COMMANDS
%
%
2019-05-23 18:08:53 +00:00
%% new lists definitions
%%
\newlist{questions}{enumerate}{2}
\setlist[questions]{labelindent=0em, leftmargin=*, labelsep=0.5em}
\setlist[questions, 1]{label=\textbf{\arabic*.}}
\setlist[questions, 2]{label=\textbf{\alph*)}}
\newlist{questionsl}{enumerate*}{1}
\setlist*[questionsl]{label=\textbf{\alph*)}}
\setlist[enumerate, 1]{label=\textbf{\arabic*.}, leftmargin=*, labelsep=.5em}
\setlist[enumerate, 2]{label=\textbf{\alph*)}}
\setlist[description]{font=\sffamily\bfseries}
2019-05-23 18:08:53 +00:00
%% \displayturnpage
%% print a "Please, turn the page" at bottom right of the page.
%%
\NewDocumentCommand \displayturnpage{ }{
\rofoot[\textit{Tourner la page, svp} \faHandORight]
{\textit{Tourner la page, svp} \faHandORight}
}
2019-05-23 18:08:53 +00:00
%% \displaydirectives
%% print the main directives of the test.
%%
\NewDocumentCommand \displaydirectives{ }{
2019-05-23 18:08:53 +00:00
\begin{center}
\fbox{
\parbox{.9\textwidth}{
2019-12-15 18:46:43 +00:00
\small
2019-05-23 18:08:53 +00:00
\centering
Le prêt de matériel et de documents personnels sont interdits.\\
Le barème est donné à titre indicatif : il pourra être légèrement différent.\\
Les exercices peuvent être traités dans nimporte quel ordre mais attention à bien reporter les numéros des questions.\\
Il sera tenu compte dans la notation du soin apporté à la copie et de la clarté des raisonnements.\\
Si présent, le symbole \faPencil\ indique que tout ou partie de l'exercice est à réaliser sur lénoncé.\\
Sauf mention contraire, toutes les questions sont à justifier rigoureusement.
}
}
2019-05-23 18:08:53 +00:00
\end{center}
2019-05-23 18:08:53 +00:00
\vspace{.2cm}
}
2019-05-23 18:08:53 +00:00
%% text customization
%%
\NewDocumentCommand \devprintconc{ }{
\underline{Conclusion :}
}
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2019-05-23 18:08:53 +00:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
2019-05-23 18:08:53 +00:00
% AMSTHM
%
%
2019-05-23 18:08:53 +00:00
\input{amsthm.tex}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\makeatother