summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-04-13 21:39:04 +0000
committerKarl Berry <karl@freefriends.org>2020-04-13 21:39:04 +0000
commit267f7ec07055a2150e0e3e80c0861d3ec250e568 (patch)
tree4d269474410bfa590361d27b6769bf305d97815c /Master/texmf-dist
parent69691a7459d14973c141f08cf5d0f946b66aa953 (diff)
systeme (13apr20)
git-svn-id: svn://tug.org/texlive/trunk@54724 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/generic/systeme/README4
-rw-r--r--Master/texmf-dist/doc/generic/systeme/systeme_fr.pdfbin454193 -> 77724 bytes
-rw-r--r--Master/texmf-dist/doc/generic/systeme/systeme_fr.tex33
-rw-r--r--Master/texmf-dist/tex/generic/systeme/systeme.tex46
4 files changed, 66 insertions, 17 deletions
diff --git a/Master/texmf-dist/doc/generic/systeme/README b/Master/texmf-dist/doc/generic/systeme/README
index d7310e3496a..82192d1990d 100644
--- a/Master/texmf-dist/doc/generic/systeme/README
+++ b/Master/texmf-dist/doc/generic/systeme/README
@@ -1,9 +1,9 @@
L'extension
systeme
- v0.32
+ v0.33
- 13 janvier 2019
+ 13 avril 2020
Author : Christian Tellechea
Email : unbonpetit@netc.fr (CT)
diff --git a/Master/texmf-dist/doc/generic/systeme/systeme_fr.pdf b/Master/texmf-dist/doc/generic/systeme/systeme_fr.pdf
index 7d81a5ae886..a6c4193f091 100644
--- a/Master/texmf-dist/doc/generic/systeme/systeme_fr.pdf
+++ b/Master/texmf-dist/doc/generic/systeme/systeme_fr.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/systeme/systeme_fr.tex b/Master/texmf-dist/doc/generic/systeme/systeme_fr.tex
index 657911336d7..0180cadf937 100644
--- a/Master/texmf-dist/doc/generic/systeme/systeme_fr.tex
+++ b/Master/texmf-dist/doc/generic/systeme/systeme_fr.tex
@@ -1,14 +1,10 @@
-% Documentation de systeme
+% !TeX TS-program = xelatex
\documentclass[10pt,french]{article}
-\usepackage[utf8]{inputenc}
-\usepackage[T1]{fontenc}
\usepackage[a4paper,margin=3cm,head=12pt,headsep=7mm,footskip=7mm]{geometry}
\usepackage[bottom]{footmisc}
-\usepackage{libertine,amsmath,fancybox,enumitem,systeme,xcolor,amssymb,array,longtable,fancyhdr}
-\renewcommand*\oldstylenums[1]{{\fontfamily{fxlj}\selectfont #1}}
-\usepackage[scaled=0.8]{luximono}
-\usepackage[libertine]{newtxmath}%
-\usepackage[protrusion=true,expansion,final,babel=true]{microtype}
+
+\usepackage{amsmath,fancybox,enumitem,systeme,xcolor,amssymb,array,longtable,fancyhdr,libertinus-otf}
+\setsansfont[Scale=0.8]{Luxi Mono}
\fancypagestyle{plain}{%
\fancyhead[L]{\small L'extension \bfseries systeme}
\fancyhead[C]{}
@@ -290,6 +286,18 @@ Par la suite, on peut supprimer ce signe ou n'importe quel autre déjà existant
\exemple{Coefficients décimaux}/\systeme[][:]{1,5x-0,45y=0,7:x-0,8y=1,4}/
Pour qui veut utiliser la virgule régulièrement dans les coefficients, on peut changer définitivement le séparateur par défaut pour n'importe quel autre caractère que l'on placera dans l'argument de la commande \verb-\syseqsep- et écrire par exemple \og\verb/\syseqsep{:}/\fg{} pour choisir \og\verb-:-\fg.
+\subsection{Alignement des termes}
+Par défaut, les termes dans le membre de gauche sont alignes à droite, tandis que le terme du membre de droite est aligné à gauche. On peut changer ces consignes d'alignement avec la macro \verb|\sysalign{x,y}| où \verb|x| représente la consigne d'alignement des termes du membre de gauche et \verb|y| celle du terme du membre de droite. Ces consignes doivent être «\verb|c|» pour «centré», «\verb|r|» pour alignement à droite (right) ou «\verb|l|» pour gauche (left).
+\exemple{Alignement des termes}|\systeme{3x-y=-12,x+4y=3}
+ \quad(par défaut, droite/gauche)\par
+\sysalign{l,l}\systeme{3x-y=-12,x+4y=3}
+ \quad(alignement gauche/gauche)\par
+\sysalign{r,r}\systeme{3x-y=-12,x+4y=3}
+ \quad(alignement droite/droite)\par
+\sysalign{l,r}\systeme{3x-y=-12,x+4y=3}
+ \quad(alignement gauche/droite)\par
+\sysalign{c,c}\systeme{3x-y=-12,x+4y=3}
+ \quad(alignement centré/centré)|
\subsection{Espacement des lignes}\label{espacement.vertical}
On peut faire varier l'espacement entre les lignes avec la commande \verb-\syslineskipcoeff- dont l'argument est un nombre qui viendra multiplier la valeur de \verb-\baselinskip-. Par défaut, l'argument vaut \verb-1.25-.
@@ -297,6 +305,12 @@ On peut faire varier l'espacement entre les lignes avec la commande \verb-\sysli
\syslineskipcoeff{1.75}\quad
\systeme{x+2y-z=0,2x-y+z=1,x-3y+2z=1}/
+\subsection{Espaces autour des signes}
+Il est possible d'ajouter une espace avant et après tous les signes \verb|+| et \verb|-| séparant les termes du membre de gauche à l'aide de la macro \verb|\syssignspace{dim}| où \verb|dim| est la dimension du \emph{ressort} que l'on souhaite insérer. La macro \verb|\syseqspace{dim}| exécute la même action, mais pour le signe \verb|=|.
+\exemple{Espaces autour des signes}/\systeme{3x-y=-12,x+4y=3} puis
+\syssignspace{3pt}\syseqspace{10pt}
+\systeme{3x-y=-12,x+4y=3}/
+
\subsection{Colonne supplémentaire}
Lorsqu'une équation comporte le signe \og\verb-@-\fg{}, tout ce qui se trouve à droite de ce caractère sera mis dans une colonne supplémentaire au fer à gauche qui se trouvera à droite du système, en dernière position.
\exemple{Colonne supplémentaire}/\systeme{x+y=125@L_1,
@@ -387,6 +401,9 @@ Voici la liste de toutes les commandes définies par cette extension :
\verb-\systeme{<code système>}-&compose un système d'équations ou d'inéquations\\
\verb-\sysdelim<delim gauche><delim droit>-&modifie les délimiteurs extensibles placées à gauche et à droite du système\\
\verb-\syseqsep{<caractère>}-&définit le séparateur par défaut des équations\\
+\verb-\sysalign{x,y}-&définit l'alignement des termes dans les 2 membres\\
+\verb-\syssignspace{dim}-&définit l'espace ajoutée autour des signes dans le membre de gauche\\
+\verb-\syseqspace{dim}-&définit l'espace ajoutée autour du signe \verb-=-\\
\verb-\syslineskipcoeff{<coeff>}-&définit le coefficient multiplicateur de \verb-\baselinskip- pour modifier l'espacement vertical des équations\\
\verb-\+- et \verb|\-|&remplace "+" et "-" lorsqu'on veut éviter d'indiquer un nouveau terme\\
\verb-\sysequivsign{<signe>}{<substitution>}-&définit ce par quoi un \verb-<signe>- d'égalité doit être remplacé à l'affichage\\
diff --git a/Master/texmf-dist/tex/generic/systeme/systeme.tex b/Master/texmf-dist/tex/generic/systeme/systeme.tex
index 9bda0ef0460..833edf60f64 100644
--- a/Master/texmf-dist/tex/generic/systeme/systeme.tex
+++ b/Master/texmf-dist/tex/generic/systeme/systeme.tex
@@ -4,9 +4,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
\def\SYSname {systeme} %
-\def\SYSver {0.32} %
+\def\SYSver {0.33} %
% %
-\def\SYSdate {2019/01/13} %
+\def\SYSdate {2020/04/13} %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
@@ -58,6 +58,7 @@
\long\def\SYS_execarg#1{#1}
\long\def\SYS_gobtwoargs#1#2{}
\def\SYS_addtotok#1#2{#1\expandafter{\the#1#2}}
+\def\SYS_xaddtotok#1#2{\SYS_expaddtotok#1{\expanded{#2}}}
\def\SYS_expaddtotok#1#2{\xs_exparg{\SYS_addtotok#1}{#2}}
\def\SYS_addtotab{\SYS_addtotok\SYS_systemecode}
\def\SYS_cslet#1{\expandafter\let\csname#1\endcsname}
@@ -155,6 +156,28 @@
\sysequivsign{<=}\leq
\sysequivsign{>=}\geq
+\def\syssignspace#1{\edef\SYS_signspace{\ifdim#1=0pt \else\hskip\dimexpr#1\relax\fi}}
+\def\syseqspace#1{\edef\SYS_eqspace{\ifdim#1=0pt \else\hskip\dimexpr#1\relax\fi}}
+\syssignspace{0pt}
+\syseqspace{0pt}
+
+\def\SYS_firsttonil#1#2\_nil{#1}
+\def\SYS_firstletter#1#2{\string#1\expandafter\SYS_firsttonil\detokenize{#2.}\_nil}
+\def\sysalign#1{%
+ \xs_ifempty{#1}{\sysalign_i r}{\sysalign_i#1},l,\_nil
+}
+\def\sysalign_i#1,#2,#3\_nil{%
+ \let\SYS_leftright\hfil
+ \if\SYS_firstletter c{#1}\let\SYS_leftleft\hfil \else
+ \if\SYS_firstletter l{#1}\let\SYS_leftleft\empty\else
+ \let\SYS_leftleft\hfil \let\SYS_leftright\empty\fi\fi
+ \let\SYS_rightleft\hfil
+ \if\SYS_firstletter c{#2}\let\SYS_rightright\hfil \else
+ \if\SYS_firstletter r{#2}\let\SYS_rightright\empty \else
+ \let\SYS_rightleft\empty \let\SYS_rightright\hfil\fi\fi
+}
+\sysalign{r,l}
+
% #1 est l'équation courante. La macro la sépare en 2 membres -> \SYS_leftmember et \SYS_rightmember
% le signe de séparation entre les 2 membres se trouve dans \SYS_currenteqsign
\def\SYS_splitinmembers#1{%
@@ -238,7 +261,7 @@
\fi
}
{\ifcsname SYS_term_\detokenize\expandafter{\SYS_letterfound}_\SYS_eqnumber\endcsname
- \errmessage{Package systeme Error: l'inconnue "\detokenize\expandafter{\SYS_letterfound}" a deja ete trouvee dans l'équation !}%
+ \errmessage{Package systeme Error: l'inconnue "\detokenize\expandafter{\SYS_letterfound}" a deja ete trouvee dans l'equation !}%
\fi
\ifSYS_sortvariable
\SYS_insletter\SYS_letterfound% l'insérer si besoin dans la liste ordonnée des variables
@@ -606,15 +629,16 @@
\SYS_makesyspreamble_i1%
}
+
\def\SYS_makesyspreamble_i#1{%
\xs_ifnum{#1<\SYS_preamblenum\relax}% tant qu'il reste des variables
- {\SYS_addtotok\SYS_systempreamble{\hfil$##$&\hfil$##$&}% une colonne pour le terme et une pour le signe
+ {\SYS_xaddtotok\SYS_systempreamble{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_signspace$##$\SYS_signspace\hfil&}% une colonne pour le terme et une pour le signe
\xs_exparg\SYS_makesyspreamble_i{\number\numexpr#1+1}%
}
{\ifSYS_constterm
- \SYS_addtotok\SYS_systempreamble{\hfil$##$&\hfil$##$&}% une colonne pour le terme constant et son signe
+ \SYS_xaddtotok\SYS_systempreamble{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_signspace$##$\SYS_signspace\hfil&}% une colonne pour le terme constant et son signe
\fi
- \SYS_addtotok\SYS_systempreamble{\hfil$##$&$##$&$##$\hfil\null}% ajouter 1 colonne pour le signe = et une pour le terme de droite
+ \SYS_xaddtotok\SYS_systempreamble{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_eqspace$##$\SYS_eqspace\hfil&\SYS_rightleft$##$\SYS_rightright\null}% ajouter 1 colonne pour le signe = et une pour le terme de droite
\ifSYS_extracol
\SYS_addtotok\SYS_systempreamble{&\SYS_extracolstart##\SYS_extracolend\hfil\null}% la colonne supplémentaire (pas de mode math)
\fi
@@ -686,4 +710,12 @@ v0.32 13/01/2019
les noms des termes.
- Correction d'un bug : si version étoilée et terme constant dans
membre de gauche, défaut d'alignement.
- - Nettoyage du code. \ No newline at end of file
+ - Nettoyage du code.
+----------------------------------------------------------------------
+v0.33 13/04/2020
+ - possibilité de choisir un espacement avant et après les signes
+ + et - avec \syssignspace{<skip>}. De même pour = avec
+ \syseqspace{<skip>}
+ - possibilité de choisir l'alignement des colonnes des termes à
+ gauche du signe = et celle à droite avec \sysalign{x,y} où
+ x et y sont "c", "r", ou "l" \ No newline at end of file