%%%
%%%
%%% Extensions : commun.sty
%%% Version : 1.0
%%% Date : 03/05/15
%%%
%%% Version : 2.0
%%% Date : 11/08/16
%%% Mods : Change some packages call to be compatible with LuaLaTeX
%%%
%%% Auteur : Jeff LANCE
%%%
%%%

\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{commun}[2015/05/03 Extensions et definitions globales, v2.0]


%-- extensions
% programmation
\RequirePackage{xifthen}
\RequirePackage{ifmtarg}
\RequirePackage{ifpdf}
\RequirePackage{xstring}
\RequirePackage{multido}
\RequirePackage{xparse}
\RequirePackage{etoolbox}
\RequirePackage{ifluatex}
\RequirePackage{import}

% langue
\ifluatex
	\RequirePackage{polyglossia}					% => babel
	\setdefaultlanguage{french}						% => inputenc
	\RequirePackage{luatextra}						% charge fontspec => fontenc
	\defaultfontfeatures{Ligatures=TeX}
\else
	\RequirePackage[francais]{babel}			% => polyglossia
	\RequirePackage[utf8]{inputenc}				% => fontspec
	\RequirePackage[T1]{fontenc}					% => fontspec
\fi

% polices
\RequirePackage{libertine}
\RequirePackage{pifont}
\RequirePackage{fontawesome}
\RequirePackage{eurosym}
\RequirePackage{bbding}

% couleur, dessin
\ifluatex
	\RequirePackage{luacolor}
\fi
\RequirePackage{xcolor}
\RequirePackage[framemethod=tikz]{mdframed}
\RequirePackage{graphicx}

% maths
\RequirePackage{amsmath}
\RequirePackage{amssymb}
\RequirePackage{tkz-euclide}
\usetikzlibrary{shadows}
\RequirePackage{calc}
\RequirePackage{pgfplots}
\RequirePackage{siunitx}
\RequirePackage{asymptote}
\RequirePackage{mathrsfs}

% tableau
\RequirePackage{array}
\RequirePackage{tabularx}
\RequirePackage{multicol}
\RequirePackage{boldline}

% mise en page
\RequirePackage{varwidth}
\RequirePackage{adjustbox}
%-- %

\makeatletter

%
% \newtoggle{cours}
% \newtoggle{calculmental}
% \newtoggle{cours_beamer}
%



%-- Macros personnelles % dans un tableau : commandes d'alignement du contenu dans la colonne de largeur <largeur>.
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
%% lh{largeur} : gauche - haut
%\newcolumntype{lh}[1]{>{\raggedright}p{#1}}
%% ch{largeur} : centre - haut
%\newcolumntype{ch}[1]{>{\centering\arraybackslash}p{#1}}
%% rh{largeur} : droite - haut
%\newcolumntype{rh}[1]{>{\raggedleft}p{#1}}
%% lc{largeur} : gauche - centre
%\newcolumntype{lc}[1]{>{\raggedright}m{#1}}
%% cc{largeur} : centre - centre
% \newcolumntype{M}[1]{ >{\centering\arraybackslash} m{#1} }
%% rc{largeur} : droite - centre
%\newcolumntype{rc}[1]{>{\raggedleft}m{#1}}
%% lb{largeur} : gauche - bas
%\newcolumntype{lb}[1]{>{\raggedright}b{#1}}
%% cb{largeur} : centre - bas
%\newcolumntype{cb}[1]{>{\centering}b{#1}}
%% rb{largeur} : droite - bas
%\newcolumntype{rb}[1]{>{\raggedleft}b{#1}}

% itemization dans tableau
\newcommand{\tabitem}{~~\llap{\textbullet}~~}

% barrer du texte
\newcommand\hcancel[2][black]{
	\setbox0=\hbox{$#2$}%
	\rlap{\raisebox{.45\ht0}{\textcolor{#1}{\rule{\wd0}{2pt}}}}#2
}
% \NewDocumentCommand \hcancel { O{black} O{1pt} } {
% 	\setbox0=\hbox{$#3$}%
% 	\rlap{\raisebox{.45\ht0}{\textcolor{#1}{\rule{\wd0}{#2}}}} {#3}
% }

% polices
\newfontfamily\Comic[Ligatures=TeX]{comicsansms}
\newfontfamily\Fingerpaint[Ligatures=TeX]{fingerpaint}
\newfontfamily\Annie[Ligatures=TeX]{annieuseyourtelescope}
\newfontfamily\Architects[Ligatures=TeX]{architectsdaughter}
\newfontfamily\Julee[Ligatures=TeX]{julee}
\newfontfamily\Delius[Ligatures=TeX]{delius}
\newfontfamily\DeliusSC[Ligatures=TeX]{deliusswashcaps}
% tentative pour une commande généraliste
% \NewDocumentCommand \setFont { O{\familydefault} O{\encodingdefault} }{%
% 	\fontencoding{#2}%
% 	\fontfamily{#1}%
% 	\selectfont
% }

% make circled text
\newcommand*\circled[1]{
  \tikz[baseline=(char.base)]{
    \node[shape=circle,draw,inner sep=2pt] (char) {#1};
  }
}

% text ghosting
\NewDocumentCommand \ghost { } {%
    \color{white}
}

% text redding
\NewDocumentCommand \red { } {%
    \color{red}
}
%--%


% Macros modifiées
% - %

\makeatother
