Commit 6cd093ff authored by Aurelien Pascal's avatar Aurelien Pascal

macros et chamanisme

parent adc5e915
......@@ -39,7 +39,7 @@ Code :
* [/] SIUnitx : le paquet du physicien
* [/] Des références d'articles avec BibTeX
* [V] Gérer un gros document en le découpant en plusieurs parties
* [...] Un soupçon de programmation LaTeX
* [V] Un soupçon de programmation LaTeX
4. Des graphiques vectoriels avec le duo PGF/TIKZ
* [/] Introduction
* [/] Des figures simples
......
......@@ -45,6 +45,8 @@
\rhead{2016}
%-----DOCUMENT-----
\includeonly{parts/intro-master, parts/survie-master, parts/avance-master}
\begin{document}
\pagenumbering{gobble}
\let\orilabel\label %sauvegarde la commande label dans orilabel pour la restaurer dans showexpl
......@@ -114,6 +116,7 @@ Ce document est mis à disposition selon les termes de la Licence Creative Commo
\newpage
\pagenumbering{arabic}
% Partie I : Introduction
\include{parts/intro-master}
......
......@@ -69,6 +69,8 @@ Cette partie présente des techniques permettant un réglage plus fin des tablea
\subsection{Aérer son tableau}
\label{subsec:aerertab}
Si votre tableau contient des données qui prennent une place verticale conséquente, comme des fractions, vous pourrez avoir envie de l'aérer pour en augmenter la lisibilité. La hauteur des lignes se modifie à l'aide de \verb=\renewcommand{\arraystretch}{nouvelle valeur}=.\\
Cette modification étant une redéfinition de l'option globale \verb=\arraystretch=, elle s'appliquera à tous les tableaux qui la suivront. Si vous voulez revenir à un tableau normal, il faudra réutiliser la commande avec la valeur par défaut qui est $1.0$.\\
Voici un exemple :
......@@ -710,8 +712,10 @@ Dans cette section nous allons donc voir comment créer des commandes et des env
\subsection{Créer ses macros : la syntaxe}
\label{subsec:macros}
Pour créer une commande il faut utiliser la syntaxe suivante :\\
\verb|\newcommand{\<nom de commande>}[<nombre d'arguments>]{<action>}|\\
\verb|\newcommand{\<nom de commande>}[<nombre d'arguments>]{<action>}|\footnote{vous rencontrerez parfois la commande \verb=\def=, qui a la même utilité. Néanmoins son usage est déconseillée, \verb=\def= est une commande \TeX{} primitive qui ne possède pas les sécurités introduites par \LaTeX{} avec \verb=\newcommand= }\\
Pour comprendre cette syntaxe voyons quelques exemples simples.
Le cas le plus simple est celui d'une commande sans arguments, où vous ne faites que créer un \ {alias} :
......@@ -730,6 +734,8 @@ Maintenant considérons l'exemple d'une commande avec deux arguments. L'appel au
\alimentation{fruits}{1.5}
\end{LTXexample}
Une petite remarque s'impose : certains caractères ne sont pas autorisés par \LaTeX{} dans les noms de commande, comme par exemple l'arobase @. Nous expliquerons pourquoi au \ref{subsec:atletter}.
\subsection{Le cas des mathématiques : l'exemple de la notation \textit{braket} de Dirac}
\label{subsubsec:macrosdirac}
......@@ -761,7 +767,27 @@ Il reste à définir définir le \textit{produit scalaire hermitien} et les \tex
\psh{\psi}{\phi} \\ \mean{A}
\end{LTXexample}
\subsection{Modifier une macro existante}
Le principe est le même que pour la création de commandes (voir \ref{subsec:macros}), mais la syntaxe à utiliser est :\\
\verb|\renewcommand{\<nom de la commande>}[<nombre d'arguments>]{<action>}|
Nous avons déjà rencontré plusieurs fois cette technique au cours de ce document, voir \ref{subsec:numcompteur} et \ref{subsec:aerertab} pour des exemples.
\subsection{Modifier des macros protégées}
\label{subsec:atletter}
Certaines macros internes de \LaTeX{}\footnote{ainsi que certaines macros définies dans des extensions} sont protégées pour éviter à l'utilisateur non avertit de les modifier.\\
N'utilisez donc pas ce qui va être expliqué dans cette section avant d'avoir atteint le niveau de maîtrise chaman avancé.
Les commandes protégées se reconnaissent facilement : elles utilisent le caractère arobase @. Nous avons expliqué au \ref{subsec:macros} que le caractère @ est interdit dans les noms de macros, ce n'est donc pas tout à fait vrai : seul l'utilisateur n'a pas le droit d'utiliser ce caractère, et il peut quand même l'utiliser à condition d'employer deux commandes assez particulières : \verb=\makeatletter= et \verb=\makeatother=\footnote{a titre culturel : ces commandes modifient le \textit{catcode} (ou code de catégorie) du caractère @}.
Pour modifier une commande protégée il faut donc utiliser le schéma suivant : \begin{enumerate}
\item rendre la caractère @ accessibles aux noms de macros avec \verb=\makeatletter=
\item modifier la commande désirée
\item verrouiller à nouveau le caractère @ avec \verb=\makeatother=
\end{enumerate}
%%Ecrire de la MQ
%\newcommand{\ket}[1]{\ensuremath{|#1\rangle}\xspace} %\ket{n_i}. \hat{} pour avoir un opérateur
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment