summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-01-10 21:41:22 +0000
committerKarl Berry <karl@freefriends.org>2020-01-10 21:41:22 +0000
commit6e40e8d9ab2cae35317a09775a62ec82f295d368 (patch)
tree53cb2ded0d6b85201067d75172d208687cd413dd /Master/texmf-dist/doc/latex
parentf53dd329bdfa3a20947143b0ab7fc79dd58127dd (diff)
nicematrix (10jan20)
git-svn-id: svn://tug.org/texlive/trunk@53363 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex')
-rw-r--r--Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.pdfbin315057 -> 317090 bytes
-rw-r--r--Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.tex92
-rw-r--r--Master/texmf-dist/doc/latex/nicematrix/nicematrix.pdfbin686625 -> 699309 bytes
3 files changed, 76 insertions, 16 deletions
diff --git a/Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.pdf b/Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.pdf
index 02b227ed0dd..ccc4611524c 100644
--- a/Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.pdf
+++ b/Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.tex b/Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.tex
index 883a1acf69b..1035a9bab4a 100644
--- a/Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.tex
+++ b/Master/texmf-dist/doc/latex/nicematrix/nicematrix-french.tex
@@ -560,6 +560,8 @@ $\begin{pmatrix}
\section{Les nœuds Tikz créés par l'extension nicematrix}
+\label{name}
+
L'extension \pkg{nicematrix} crée un nœud Tikz pour chaque case du tableau considéré. Ces nœuds sont utilisés pour
tracer les lignes en pointillés entre les cases du tableau. Toutefois, l'utilisateur peut aussi utiliser
directement ces nœuds. On commence par donner un nom au tableau (avec l'option |name|). Cela étant fait, les nœuds
@@ -600,17 +602,18 @@ a & a & a
\bigskip
-En fait, l'extension \pkg{nicematrix} peut créer des nœuds supplémentaires (\emph{extra nodes} en anglais). Ces
-nouveaux nœuds sont créés si l'option |create-extra-nodes| est utilisée. Il y a deux séries de nœuds
-supplémentaires : les «nœuds moyens» (\emph{medium nodes} en anglais) et les «nœuds larges» (\emph{large nodes} en
-anglais).
+En fait, l'extension \pkg{nicematrix} peut créer deux séries de nœuds supplémentaires (\emph{extra nodes} en
+anglais) : les «nœuds moyens» (\emph{medium nodes} en anglais) et les «nœuds larges» (\emph{large nodes} en
+anglais). Les premiers sont créés avec l'option |create-medium-nodes| et les seconds avec l'option
+|create-large-nodes|.\footnote{Il existe aussi l'option |create-extra-nodes| qui est un alias pour la conjonction
+de |create-medium-nodes| et |create-large-nodes|.}
\medskip
Les noms des «nœuds moyens» s'obtiennent en ajoutant le suffixe «|-medium|» au nom des nœuds normaux. Dans
l'exemple suivant, on a surligné tous les «nœuds moyens». Nous considérons que cet exemple se suffit à lui-même
comme définition de ces nœuds.
\[\begin{pNiceMatrix}[
- create-extra-nodes,
+ create-medium-nodes,
code-after = {\begin{tikzpicture}
[every node/.style = {fill = red!15,
blend mode = multiply,
@@ -639,7 +642,7 @@ définition de ces nœuds.\footnote{Il n'y a pas de «nœuds larges» créés da
(pour ces lignes et colonnes, voir p.~\pageref{exterior}).}
\[\begin{pNiceMatrix}[
- create-extra-nodes,
+ create-large-nodes,
code-after = {\begin{tikzpicture}
[every node/.style = {blend mode = multiply,
inner sep = -\pgflinewidth/2},
@@ -669,7 +672,7 @@ dernière colonne. Dans l'exemple suivant, nous avons utilisé les options |left
aucune valeur n'est donnée, c'est la valeur par défaut qui est utilisée et elle est égale à |\arraycolsep| (par
défaut, 5~pt).Il existe aussi une option |margin| pour fixer à la fois |left-margin| et |right-margin|.}
\[\begin{pNiceMatrix}[
- create-extra-nodes,left-margin,right-margin,
+ create-large-nodes,left-margin,right-margin,
code-after = {\begin{tikzpicture}
[every node/.style = {blend mode = multiply,
inner sep = -\pgflinewidth/2},
@@ -694,7 +697,7 @@ Il est aussi possible d'ajouter de l'espace sur les côtés du tableau avec les
|extra-right-margin|. Ces marges ne sont pas incorporées dans les «nœuds larges». Dans l'exemple suivant, nous
avons utilisé |extra-left-margin| et |extra-right-margin| avec la valeur $3$~pt.
\[\begin{pNiceMatrix}[
- create-extra-nodes,left-margin,right-margin,extra-right-margin=3pt,extra-left-margin=3pt,
+ create-large-nodes,left-margin,right-margin,extra-right-margin=3pt,extra-left-margin=3pt,
code-after = {\begin{tikzpicture}
[every node/.style = {blend mode = multiply,
inner sep = -\pgflinewidth/2},
@@ -718,7 +721,7 @@ a & a & a
Dans le cas présent, si on veut un contrôle sur la hauteur des rangées, on peut ajouter un |\strut| dans chaque
rangée du tableau.
\[\begin{pNiceMatrix}[
- create-extra-nodes,left-margin,right-margin,extra-right-margin=3pt,extra-left-margin=3pt,
+ create-large-nodes,left-margin,right-margin,extra-right-margin=3pt,extra-left-margin=3pt,
code-after = {\begin{tikzpicture}
[every node/.style = {blend mode = multiply,
inner sep = -\pgflinewidth/2},
@@ -956,6 +959,9 @@ tableau) ne s'étend pas dans les rangées extérieures.\footnote{Ce dernier poi
sont pas parfaitement compatibles car \pkg{arydshln} redéfinit beaucoup de structures internes à \pkg{array}. Par
ailleurs, si on veut vraiment un filet qui s'étende dans la première et la dernière rangée, on peut utiliser
|!{\vline}| dans le préambule à la place de \verb+|+.}
+
+Si on veut définir de nouveaux spécificateurs de colonnes pour des filets (par exemple plus épais), on aura
+peut-être intérêt à utiliser la commande |\OnlyMainNiceMatrix| décrite p.~\pageref{OnlyMainNiceMatrix}.
\item Sans surprise, une éventuelle option |columns-width| (décrite p.~\pageref{width}) ne s'applique pas à la
«première colonne» ni à la «dernière colonne».
\item Pour des raisons techniques, il n'est pas possible d'utiliser l'option de la commande |\\| après la
@@ -1409,6 +1415,47 @@ En revanche, les colonnes |d| de l'extension \pkg{dcolumn} ne sont pas prises en
\section{Remarques techniques}
+\subsection{Pour définir de nouveaux types de colonnes}
+
+\label{OnlyMainNiceMatrix}
+
+L'extension \pkg{nicematrix} fournit la commande |\OnlyMainNiceMatrix| qui est destinée à être utilisée dans des
+définitions de nouveaux types de colonnes. Son argument n'est exécuté que si on se place dans la partie principale
+du tableau, c'est-à-dire que l'on n'est pas dans l'une des éventuelles rangées extérieures.
+
+Par exemple, si on souhaite définir un type de colonne |?| pour tracer un trait fort d'épaisseur 1~pt, on pourra
+écrire :
+\begin{Verbatim}
+\newcolumntype{?}{!{\OnlyMainNiceMatrix{\vrule width 1 pt}}}
+\end{Verbatim}
+
+Le trait fort correspondant ne s'étendra pas dans les rangées extérieures :
+
+\medskip
+\begin{scope}
+\newcolumntype{?}{!{\OnlyMainNiceMatrix{\vrule width 1 pt}}}
+
+\begin{BVerbatim}[baseline = c, boxwidth = 10.5cm]
+$\begin{pNiceArray}{CC?CC}[first-row,last-row]
+C_1 & C_2 & C_3 & C_4 \\
+a & b & c & d \\
+e & f & g & h \\
+C_1 & C_2 & C_3 & C_4
+\end{pNiceArray}$
+\end{BVerbatim}
+$\begin{pNiceArray}{CC?CC}[first-row,last-row]
+C_1 & C_2 & C_3 & C_4 \\
+a & b & c & d \\
+e & f & g & h \\
+C_1 & C_2 & C_3 & C_4
+\end{pNiceArray}$
+\end{scope}
+
+\medskip
+Le spécificateur |?| ainsi créé est aussi utilisable dans les environnements |{array}| (de \pkg{array}) et, dans ce
+cas, |\OnlyMainNiceMatrix| est sans effet.
+
+
\subsection{Intersection des lignes pointillées}
Depuis la version 3.1 de \pkg{nicematrix}, les lignes en pointillées créées par |\Cdots|, |\Ldots|, |\Vdots|, etc.
@@ -1445,6 +1492,20 @@ $\begin{pNiceMatrix}[nullify-dots]
\end{pNiceMatrix}$
+\subsection{Le nom des nœuds Tikz créés par nicematrix}
+
+Les nœuds Tikz créés par \pkg{nicematrix} peuvent être utilisés hors des environnements de \pkg{nicematrix} après
+avoir nommé l'environnement concerné avec l'option |name| (cf. p.~\pageref{name}). Il s'agit là de la méthode
+conseillée mais on décrit néanmoins maintenant le nom Tikz interne de ces nœuds.
+
+Les environnements créés par \pkg{nicematrix} sont numérotés par un compteur global interne. La commande
+|\NiceMatrixLastEnv| donne le numéro du dernier de ces environnements (pour LaTeX, il s'agit d'une commande —
+complètement développable — et non d'un compteur).
+
+Si l'environnement concerné a le numéro $n$, alors le nœud de la rangée~$i$ et de la colonne~$j$ a pour nom
+|nm-|$n$|-|$i$|-|$j$. Les noms des nœuds |medium| et |large| correspondants s'obtiennent suffixant par |-medium| et
+|-large|.
+
\subsection{Lignes diagonales}
Par défaut, toutes les lignes diagonales\footnote{On parle des lignes créées par |\Ddots| et non des lignes créées
@@ -1948,7 +2009,7 @@ doit fixer |inner sep = -\pgflinewidth/2|.
\begin{Verbatim}
$\begin{pNiceArray}{>{\strut}CCCC}%
- [create-extra-nodes,margin,extra-margin=2pt,
+ [create-large-nodes,margin,extra-margin=2pt,
code-after = {\begin{tikzpicture}
[~emphase#name suffix = -large@,
every node/.style = {draw,
@@ -1967,7 +2028,7 @@ a_{41} & a_{42} & a_{43} & a_{44}
\[\begin{pNiceArray}{>{\strut}CCCC}[
- create-extra-nodes,margin,extra-margin=2pt,
+ create-large-nodes,margin,extra-margin=2pt,
code-after = {\begin{tikzpicture}[name suffix = -large,
every node/.style = {draw,
inner sep = -\pgflinewidth/2}]
@@ -2050,7 +2111,7 @@ On considère maintenant la matrice suivante que l'on a appelée |exemple|.
\medskip
\begin{Verbatim}
-$\begin{pNiceArray}{CCC}[~emphase#name=exemple@,create-extra-nodes,last-col]
+$\begin{pNiceArray}{CCC}[~emphase#name=exemple@,last-col,create-medium-nodes]
a & a + b & a + b + c & L_1 \\
a & a & a + b & L_2 \\
a & a & a & L_3
@@ -2097,7 +2158,6 @@ On obtient la matrice suivante.
\[\begin{pNiceArray}{CCC}[
last-col,
- create-extra-nodes,
code-after = {\begin{tikzpicture}[every node/.style = {fill = red!15,
blend mode = multiply,
inner sep = 0pt}]
@@ -2126,7 +2186,7 @@ On obtient la matrice suivante.
\[\begin{pNiceArray}{CCC}[
last-col,
- create-extra-nodes,
+ create-medium-nodes,
code-after = {\begin{tikzpicture}[every node/.style = {fill = red!15,
blend mode = multiply,
inner sep = 0pt},
@@ -2146,7 +2206,7 @@ a & a & a & L_3
Dans l'exemple suivant, on utilise les «nœuds larges» pour surligner une zone de la matrice.\par\nobreak
\begin{Verbatim}
\left(\,\begin{NiceArray}{>{\strut}CCCC}%
- [create-extra-nodes,left-margin,right-margin,
+ [create-large-nodes,left-margin,right-margin,
code-after = {\tikz \path [~emphase#name suffix = -large@,
fill = red!15,
blend mode = multiply]
@@ -2164,7 +2224,7 @@ A_{41} & A_{42} & A_{43} & A_{44}
\end{Verbatim}
\[\left(\,\begin{NiceArray}{>{\strut}CCCC}[
- create-extra-nodes,left-margin,right-margin,
+ create-large-nodes,left-margin,right-margin,
code-after = {\tikz \path [name suffix = -large,
fill = red!15,
blend mode = multiply]
diff --git a/Master/texmf-dist/doc/latex/nicematrix/nicematrix.pdf b/Master/texmf-dist/doc/latex/nicematrix/nicematrix.pdf
index da9bd49dc66..01f2e3261be 100644
--- a/Master/texmf-dist/doc/latex/nicematrix/nicematrix.pdf
+++ b/Master/texmf-dist/doc/latex/nicematrix/nicematrix.pdf
Binary files differ