diff options
author | Karl Berry <karl@freefriends.org> | 2019-07-03 21:39:58 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-07-03 21:39:58 +0000 |
commit | 34dea586d0717ac658f0559bcee99ecf547afbad (patch) | |
tree | ec8d15f99c90363ecdae3176766b9a7bb3550616 /Master/texmf-dist/source/latex | |
parent | 6d511b03036f0b15e6182a5c3718d6dd3309abae (diff) |
tablvar (3jul19)
git-svn-id: svn://tug.org/texlive/trunk@51543 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r-- | Master/texmf-dist/source/latex/tablvar/tablvar.dtx | 151 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/tablvar/tablvar.ins | 4 |
2 files changed, 78 insertions, 77 deletions
diff --git a/Master/texmf-dist/source/latex/tablvar/tablvar.dtx b/Master/texmf-dist/source/latex/tablvar/tablvar.dtx index ae376f286c2..28e8f1ead0f 100644 --- a/Master/texmf-dist/source/latex/tablvar/tablvar.dtx +++ b/Master/texmf-dist/source/latex/tablvar/tablvar.dtx @@ -1,12 +1,6 @@ % \iffalse meta-comment % -% Copyright (C) 2018 by Antoine Missier <prenom.nom@ac-toulouse.fr> -% Version 0.1 : 05/01/2014 -% Version 0.2 : 11/11/2014 ajouté option tikz -% Version 0.3 : 07/12/2014 ajouté environnement tablvar* -% Version 1.0 : 11/11/2018 macro \bblim, modif macros \barre et \ZIh, -% création des fichiers dtx et ins -% Version 1.1 : 12/04/2019 reprise README.md, \tvloop -> \varloop +% Copyright (C) 2018-2019 by Antoine Missier <antoine.missier@ac-toulouse.fr> % % This file may be distributed and/or modified under the conditions of % the LaTeX Project Public License, either version 1.3 of this license @@ -17,7 +11,7 @@ % % and version 1.3 or later is part of all distributions of LaTeX version % 2005/12/01 or later. -% Pour produire correctement l'index compiler avec +% To get the index compile with % makeindex -s gind.ist -o tablvar.ind tablvar.idx % \fi % @@ -28,7 +22,7 @@ %<*package> \NeedsTeXFormat{LaTeX2e}[2005/12/01] \ProvidesPackage{tablvar} - [22/04/2019 v1.1 .dtx tablvar file] + [2019/07/01 v1.2 .dtx tablvar file] %</package> %<*driver> \documentclass{ltxdoc} @@ -51,6 +45,7 @@ pdfsubject={LaTeX package}, pdfauthor={Antoine Missier} } +\newcommand\tikz{{\fontfamily{cmr}Ti{\em k}Z}} \begin{document} \DocInput{tablvar.dtx} %\PrintChanges @@ -59,7 +54,7 @@ %</driver> % \fi % -% \CheckSum{2897} +% \CheckSum{2825} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -77,29 +72,22 @@ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} % -% -% \changes{v1.0}{11/11/2018}{Initial version} +% \changes{v0.1}{05/01/2014}{Version initiale personnelle} +% \changes{v0.2}{11/11/2014}{Ajout de l'option tikz} +% \changes{v0.3}{07/12/2014}{Ajout de l'environnement tablvar*} +% \changes{v1.0}{11/11/2018}{Première version publiée, création de fichiers dtx et ins} +% \changes{v1.0}{11/11/2018}{nouvelle marcro bblim, +% changements dans les macros barre et Zih} +% \changes{v1.1}{12/04/2019}{Reprise README.md, tvloop -> varloop} +% \changes{v1.2}{05/05/2019}{Modifications mineures dans la documentation} +% \changes{v1.2}{02/06/2019}{Augmentation du facteur arraystretch par défaut de 1.2 à 1.4} % % \GetFileInfo{tablvar.sty} -% -% \DoNotIndex{\begin,\end,\emph,\og,\fg,\vspace,\arraybackslash} -% \DoNotIndex{\RequirePackage,\DeclareOption,\ProcessOptions} -% \DoNotIndex{\@@pos,\@pos,\@tvlbox,\@tvrbox,\@arstrutbox,\@ZI,\@@ZI,\@ifstar} -% \DoNotIndex{\tikz,\usetikzlibrary,\fill,\draw,\psframe,\rnode,\node,\ncline} -% \DoNotIndex{\makebox,\raisebox,\smash,\hspace,\phantom} -% \DoNotIndex{\cmd,\oarg,\marg,\meta} -% \DoNotIndex{\hline,\\,\cellcolor,\[,\],\infty,\frac,\sqrt,\mathrm,\alpha} -% \DoNotIndex{\newcommand,\newenvironment,\renewcommand} -% \DoNotIndex{\newlength,\setlength,\newcounter,\setcounter,\stepcounter,\addtocounter} -% \DoNotIndex{\theligne,\thenoeud,\themaxdiscont,\thenumvr,\theZI,\theZIstar,\I,\Ix,\Iy} -% \DoNotIndex{\AtBeginDocument,\definecolor,\newsavebox,\sbox} -% \DoNotIndex{\ifthenelse,\boolean,\newboolean,\setboolean,\value,\or} -% \DoNotIndex{\ifdim,\global,\advance,\fi,\else,\relax,\kern,\vrule,\ht,\dp,\wd} % % \title{L'extension \textsf{tablvar}\thanks{Ce document -% correspond à \textsf{tablvar}~\fileversion, dernière modification le \filedate.}} -% \author{Antoine Missier \\ \texttt{prenom.nom@ac-toulouse.fr}} -% \date{22 avril 2019} +% correspond à \textsf{tablvar}~\fileversion, dernière modification le 01/07/2019.}} +% \author{Antoine Missier \\ \texttt{antoine.missier@ac-toulouse.fr}} +% \date{1\ier\ juillet 2019} % \maketitle % \tableofcontents % @@ -115,29 +103,29 @@ % y compris pour des tableaux complexes, % mais avec de nombreuses possibilités de réglages et d'ajustements personnels % et une haute qualité graphique, en particulier pour le dessin des flèches, -% en exploitant les fonctionnalités des extensions graphiques \textsf{pstricks} -% (plus exactement \textsf{pst-node}) ou \textsf{tikz} pour +% en exploitant les fonctionnalités des extensions graphiques PSTricks +% (plus exactement \textsf{pst-node}) ou \tikz\ pour % définir un \emph{graphe} de \emph{nœuds} reliés par des flèches, % venant se \og superposer \fg{} au tableau lui-même. % % Le parti pris ici est d'utiliser la même syntaxe que les environnements % |array| (ou |tabular|) en laissant à \LaTeX\ le soin de faire % la composition du tableau et à l'extension graphique -% (\textsf{pstricks} ou \textsf{tikz}) celui +% (PSTricks ou \tikz) celui % de réaliser le dessin des flèches, automatisé et sans intervention de l'utilisateur. % On a simplement besoin de préciser, à l'intérieur d'une commande |\variations|, % ce qui est en haut et ce qui est en bas. % -% Cette documentation donne une galerie d'exemples et décrit les commandes -% fournies. -% % L'extension possède deux options utilisées pour le tracé automatique des flèches : % |pstricks| (par défaut) ou |tikz| (|\usepackage[tikz]{tablvar}|). -% Pour l'option |pstricks|, il faut compiler avec latex + dvips + ps2pdf ; -% pour l'option |tikz|, il faut compiler DEUX fois avec pdflatex +% Pour l'option |pstricks|, il faut compiler avec \texttt{LaTeX + dvips + ps2pdf} ; +% pour l'option |tikz|, il faut compiler DEUX fois avec \texttt{pdfLaTeX} % (la première fois les flèches ne sont pas correctement dessinées). % Si on veut compiler avec l'option |pstricks| après avoir compilé avec |tikz|, -% il faut, entre les deux, supprimer le fichier |.aux|, sinon la compilation plante. +% il faut supprimer le fichier |.aux|, sinon la compilation plante. +% +% Cette documentation donne une galerie d'exemples et décrit les commandes +% fournies. % % \section{Utilisation} % @@ -149,7 +137,7 @@ % Voici un premier tableau tout simple avec les commandes % \DescribeMacro{\haut} \DescribeMacro{\bas} \DescribeMacro{\mil} % de positionnement naïves |\haut|, |\bas| et |\mil| (milieu). -% +% %\[ %\begin{tablvar}{4} % \hline @@ -243,6 +231,7 @@ % \DescribeMacro{\pos*} % est un alias reposant sur la commande plus générale \cmd{\pos*}\marg{ligne}\marg{valeur} % qui se comporte comme |\pos| mais ne crée pas de nœud pour les flèches.\\ +% \enlargethispage{1ex} % \begin{minipage}[t]{7.4cm} % \begin{verbatim} %\begin{tablvar}{2} @@ -273,7 +262,8 @@ %\end{tablvar} %\] % \end{minipage} -% \\[-1ex] Le même tableau avec les commandes |\pos| +% \\ +% Le même tableau avec les commandes |\pos| % et |\pos*| et l'option |t| pour le max.\\[-1ex] % \begin{minipage}[t]{7.4cm} % \begin{verbatim} @@ -308,7 +298,7 @@ % % \DescribeMacro{\fleche} % On peut modifier l'aspect des flèches en redéfinissant la macro |\fleche| -% grâce aux nombreuses options offertes par \textsf{pstricks} ou \textsf{tikz}. +% grâce aux nombreuses options offertes par PSTricks ou \tikz. % Cette redéfinition sera locale si on la place dans l'environnement math du tableau. % Ci-dessous des flèches plus fines, plus proches des nœuds et dont la pointe est % plus effilée (codé ici pour pstricks uniquement). @@ -661,7 +651,7 @@ % Un autre exemple avec deux valeurs remarquables, placées cette fois % dans des colonnes valeurs. %\[ -%\renewcommand{\tablvarstretch}{1} +%\renewcommand{\tablvarstretch}{1.2} %\begin{tablvar}[1.5em]{3} % \hline % x & -\infty && \vr{0} && \vr{1} && +\infty \\ @@ -673,8 +663,7 @@ %\end{tablvar} %\] % \begin{verbatim} -%\[ -%\renewcommand{\tablvarstretch}{1} +%\renewcommand{\tablvarstretch}{1.2} %\begin{tablvar}[1.5em]{3} % \hline % x & -\infty && \vr{0} && \vr{1} && +\infty \\ @@ -684,9 +673,8 @@ % } % \hline %\end{tablvar} -%\] % \end{verbatim} -% \vspace{-4ex} +% \vspace{-2ex} % \DescribeMacro{\variations\oarg{nblignes}} % Ci-dessus, la partie variations a été composée sur 4 lignes grâce au paramètre % optionnel de la commande |\variations|. Les lignes sont alors numérotées @@ -698,8 +686,14 @@ % \DescribeMacro{\tablvarstretch} % À cause des 4 lignes de variations, la hauteur de lignes du tableau % a été réduite en modifiant le facteur -% |\tablvarstretch| (fixé à 1.2 par défaut), modification locale -% car placée à l'intérieur de l'environnement math.\\ +% |\tablvarstretch| (fixé à 1.4 par défaut), modification locale +% car placée à l'intérieur de l'environnement math +% \footnote{On peut utiliser ce paramètre pour agrandir la hauteur des lignes +% mais l'effet sera global pour tout le tableau. Si l'on souhaite agrandir +% spécifiquement une ligne on peut utiliser la commande \texttt{\bslash vstrut} +% de l'extension \textsf{spacingtricks}. Malheureusement un ajustement automatique +% comme proposé dans l'extension \textsf{arraycols} ne fonctionne pas, +% à cause des doubles barres.}.\\ % \DescribeMacro{\vdecal} % Enfin la légende $\exp x$ a été placée en ligne 2 mais % décalée vers le bas, pour qu'elle se trouve centrée verticalement @@ -823,6 +817,7 @@ % la commande |\vr| ne permet pas connecter les valeurs sur $x$ avec celles du sinus dans % le 2\ieme\ tableau, mais on peut le faire \og à la main\fg{} % en appelant les macros |\noeud| et |\vrconnect|. +% %\[ %\begin{tablvar}{4} % \hline @@ -874,7 +869,7 @@ % \hline % x & -\infty && \zbox{-1} && \zbox{1} && +\infty \\ % \hline -% -\frac{x}{\sqrt{x^2-1}^3} && \hspace{-1.5em} + & \bb & \ZIc & +% -\frac{x}{\strut\sqrt{x^2-1}^3} && \hspace{-1.5em} + & \bb & \ZIc & % \bb & \hspace{1.5em} - & \\ % \hline % \variations{\mil{\dfrac{1}{\sqrt{x^2-1}}} & \bas{0} && @@ -897,6 +892,7 @@ % boites contenant les $+\infty$ sinon la double barre ne serait % plus au centre de sa colonne, en ligne 1, ce qui produirait % un décalage avec les autres lignes.\\ +% La deuxième ligne avec la racine cubique a été agrandie grâce à la commande \LaTeX\ |\strut|. % Enfin, les signes ont été décalés avec |\hspace|, pour améliorer % leur centrage par rapport aux flèches. % \begin{verbatim} @@ -904,7 +900,7 @@ % \hline % x & -\infty && \zbox{-1} && \zbox{1} && +\infty \\ % \hline -% -\frac{x}{\sqrt{x^2-1}^3} && \hspace{-1.5em} + & \bb & \ZIc & +% -\frac{x}{\strut\sqrt{x^2-1}^3} && \hspace{-1.5em} + & \bb & \ZIc & % \bb & \hspace{1.5em} - & \\ % \hline % \variations{\mil{\dfrac{1}{\sqrt{x^2-1}}} & \bas{0} && @@ -992,7 +988,7 @@ % f'(x) && \hspace{-1em} + & \bb & \ZIh & \bb & \hspace{1em} - & \\ % \hline % \variations{ \mil{\sqrt{\dfrac{x-1}{x+1}}} -% & \bas{1} && \zbox[r]{\haut{+\infty}} \bb & \ZIh[2.4ex] +% & \bas{1} && \zbox[r]{\haut{+\infty}} \bb & \ZIh[2ex] % & \zbox{\bas{0}} \barre && \haut{1} % } % \hline @@ -1008,15 +1004,15 @@ % f'(x) && \hspace{-1em} + & \bb & \ZIh & \bb & \hspace{1em} - & \\ % \hline % \variations{ \mil{\sqrt{\dfrac{x-1}{x+1}}} -% & \bas{1} && \zbox[r]{\haut{+\infty}} \bb & \ZIh[2.4ex] +% & \bas{1} && \zbox[r]{\haut{+\infty}} \bb & \ZIh[2ex] % & \zbox{\bas{0}} \barre && \haut{1} % } % \hline %\end{tablvar} % \end{verbatim} % -% Un exemple avec deux zones interdites, la fonction -% $f:x\longmapsto \sqrt{(x^2-1)(x^2-4)}$. +% Voici un exemple avec deux zones interdites. On considère la fonction $f$ telle que +% $f(x)= \sqrt{(x^2-1)(x^2-4)}$. %{ \footnotesize %\[ %\begin{tablvar}{6} @@ -1171,12 +1167,12 @@ % 2x^2-5 & &+& \barre &+& \barre[0] &-& \barre &-& \barre &-& % \barre &-& \barre[0] &+& \barre &+& \\ % \hline -% f'(x) & &-& \bb & & \hachure{-4em,-11.2ex}{4em,2.4ex} & & \bb &+& +% f'(x) & &-& \bb & & \hachure{-4em,-12.8ex}{4em,2.6ex} & & \bb &+& % \barre[0] &-& \bb & & & & \bb & + & \\ % \hline % \variations{\mil{f(x)} & \haut{+\infty} && \bas{0} \discont && && % \bas{0} && \haut{2} && \bas{0} \discont && -% \pos*{3}{\hachure{-4em,12.5ex}{4em,-1.1ex}} && \bas{0} && +% \pos*{3}{\hachure{-4em,14.3ex}{4em,-1.2ex}} && \bas{0} && % \haut{+\infty} % } % \hline @@ -1199,27 +1195,28 @@ % 2x^2-5 & &+& \barre &+& \barre[0] &-& \barre &-& \barre &-& % \barre &-& \barre[0] &+& \barre &+& \\ % \hline -% f'(x) & &-& \bb & & \hachure{-4em,-11.2ex}{4em,2.4ex} & & \bb &+& +% f'(x) & &-& \bb & &\hachure{-4em,-12.8ex}{4em,2.6ex} & & \bb &+& % \barre[0] &-& \bb & & & & \bb & + & \\ % \hline % \variations{\mil{f(x)} & \haut{+\infty} && \bas{0} \discont && && % \bas{0} && \haut{2} && \bas{0} \discont && -% \pos*{3}{\hachure{-4em,12.5ex}{4em,-1.1ex}} && \bas{0} && +% \pos*{3}{\hachure{-4em,14.3ex}{4em,-1.2ex}} && \bas{0} && % \haut{+\infty} % } % \hline %\end{tablvar} % \end{verbatim} - +% +% \pagebreak % \section{Le code} - +% % \subsection{Extensions requises et options} - +% % \begin{macrocode} \RequirePackage{array} \RequirePackage{ifthen} \RequirePackage{multido} -\RequirePackage{colortbl} +\RequirePackage{colortbl} % pour \ZIc \newboolean{tikz} \DeclareOption{tikz}{\setboolean{tikz}{true}} @@ -1284,11 +1281,11 @@ % \begin{macro}{\tablvarstretch} % Permet de régler la valeur relative de l'espacement vertical -% des lignes du tableau. La valeur par défaut est 1.2 (1 correspondant +% des lignes du tableau. La valeur par défaut est 1.4 (1 correspondant % à la valeur standard d'un environnement |array|). % Placée dans un environnement math, elle sera locale à cet environnement. % \begin{macrocode} -\newcommand{\tablvarstretch}{1.2} +\newcommand{\tablvarstretch}{1.4} % \end{macrocode} % \end{macro} @@ -1308,7 +1305,7 @@ % \end{macrocode} % \end{macro} -% \subsection{Les commandes graphiques \textsf{pstricks/tikz}} +% \subsection{Les commandes graphiques PSTricks/\tikz} % % Nous présentons ici les commandes graphiques permettant le dessin % des flèches, @@ -1339,7 +1336,7 @@ % La commande \cmd{\vrconnect}\marg{noeud1}\marg{noeud2} % relie les nœuds définis par |\vr| (valeurs remarquables) % et le tracé est réalisé automatiquement par la commande |\variations|. -% Par défaut : lignes en pointillés d'épaisseur 1~pt. +% Par défaut : lignes en pointillés d'épaisseur 1\,pt. % \begin{macrocode} \newcommand*{\vrconnect}[2]{ \ifthenelse{\boolean{tikz}}{ @@ -1381,7 +1378,7 @@ % représentant les extrémités du rectangle à hachurer % par rapport à la position courante où la macro est appelée. % \begin{macrocode} -\newcommand{\hachure}[2]{ +\newcommand*{\hachure}[2]{ \ifthenelse{\boolean{tikz}}{ \tikz[remember picture,overlay]{\fill[pattern=north east lines] (#1) rectangle (#2);} @@ -1457,7 +1454,7 @@ % (car il faut la sauvegarder dans |\ZIwidth|) % et qui est passé automatiquement par |tablvar|. % \begin{macrocode} -\newcommand{\ZIinit}[1][\intervalwidth]{ +\newcommand*{\ZIinit}[1][\intervalwidth]{ \setlength{\ZIheight}{0pt} \setlength{\ZIdepth}{0pt} \setlength{\ZIwidth}{#1} @@ -1476,7 +1473,10 @@ % par défaut), le 2\ieme\ paramètre (obligatoire) est le nombre d'intervalles. % Cet environnement n'est rien d'autre qu'un |array| dans lequel on a réglé % les options de colonages. -% Les colonnes de valeurs sont de type |c| et les colonnes d'intervalles de type |i|. +% Les colonnes de valeurs sont de type |c| et les colonnes d'intervalles de type |i| +% \footnote{L'utilisation d'un type de colonne permettant un ajustement automatique +% de la hauteur tel que fourni par l'extension \textsf{cellspace} de Josselin Noirel +% ne fonctionne pas ici : les double-barres ne sont pas correctement dessinées.}. % \begin{macrocode} \newenvironment{tablvar}[2][\intervalwidth]{ \tablvarinit @@ -1670,7 +1670,7 @@ % La macro |\bb|, qui produit une double barre, % provient de l'extension \textsf{variations} de Christian Obrecht % |\def\bb{\vrule\kern1pt\vrule}|. -% Nous avons ajouté 1~pt d'espace avant et après, afin d'éviter le contact +% Nous avons ajouté 1\,pt d'espace avant et après, afin d'éviter le contact % entre la double barre et les limites à gauche ou à droite. % \begin{macrocode} \newcommand*{\bb}{\kern1pt\vrule\kern1pt\vrule\kern1pt} @@ -1721,7 +1721,7 @@ % \begin{macrocode} \newsavebox{\@tvlbox} \newsavebox{\@tvrbox} -\newcommand{\bblim}[4]{ +\newcommand*{\bblim}[4]{ \sbox{\@tvlbox}{$#2$} \sbox{\@tvrbox}{$#4$} \ifdim \wd\@tvlbox > \wd\@tvrbox @@ -1781,10 +1781,11 @@ % à chaque appel. % Par contre, dans la partie variations, les |\ZIh| doivent être placés % autant de fois que nécessaire, dans les intervalles voulus.\\ -% La macro possède un paramètre optionnel qui est un supplément de hauteur global, +% La macro possède un paramètre optionnel |\ZIh|\oarg{hauteur} +% qui est un supplément de hauteur global, % permettant de faire un ajustement fin si des lignes ont été agrandies % à cause de leur contenu (grandes fractions par exemple).\\ -% Limitation : fonctionne moins bien avec tikz (sensible à la taille de police). +% Limitation : fonctionne moins bien avec \tikz\ (sensible à la taille de police). % % La macro |ZIh*| \DescribeMacro{\ZIh*} % (appelée par |\ZIh| sur la dernière ligne des variations) @@ -1792,7 +1793,7 @@ % Elle utilise les dimensions précédemment enregistrées dans les variables de dimension % (par |\ZIh|). Dans un tableau de signes sans partie variations % elle doit être placée sur la dernière ligne à la place de |\ZIh| -% (pour les lignes précédentes). +% (pour les lignes précédentes). Elle possède le même argument optionnel \oarg{hauteur}. % \begin{macrocode} \newcommand*{\@ZI}[1][0pt]{% \discont @@ -1820,7 +1821,7 @@ \stepcounter{ZIstar} } -\newcommand{\ZIh}{\@ifstar{\@@ZI}{\@ZI}} +\newcommand*{\ZIh}{\@ifstar{\@@ZI}{\@ZI}} % \end{macrocode} % \Finale diff --git a/Master/texmf-dist/source/latex/tablvar/tablvar.ins b/Master/texmf-dist/source/latex/tablvar/tablvar.ins index bba566c9ca6..94f28ed03aa 100644 --- a/Master/texmf-dist/source/latex/tablvar/tablvar.ins +++ b/Master/texmf-dist/source/latex/tablvar/tablvar.ins @@ -1,5 +1,5 @@ %% -%% Copyright (C) 2018 by Antoine Missier <prenom.nom@ac-toulouse.fr> +%% Copyright (C) 2018-2019 by Antoine Missier <antoine.missier@ac-toulouse.fr> %% %% This file may be distributed and/or modified under the conditions of %% the LaTeX Project Public License, either version 1.3 of this license @@ -21,7 +21,7 @@ This is a generated file. -Copyright (C) 2018 by Antoine Missier <prenom.nom@ac-toulouse.fr> +Copyright (C) 2018-2019 by Antoine Missier <antoine.missier@ac-toulouse.fr> This file may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 of this license |