cours-m1-eea/cours.cls

224 lines
6.6 KiB
OpenEdge ABL
Raw Normal View History

2019-01-09 20:45:49 +01:00
\NeedsTeXFormat{LaTeX2e}
2019-03-05 15:37:38 +01:00
\ProvidesClass{../../cours}[2019/01/09 LaTeX class for Lessons]
2019-01-09 20:45:49 +01:00
\makeatletter
% Base Class
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
2019-04-08 12:08:08 +02:00
% Custom arguments
\def\teacher#1{\gdef\@teacher{#1}}
\def\module#1{\gdef\@module{#1}}
2019-01-09 20:45:49 +01:00
\ProcessOptions\relax
% Main packages
\LoadClass[12pt,a4paper,french,titlepage]{book}
\RequirePackage[french]{babel} % pour ecrire en francais
\RequirePackage[left=2.00cm, right=2.00cm, top=3.00cm, bottom=3.00cm]{geometry} % la mise en page
% Packages
\RequirePackage[utf8]{inputenc} % encodage
2019-03-06 08:26:14 +01:00
\RequirePackage[T1]{fontenc}
2019-01-09 20:45:49 +01:00
\RequirePackage{fancyhdr} % la mise en page
\RequirePackage[dvipsnames,x11names]{xcolor} % Un peu de couleur !
\RequirePackage{float}
\RequirePackage{subcaption}
\RequirePackage{subfiles}
\RequirePackage{hyperref}
\hypersetup{
unicode=true, % non-Latin characters in Acrobats bookmarks
pdftoolbar=true, % show Acrobats toolbar?
pdfmenubar=true, % show Acrobats menu?
pdffitwindow=false, % window fit to page when opened
pdfstartview={FitH}, % fits the width of the page to the window
pdftitle=\@title, % title
pdfauthor=\@author, % author
colorlinks=true, % false: boxed links; true: colored links
linkcolor=black, % color of internal links
citecolor=OliveGreen, % color of links to bibliography
filecolor=magenta, % color of file links
urlcolor=BlueViolet % color of external links
}
\RequirePackage{tikz}
\usetikzlibrary{fit}
\usetikzlibrary{positioning}
2019-04-08 12:08:08 +02:00
\RequirePackage{schemabloc}
\RequirePackage[european,cuteinductors,siunitx,straightvoltages]{circuitikz}
\tikzset{every picture/.style={execute at begin picture={\shorthandoff{:;!?};}}}
\usetikzlibrary{positioning, fit, calc}
\RequirePackage{pgfplots}
\RequirePackage{mathtools}
\RequirePackage{amsfonts}
\RequirePackage{mathrsfs}
\RequirePackage{amssymb}
\RequirePackage[section]{placeins} % Oblige a placer toutes les figures avant de passer a la section suivante
2019-01-10 17:31:08 +01:00
2019-04-03 08:58:05 +02:00
\RequirePackage{fancyhdr}
\pagestyle{fancy}
\fancyhf {}
2019-01-10 17:31:08 +01:00
2019-04-08 12:08:08 +02:00
\renewcommand{\chaptermark}[1]{\markboth{\bsc{\@chapapp~\thechapter{} :} #1}{}}
2019-04-03 08:58:05 +02:00
\renewcommand{\sectionmark}[1]{\markright{\thesection.{} #1}}
\renewcommand{\headrulewidth}{1pt} %Epaisseur de la ligne.
\renewcommand{\footrulewidth}{1pt} %Epaisseur de la ligne.
2019-04-08 12:08:08 +02:00
\fancyhead[LE]{\textsl{\leftmark}}
\fancyhead[LO]{{}}
\fancyhead[RO]{\textsl{\rightmark}}
\fancyhead[RE]{{}}
\fancyfoot[C]{\textit{\thepage}}
\fancyfoot[L]{\textsl{\@module}}
\fancyfoot[R]{M1 IST-E3A}
2019-01-10 17:31:08 +01:00
2019-04-08 12:08:08 +02:00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2019-01-09 20:45:49 +01:00
%%%%%%%%%%%%%%%%%%% Custom title Page %%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2019-01-23 16:21:21 +01:00
\RequirePackage{setspace}
2019-01-09 20:45:49 +01:00
\renewcommand{\maketitle}{%
\begin{titlepage}
2019-03-13 11:14:13 +01:00
\centering
\vspace*{-2cm}
\includegraphics[width=\linewidth]{../../img/bandeau-master-e3a}\\
\vspace{1cm}
2019-01-09 20:45:49 +01:00
{\huge \textsc{M1 E3A - Voie André Ampère}}
\vspace{1cm}
% \includegraphics[height=4cm]{Saphire} \\
\vfill
\@ifundefined{@module}
{}
{%
2019-01-23 16:21:21 +01:00
\baselineskip=2\baselineskip
2019-04-08 12:08:08 +02:00
{\Huge \textbf{\textsc{\@module}}}\\
2019-01-28 13:09:26 +01:00
%\baselineskip=0.5\baselineskip
2019-03-13 11:14:13 +01:00
}\vfill
2019-01-09 20:45:49 +01:00
\@ifundefined{@title}
{}
2019-04-08 12:08:08 +02:00
{%
\baselineskip=2\baselineskip
{\Huge \textbf{\textsc{\@title}}}\\
%\baselineskip=0.5\baselineskip
}\vfill
{\LARGE\textbf{Note de Cours}}
2019-01-09 20:45:49 +01:00
\vfill
2019-02-04 08:52:49 +01:00
\@ifundefined{@date}{}{%
2019-01-09 20:45:49 +01:00
{\LARGE Version du \@date}
2019-03-13 11:14:13 +01:00
\vfill}
\@ifundefined{@author}
{}{%
{\Large
2019-03-14 19:30:54 +01:00
\begin{minipage}[t]{0.5\linewidth}
\raggedright
\underline{Un cours de:} \\
\textsc{\@teacher}
\end{minipage}\hfill
\begin{minipage}[t]{0.5\linewidth}
\raggedleft
\underline{Rédigé et amélioré par:} \\
\textsc{\@author}
\end{minipage}
}}\\
2019-03-13 11:14:13 +01:00
\vspace{1cm}
\includegraphics[width=6cm]{../../img/ENSPS}
\hfill
\includegraphics[width=6cm]{../../img/UPS}\\
\vspace{0.5cm}
\includegraphics[width=\linewidth]{../../img/bandeau-eea}
2019-01-09 20:45:49 +01:00
\end{titlepage}}
% pas de début de section dans la moitié inférieure d'une page
\RequirePackage{needspace}
\renewcommand{\section}{
\needspace{0.3\textheight}%
\@startsection {section}{1}{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
{\reset@font\Large\bfseries}}
\raggedbottom
\setcounter{secnumdepth}{3}
\renewcommand{\thesection}{\arabic{section}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%% BOITES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{tikz,environ}
\tikzstyle{mybox} = [draw=black, very thick,
rectangle, inner sep=10pt, inner ysep=20pt]
\tikzstyle{fancytitle} = [draw=black, fill=white, text=black]
\NewEnviron{defin}{\par
\begin{center}
\begin{tikzpicture}
\node [mybox] (box){%
\begin{minipage}{0.8\textwidth}
\BODY
\end{minipage} };
\node[fancytitle, right=10pt] at (box.north west) {\textbf{Définition}};
\end{tikzpicture}\end{center}\par
}
% \NewEnviron{thm}{\par
% \begin{center}
% \begin{tikzpicture}
% \node [mybox] (box){%
% \begin{minipage}{0.8\textwidth}
% \BODY
% \end{minipage} };
% \node[fancytitle, right=10pt] at (box.north west) {\textbf{Théorème}};
% \end{tikzpicture}\end{center}\par
%}
\RequirePackage{thmbox}
\RequirePackage{xparse}
\NewDocumentEnvironment{prop}{o}{%
\begin{center}\begin{minipage}{0.8\textwidth}
\thmbox[M]{\textbf{Proposition \IfNoValueTF{#1}{}{\em (#1)}}}%
%\hspace*{-1.5em}%
}
{%
\endthmbox\vspace*{.75ex}\end{minipage}\end{center}%
}
\NewDocumentEnvironment{thm}{o}{%
\begin{center}\begin{minipage}{0.8\textwidth}
\thmbox[M]{\textbf{Théorème \IfNoValueTF{#1}{}{\em (#1)}}}%
%\hspace*{-1.5em}%
}
{%
\endthmbox\vspace*{.75ex}\end{minipage}\end{center}%
}
\NewDocumentEnvironment{corol}{o}{%
\begin{center}\begin{minipage}{0.8\textwidth}
\thmbox[M]{\textbf{Corollaire \IfNoValueTF{#1}{}{\em (#1)}}}%
%\hspace*{-1.5em}%
}
{%
\endthmbox\vspace*{.75ex}\end{minipage}\end{center}%
}
2019-01-28 13:09:26 +01:00
\NewDocumentEnvironment{lemme}{o}{%
2019-01-09 20:45:49 +01:00
\begin{center}\begin{minipage}{0.8\textwidth}
2019-01-28 13:09:26 +01:00
\thmbox[M]{\textbf{Lemme \IfNoValueTF{#1}{}{\em (#1)}}}%
2019-01-09 20:45:49 +01:00
%\hspace*{-1.5em}%
}
{%
\endthmbox\vspace*{.75ex}\end{minipage}\end{center}%
}
2019-03-14 20:46:23 +01:00
\newenvironment{rem}{\par\medbreak
\noindent\textbf{Remarque: }\nopagebreak}{\medbreak\par}
\newenvironment{exemple}[1][\unskip]{\par\medbreak\noindent\textbf{Exemple: }\textit{#1} \nopagebreak}{\bigbreak\par}
2019-01-09 20:45:49 +01:00
\newenvironment{preuve}{\par\textit{Démonstration: }\nopagebreak}{\par}