texlive[49910] Master/texmf-dist: xstring (2feb19)
commits+karl at tug.org
commits+karl at tug.org
Sat Feb 2 23:38:53 CET 2019
Revision: 49910
http://tug.org/svn/texlive?view=revision&revision=49910
Author: karl
Date: 2019-02-02 23:38:53 +0100 (Sat, 02 Feb 2019)
Log Message:
-----------
xstring (2feb19)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/generic/xstring/README
trunk/Master/texmf-dist/doc/generic/xstring/test_etex.pdf
trunk/Master/texmf-dist/doc/generic/xstring/test_latex.pdf
trunk/Master/texmf-dist/doc/generic/xstring/xstring-en.pdf
trunk/Master/texmf-dist/doc/generic/xstring/xstring-en.tex
trunk/Master/texmf-dist/doc/generic/xstring/xstring-fr.pdf
trunk/Master/texmf-dist/doc/generic/xstring/xstring-fr.tex
trunk/Master/texmf-dist/tex/generic/xstring/xstring.tex
Modified: trunk/Master/texmf-dist/doc/generic/xstring/README
===================================================================
--- trunk/Master/texmf-dist/doc/generic/xstring/README 2019-02-02 22:38:29 UTC (rev 49909)
+++ trunk/Master/texmf-dist/doc/generic/xstring/README 2019-02-02 22:38:53 UTC (rev 49910)
@@ -1,8 +1,8 @@
_________________
xstring package
- v 1.81
- 2018/12/09
+ v 1.82
+ 2019/02/01
_________________
This package provides macros manipulating strings for programming use.
Modified: trunk/Master/texmf-dist/doc/generic/xstring/test_etex.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/generic/xstring/test_latex.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/generic/xstring/xstring-en.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/generic/xstring/xstring-en.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/xstring/xstring-en.tex 2019-02-02 22:38:29 UTC (rev 49909)
+++ trunk/Master/texmf-dist/doc/generic/xstring/xstring-en.tex 2019-02-02 22:38:53 UTC (rev 49910)
@@ -1,10 +1,9 @@
\documentclass[english,a4paper,10pt]{article}
-\usepackage[utf8]{inputenc}
-\usepackage[T1]{fontenc}
+\usepackage{fontspec}
\usepackage[bookmarks=true,bookmarksopen=true,colorlinks=true,hyperfootnotes=false,filecolor=black,linkcolor=blue,urlcolor=blue,pdfauthor={Christian Tellechea},pdftitle={xstring},pdfsubject={package for strings of tokens},pdfkeywords={xstring,latex,string},pdfcreator={LaTeX}]{hyperref}
\usepackage[margin=1.9cm]{geometry}
\usepackage{libertine}
-\usepackage[scaled=.8]{luximono}
+\usepackage[scale=0.85]{noto-mono}
\usepackage[bottom]{footmisc}
\usepackage{amsmath,amssymb,amsfonts,color,eurosym,xspace,xstring,babel,listings}
\makeatletter
Modified: trunk/Master/texmf-dist/doc/generic/xstring/xstring-fr.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/generic/xstring/xstring-fr.tex
===================================================================
--- trunk/Master/texmf-dist/doc/generic/xstring/xstring-fr.tex 2019-02-02 22:38:29 UTC (rev 49909)
+++ trunk/Master/texmf-dist/doc/generic/xstring/xstring-fr.tex 2019-02-02 22:38:53 UTC (rev 49910)
@@ -1,10 +1,9 @@
\documentclass[a4paper,10pt,french]{article}
-\usepackage[utf8]{inputenc}
-\usepackage[T1]{fontenc}
+\usepackage{fontspec}
\usepackage[bookmarks=true,bookmarksopen=true,colorlinks=true,hyperfootnotes=false,filecolor=black,linkcolor=blue,urlcolor=blue,pdfauthor={Christian Tellechea},pdftitle={xstring},pdfsubject={package pour la manipulation de chaines de tokens},pdfkeywords={xstring,latex,tex,string,chaine},pdfcreator={LaTeX}]{hyperref}
\usepackage[margin=1.9cm]{geometry}
\usepackage{libertine}
-\usepackage[scaled=.8]{luximono}
+\usepackage[scale=0.85]{noto-mono}
\usepackage[bottom]{footmisc}
\usepackage{amsmath,amssymb,amsfonts,color,eurosym,xspace,xstring,babel,listings}
\makeatletter
Modified: trunk/Master/texmf-dist/tex/generic/xstring/xstring.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/xstring/xstring.tex 2019-02-02 22:38:29 UTC (rev 49909)
+++ trunk/Master/texmf-dist/tex/generic/xstring/xstring.tex 2019-02-02 22:38:53 UTC (rev 49910)
@@ -4,9 +4,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
\def\xstringname {xstring} %
-\def\xstringversion {1.81} %
+\def\xstringversion {1.82} %
% %
-\def\xstringdate {2018/12/09} %
+\def\xstringdate {2019/02/01} %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
@@ -17,7 +17,7 @@
% Package URL: https://www.ctan.org/pkg/xstring %
% Bug tracker: https://framagit.org/unbonpetit/xstring/issues %
% Repository : https://framagit.org/unbonpetit/xstring/tree/master %
-% Copyright : Christian Tellechea 2008-2018 %
+% Copyright : Christian Tellechea 2008-2019 %
% Licence : Released under the LaTeX Project Public License v1.3c %
% or later, see http://www.latex-project.org/lppl.txt %
% Files : 1) xstring.tex %
@@ -619,32 +619,31 @@
\def\IfStrEqCase{%
\xs_ifstar
- {\def\xs_reserved_E{\IfStrEq*}\xs_IfStrCase}%
- {\def\xs_reserved_E{\IfStrEq}\xs_IfStrCase}%
+ {\xs_IfStringCase{\IfStrEq*}}%
+ {\xs_IfStringCase\IfStrEq}%
}
-\long\def\xs_IfStrCase#1#2{\xs_testopt{\xs_IfStringCase{#1}{#2}}{}}
-
\def\IfEqCase{%
\xs_ifstar
- {\def\xs_reserved_E{\IfEq*}\xs_IfEqCase}%
- {\def\xs_reserved_E{\IfEq}\xs_IfEqCase}%
+ {\xs_IfStringCase{\IfEq*}}%
+ {\xs_IfStringCase\IfEq}%
}
-\long\def\xs_IfEqCase#1#2{\xs_testopt{\xs_IfStringCase{#1}{#2}}{}}
-
-\long\def\xs_IfStringCase#1#2[#3]{%
+\long\def\xs_IfStringCase#1#2#3{% #1=macro avec ou sans \xE9toile #2=argument \xE0 tester #3=liste des {<cas>}{code>}
\long\def\xs_testcase##1##2##3\_nil{% lit les 2 premieres unit\xE9s syntaxiques dans ##1 et ##2. Les autres dans ##3
- \xs_reserved_E{#1}{##1}%
- {##2}% le test est positif, on ex\xE9cute le code correspondant
+ #1{#2}{##1}% compare
+ {\xs_testopt{\xs_IfStringCase_ii{##2}}{}}% le test est positif, on ex\xE9cute le code correspondant et on mange l'argument optionnel ## BUGfix dans 1.82
{\xs_ifempty{##3}%
- {#3}% s'il n'y a plus de cas, on ex\xE9cute le code <autres cas>
+ {\xs_testopt{\xs_IfStringCase_i}{}}% s'il n'y a plus de cas, on ex\xE9cute le code <autres cas> ## BUGfix dans 1.82
{\xs_testcase##3\_nil}% sinon, on recommence avec ce qui reste
}%
}%
- \xs_testcase#2\_nil
+ \xs_testcase#3\_nil
}
+\long\def\xs_IfStringCase_i[#1]{#1}
+\long\def\xs_IfStringCase_ii#1[#2]{#1}
+
% Renvoie ce qui est \xE0 gauche de l'occurence n\xB0#1 de la sous chaine #3 dans la chaine #2
\xs_newmacro*3\StrBefore{1}{2}{1}{%
\xs_cutafteroccur{#2}{#3}{#1}%
@@ -1041,179 +1040,184 @@
\expandingroups
\endinput
-%
-% H I S T O R I Q U E
-%------------------------------------------------------------------------------
-%% v1.0 4/7/2008 : - Package achev\xE9.
-% 7/7/2008 : - Package publi\xE9 sur CTAN.
-%------------------------------------------------------------------------------
-% v1.1 15/8/2008
-% - Le package ne n\xE9cessite plus LaTeX et est d\xE9sormais utilisable sous
-% Plain eTeX.
-% - Ajout des macros \IfInteger et \IfDecimal.
-% Pour cette derni\xE8re, la partie enti\xE8re et la partie d\xE9cimale sont
-% r\xE9cup\xE9rables dans les compteurs \integerpart et \decimalpart. Ce
-% qu'il reste apr\xE8s qu'un caract\xE8re non attendu soit rencontr\xE9 est
-% dispo dans \xs_remainafterdecimal
-% - Correction d'un bug dans \tokenize :
-% suppression de l'expansion avec \normalexpandarg pour \xE9viter le bug
-% avec les lettres accentu\xE9es dans l'exemple : \tokenize\aa{\xE9\xF9}
-% - Am\xE9lioration du code de la plupart des macros.
-% - \xE9criture d'une routine \xs_newmacro d\xE9finissant les macros.
-% - Suppression de tous les compteurs grace \xE0 \numexpr.
-% - Nouvelles fonctionnalit\xE9s internes dans :
-% \IfSubStr
-% ajout des chaines se trouvant avant et apr\xE8s l'occurrence test\xE9e
-% dans les sc \xs_behind_IfSubStr et \xs_before_IfSubStr
-% \StrCount
-% a) ajout de ce qui se trouve apr\xE8s la derni\xE8re occurrence dans la
-% sc \xs_StrCount_afterlastocccur
-% b) la macro ne d\xE9pend plus d'aucune autre
-%------------------------------------------------------------------------------
-% v1.2 23/8/2008
-% - Am\xE9lioration du code de \StrMid \StrGobbleLeft, \StrLeft,
-% \StrGobbleRight et \StrRight \xE0 l'aide de la nouvelle macro
-% \xs_StrSplit_i
-% - Nouveau test \IfStrEq qui compare 2 chaines
-% - Nouveau test \IfEq qui compare 2 chaines (ou 2 nombres si les 2 chaines
-% contiennent un nombre)
-% - Correction d'un bug dans \xs_formatnumber. La macro n'envisageait pas le
-% cas o\xF9 son argument \xE9tait vide ce qui faiasait planter
-% \IfDecimal{}{V}{F} et \IfInteger{}{V}{F}
-%------------------------------------------------------------------------------
-% v1.3 21/9/2008
-% - Am\xE9lioration du code, mise en place de r\xE9cursivit\xE9s terminales dans
-% toutes les macros r\xE9cursives, simplification de \xs_TestEqual en
-% utilisant \ifx
-% - Nouvelles macros \IfStrEqCase et \IfEqCase
-% Teste si une cha\xEEne est \xE9gale \xE0 plusieurs chaines donn\xE9es et
-% ex\xE9cute un code sp\xE9cifique
-% - Cr\xE9ation de la macro publique \StrSplit
-% Coupe la chaine en 2 \xE0 une position donn\xE9e
-% - Nouvelle macro \StrCompare
-% Compare 2 cha\xEEnes et renvoie la position du 1er caract\xE8re diff\xE9rent.
-% Renvoie 0 si elles sont \xE9gales.
-%------------------------------------------------------------------------------
-% v1.3a 29/9/2008
-% - Correction d'un bug : \expandafter#1
-% dans les macros \IfSubStrBefore et \StrBetween qui buggue si #1 est un
-% nombre > 9 !
-% - R\xE9 \xE9criture de \xs_returnfirstsyntaxunit et \xs_gobarg qui
-% deviennent purement d\xE9veloppables.
-% - R\xE9 \xE9criture de \StrLen
-% - Nouvelle macro interne \xs_cutafteroccur
-% Coupe la chaine apr\xE8s la ni\xE8me occurrence d'une sous chaine.
-% - Code am\xE9lior\xE9 de \StrMid, \StrLeft, \StrGobbleLeft, \StrRight,
-% \StrGobbleRight grace \xE0 \xs_cutafteroccur
-%------------------------------------------------------------------------------
-% v1.4 4/11/2008
-% - xstring traite ses arguments par unit\xE9 syntaxique, et donc toutes les
-% macros internes ont \xE9t\xE9 r\xE9-\xE9crites \xE0 cette fin.
-% - Le manuel a \xE9t\xE9 r\xE9-\xE9crit, rendu plus clair et mieux structur\xE9.
-% - Nouvelle fonctionnalit\xE9 : \expandarg
-% le 1er lex\xE8me de chaque argument est 1-d\xE9velopp\xE9 avant que la
-% macro ne soit appel\xE9e. Si un argument comporte plus qu'1 lex\xE8me,
-% il faut passer par \scancs*[1] pour 1-d\xE9velopper toutes les unit\xE9s
-% syntaxiques.
-% - Correction de 2 erreurs dans le manuel anglais : 0 est la valeur par
-% d\xE9faut dans \StrSubstitute et \StrDel
-% - Coh\xE9rence dans les nom des s\xE9quences de contr\xF4les temporaires qui
-% sont d\xE9sormais : \xs_reserved_A \xE0 \xs_reserved_E
-%------------------------------------------------------------------------------
-% v1.4a 12/11/2008
-% - Correction d'un bug dans \xs_StrSplit dans le cas o\xF9 l'argument
-% num\xE9rique est <1 : la 1ere coupure doit \xEAtre vide et le seconde doit
-% \xEAtre \xE9gale \xE0 l'argument.
-%------------------------------------------------------------------------------
-% v1.4b 16/11/2008
-% - Correction de 2 bugs dans \xs_returnfirstsyntaxunit
-%------------------------------------------------------------------------------
-% v1.5 31/12/2008
-% - Nouvelles fonctionnalit\xE9s dans la recherche de groupes par un
-% identificateur caract\xE9risant leur imbrication. Impl\xE9mentation de :
-% 1) \StrFindGroup
-% 2) \groupID
-% - Ajout des nouvelles macros g\xE9n\xE9riques \xs_read_reserved_C et
-% \xs_read_reserved_D
-% - Correction d'un bug dans \StrSplit : \StrSplit{{a}bc}{1}[\truc] faisait
-% que \truc contenait \xABa{a}\xBB.
-% - Correction d'un bug dans \xs_newmacro : l'argument optionnel \xE9tait
-% d\xE9tok\xE9nis\xE9 \xE0 tort dans les macros \xE9toil\xE9es.
-% - Dans \xs_newmacro, on doit choisir le num\xE9ro du dernier argument devant
-% \xEAtre d\xE9tok\xE9nis\xE9 dans le cas d'une macro \xE9toil\xE9e (sachant que
-% l'argument optionnel ne l'est jamais)
-%------------------------------------------------------------------------------
-% v1.5a 09/2/2009
-% - Nouvelle macro \StrExpand, sensible au mode d'exploration. La macro est
-% ind\xE9pendante du mode d'exploration et dispose de ses propres commandes
-% d'exploration : \expandingroups et \noexpandingroups
-% - R\xE9-\xE9criture de \scancs, qui devient triviale puisque d\xE9pendant de
-% \StrExpand. Il n'y a plus de version \xE9toil\xE9e et d\xE9sormais, \scancs
-% est sensible au mode d'exploration.
-% - Correction d'un bug dans \IfInteger : \IfInteger{2.0}{V}{F} affichait F
-% - Correction de bugs : mettre \let\xs_reserved_E\relax avant d'appeler
-% \xs_StrSplit_i
-% - Suppression des messages d'erreur, de warning et d'info. xstring devient
-% donc silencieux ;)
-% - Passage de 3 \xE0 2 compteurs
-% - Le manuel est d\xE9sormais plus color\xE9, en esp\xE9rant qu'il sera un peu
-% plus agr\xE9able \xE0 lire !
-%------------------------------------------------------------------------------
-% v1.5b 13/3/2009
-% - Modification d'un grand nombre de macros de telle sorte que vraiment
-% n'importe quel code peut d\xE9sormais \xEAtre plac\xE9 dans les arguments des
-% macros (comme par exemple des \if, \ifx ou autre, m\xEAme sans leur \fi, ce
-% qui n'\xE9tait pas possible jusqu'alors)
-%------------------------------------------------------------------------------
-% v1.5c 05/6/2009
-% - Correction d'un bug dans \IfBeginWith : il faut appeler
-% \xs_returnfirstsyntaxunit pour l'argument #2 puis pour l'argument #1 et
-% non pas l'inverse pour que \xs_toks refl\xE8te ce qui se trouve dans #1
-% - Correction d'un bug dans \xs_returnfirstsyntaxunit au cas o\xF9 #1 commence
-% par un espace : mettre \xs_toks \xE0 0
-% - Correction d'un bug dans \xs_returnfirstsyntaxunit :
-% \xs_returnfirstsyntaxunit{{}}\truc
-% faisait que \truc se d\xE9veloppait en un espace.
-% - Correction d'un bug dans \xs_removefirstsyntaxunit o\xF9 le cas
-% \xs_removefirstsyntaxunit{ {b}}\truc
-% donnait \truc se d\xE9veloppant en \xABb\xBB au lieu de \xAB{b}\xBB.
-%------------------------------------------------------------------------------
-% v1.5d 28/3/2010
-% - Correction d'un bug dans \IfInteger : \afterinteger ne donnait pas le
-% bon r\xE9sultat. Par exemple avec 1.23 il renvoyait {} au lieu de {.23}
-% - \xs_formatnumber ne detokenize plus ses arguments (que m'est-il pass\xE9
-% par la t\xEAte pour que je code un truc comme ca ?), et donc
-% \afterinteger et \xs_afterdecimal ont des tokens ayant le bon
-% catcode
-%------------------------------------------------------------------------------
-% v1.6 24/10/2012
-% - Correction d'un bug dans \xs_cutafteroccur au cas o\xF9 #3<1
-% - \IfDecimal ne \detokenize plus l'argument.
-% - Nouvelle version de \tokenize qui enlevait les accolades si son argument
-% \xE9tait entre accolades
-% - Nouvelle macro \StrCut
-% - \xs_cutafteroccur_i ne produit plus d'espace ind\xE9sirable si #3 \xE9tait
-% \xE9valu\xE9 par \numexpr
-%------------------------------------------------------------------------------
-% v1.7 13/1/2013
-% - Correction d'un manque de rigueur dans les assignations concernant
-% \groupID : elles sont toutes globales d\xE9sormais
-% - Les macros de xstring sont \long
-%------------------------------------------------------------------------------
-% v1.7a 28/2/2013
-% - Correction d'un espace parasite dans \xs_removefirstsyntaxunit
-%------------------------------------------------------------------------------
-% v1.7b 29/7/2013
-% - La date contenue dans \xstringdate est d\xE9sormais conforme
-%------------------------------------------------------------------------------
-% v1.7c 13/10/2013
-% - les macros impliqu\xE9es dans \IfStrCase et \IfStrEqCase sont d\xE9sormais \long
-%------------------------------------------------------------------------------
-% v1.8 07/12/2018
-% - affectations globales supprim\xE9es (sauf pour \groupID) afin de ne pas
-% surcharger la pile de sauvegarde
-% - nettoyage du code, corrections de lourdeurs et maladresses
-%------------------------------------------------------------------------------
-% v1.81 09/12/2018
-% - bug dans \IfInteger, c'est \xs_ifx{\empty\afterdecimal} et non pas
-% \xs_ifx{\empty\xs_afterdecimal}
\ No newline at end of file
+
+ H I S T O R I Q U E
+------------------------------------------------------------------------------
+v1.0 4/7/2008 : - Package achev\xE9.
+ 7/7/2008 : - Package publi\xE9 sur CTAN.
+------------------------------------------------------------------------------
+v1.1 15/8/2008
+ - Le package ne n\xE9cessite plus LaTeX et est d\xE9sormais utilisable sous
+ Plain eTeX.
+ - Ajout des macros \IfInteger et \IfDecimal.
+ Pour cette derni\xE8re, la partie enti\xE8re et la partie d\xE9cimale sont
+ r\xE9cup\xE9rables dans les compteurs \integerpart et \decimalpart. Ce
+ qu'il reste apr\xE8s qu'un caract\xE8re non attendu soit rencontr\xE9 est
+ dispo dans \xs_remainafterdecimal
+ - Correction d'un bug dans \tokenize :
+ suppression de l'expansion avec \normalexpandarg pour \xE9viter le bug
+ avec les lettres accentu\xE9es dans l'exemple : \tokenize\aa{\xE9\xF9}
+ - Am\xE9lioration du code de la plupart des macros.
+ - \xE9criture d'une routine \xs_newmacro d\xE9finissant les macros.
+ - Suppression de tous les compteurs grace \xE0 \numexpr.
+ - Nouvelles fonctionnalit\xE9s internes dans :
+ \IfSubStr
+ ajout des chaines se trouvant avant et apr\xE8s l'occurrence test\xE9e
+ dans les sc \xs_behind_IfSubStr et \xs_before_IfSubStr
+ \StrCount
+ a) ajout de ce qui se trouve apr\xE8s la derni\xE8re occurrence dans la
+ sc \xs_StrCount_afterlastocccur
+ b) la macro ne d\xE9pend plus d'aucune autre
+------------------------------------------------------------------------------
+v1.2 23/8/2008
+ - Am\xE9lioration du code de \StrMid \StrGobbleLeft, \StrLeft,
+ \StrGobbleRight et \StrRight \xE0 l'aide de la nouvelle macro
+ \xs_StrSplit_i
+ - Nouveau test \IfStrEq qui compare 2 chaines
+ - Nouveau test \IfEq qui compare 2 chaines (ou 2 nombres si les 2 chaines
+ contiennent un nombre)
+ - Correction d'un bug dans \xs_formatnumber. La macro n'envisageait pas le
+ cas o\xF9 son argument \xE9tait vide ce qui faiasait planter
+ \IfDecimal{}{V}{F} et \IfInteger{}{V}{F}
+------------------------------------------------------------------------------
+v1.3 21/9/2008
+ - Am\xE9lioration du code, mise en place de r\xE9cursivit\xE9s terminales dans
+ toutes les macros r\xE9cursives, simplification de \xs_TestEqual en
+ utilisant \ifx
+ - Nouvelles macros \IfStrEqCase et \IfEqCase
+ Teste si une cha\xEEne est \xE9gale \xE0 plusieurs chaines donn\xE9es et
+ ex\xE9cute un code sp\xE9cifique
+ - Cr\xE9ation de la macro publique \StrSplit
+ Coupe la chaine en 2 \xE0 une position donn\xE9e
+ - Nouvelle macro \StrCompare
+ Compare 2 cha\xEEnes et renvoie la position du 1er caract\xE8re diff\xE9rent.
+ Renvoie 0 si elles sont \xE9gales.
+------------------------------------------------------------------------------
+v1.3a 29/9/2008
+ - Correction d'un bug : \expandafter#1
+ dans les macros \IfSubStrBefore et \StrBetween qui buggue si #1 est un
+ nombre > 9 !
+ - R\xE9 \xE9criture de \xs_returnfirstsyntaxunit et \xs_gobarg qui
+ deviennent purement d\xE9veloppables.
+ - R\xE9 \xE9criture de \StrLen
+ - Nouvelle macro interne \xs_cutafteroccur
+ Coupe la chaine apr\xE8s la ni\xE8me occurrence d'une sous chaine.
+ - Code am\xE9lior\xE9 de \StrMid, \StrLeft, \StrGobbleLeft, \StrRight,
+ \StrGobbleRight grace \xE0 \xs_cutafteroccur
+------------------------------------------------------------------------------
+v1.4 4/11/2008
+ - xstring traite ses arguments par unit\xE9 syntaxique, et donc toutes les
+ macros internes ont \xE9t\xE9 r\xE9-\xE9crites \xE0 cette fin.
+ - Le manuel a \xE9t\xE9 r\xE9-\xE9crit, rendu plus clair et mieux structur\xE9.
+ - Nouvelle fonctionnalit\xE9 : \expandarg
+ le 1er lex\xE8me de chaque argument est 1-d\xE9velopp\xE9 avant que la
+ macro ne soit appel\xE9e. Si un argument comporte plus qu'1 lex\xE8me,
+ il faut passer par \scancs*[1] pour 1-d\xE9velopper toutes les unit\xE9s
+ syntaxiques.
+ - Correction de 2 erreurs dans le manuel anglais : 0 est la valeur par
+ d\xE9faut dans \StrSubstitute et \StrDel
+ - Coh\xE9rence dans les nom des s\xE9quences de contr\xF4les temporaires qui
+ sont d\xE9sormais : \xs_reserved_A \xE0 \xs_reserved_E
+------------------------------------------------------------------------------
+v1.4a 12/11/2008
+ - Correction d'un bug dans \xs_StrSplit dans le cas o\xF9 l'argument
+ num\xE9rique est <1 : la 1ere coupure doit \xEAtre vide et le seconde doit
+ \xEAtre \xE9gale \xE0 l'argument.
+------------------------------------------------------------------------------
+v1.4b 16/11/2008
+ - Correction de 2 bugs dans \xs_returnfirstsyntaxunit
+------------------------------------------------------------------------------
+v1.5 31/12/2008
+ - Nouvelles fonctionnalit\xE9s dans la recherche de groupes par un
+ identificateur caract\xE9risant leur imbrication. Impl\xE9mentation de :
+ 1) \StrFindGroup
+ 2) \groupID
+ - Ajout des nouvelles macros g\xE9n\xE9riques \xs_read_reserved_C et
+ \xs_read_reserved_D
+ - Correction d'un bug dans \StrSplit : \StrSplit{{a}bc}{1}[\truc] faisait
+ que \truc contenait \xABa{a}\xBB.
+ - Correction d'un bug dans \xs_newmacro : l'argument optionnel \xE9tait
+ d\xE9tok\xE9nis\xE9 \xE0 tort dans les macros \xE9toil\xE9es.
+ - Dans \xs_newmacro, on doit choisir le num\xE9ro du dernier argument devant
+ \xEAtre d\xE9tok\xE9nis\xE9 dans le cas d'une macro \xE9toil\xE9e (sachant que
+ l'argument optionnel ne l'est jamais)
+------------------------------------------------------------------------------
+v1.5a 09/2/2009
+ - Nouvelle macro \StrExpand, sensible au mode d'exploration. La macro est
+ ind\xE9pendante du mode d'exploration et dispose de ses propres commandes
+ d'exploration : \expandingroups et \noexpandingroups
+ - R\xE9-\xE9criture de \scancs, qui devient triviale puisque d\xE9pendant de
+ \StrExpand. Il n'y a plus de version \xE9toil\xE9e et d\xE9sormais, \scancs
+ est sensible au mode d'exploration.
+ - Correction d'un bug dans \IfInteger : \IfInteger{2.0}{V}{F} affichait F
+ - Correction de bugs : mettre \let\xs_reserved_E\relax avant d'appeler
+ \xs_StrSplit_i
+ - Suppression des messages d'erreur, de warning et d'info. xstring devient
+ donc silencieux ;)
+ - Passage de 3 \xE0 2 compteurs
+ - Le manuel est d\xE9sormais plus color\xE9, en esp\xE9rant qu'il sera un peu
+ plus agr\xE9able \xE0 lire !
+------------------------------------------------------------------------------
+v1.5b 13/3/2009
+ - Modification d'un grand nombre de macros de telle sorte que vraiment
+ n'importe quel code peut d\xE9sormais \xEAtre plac\xE9 dans les arguments des
+ macros (comme par exemple des \if, \ifx ou autre, m\xEAme sans leur \fi, ce
+ qui n'\xE9tait pas possible jusqu'alors)
+------------------------------------------------------------------------------
+v1.5c 05/6/2009
+ - Correction d'un bug dans \IfBeginWith : il faut appeler
+ \xs_returnfirstsyntaxunit pour l'argument #2 puis pour l'argument #1 et
+ non pas l'inverse pour que \xs_toks refl\xE8te ce qui se trouve dans #1
+ - Correction d'un bug dans \xs_returnfirstsyntaxunit au cas o\xF9 #1 commence
+ par un espace : mettre \xs_toks \xE0 0
+ - Correction d'un bug dans \xs_returnfirstsyntaxunit :
+ \xs_returnfirstsyntaxunit{{}}\truc
+ faisait que \truc se d\xE9veloppait en un espace.
+ - Correction d'un bug dans \xs_removefirstsyntaxunit o\xF9 le cas
+ \xs_removefirstsyntaxunit{ {b}}\truc
+ donnait \truc se d\xE9veloppant en \xABb\xBB au lieu de \xAB{b}\xBB.
+------------------------------------------------------------------------------
+v1.5d 28/3/2010
+ - Correction d'un bug dans \IfInteger : \afterinteger ne donnait pas le
+ bon r\xE9sultat. Par exemple avec 1.23 il renvoyait {} au lieu de {.23}
+ - \xs_formatnumber ne detokenize plus ses arguments (que m'est-il pass\xE9
+ par la t\xEAte pour que je code un truc comme ca ?), et donc
+ \afterinteger et \xs_afterdecimal ont des tokens ayant le bon
+ catcode
+------------------------------------------------------------------------------
+v1.6 24/10/2012
+ - Correction d'un bug dans \xs_cutafteroccur au cas o\xF9 #3<1
+ - \IfDecimal ne \detokenize plus l'argument.
+ - Nouvelle version de \tokenize qui enlevait les accolades si son argument
+ \xE9tait entre accolades
+ - Nouvelle macro \StrCut
+ - \xs_cutafteroccur_i ne produit plus d'espace ind\xE9sirable si #3 \xE9tait
+ \xE9valu\xE9 par \numexpr
+------------------------------------------------------------------------------
+v1.7 13/1/2013
+ - Correction d'un manque de rigueur dans les assignations concernant
+ \groupID : elles sont toutes globales d\xE9sormais
+ - Les macros de xstring sont \long
+------------------------------------------------------------------------------
+v1.7a 28/2/2013
+ - Correction d'un espace parasite dans \xs_removefirstsyntaxunit
+------------------------------------------------------------------------------
+v1.7b 29/7/2013
+ - La date contenue dans \xstringdate est d\xE9sormais conforme
+------------------------------------------------------------------------------
+v1.7c 13/10/2013
+ - les macros impliqu\xE9es dans \IfStrCase et \IfStrEqCase sont d\xE9sormais \long
+------------------------------------------------------------------------------
+v1.8 07/12/2018
+ - affectations globales supprim\xE9es (sauf pour \groupID) afin de ne pas
+ surcharger la pile de sauvegarde
+ - nettoyage du code, corrections de lourdeurs et maladresses
+------------------------------------------------------------------------------
+v1.81 09/12/2018
+ - bug dans \IfInteger et \IfDecimal, la macro \xs_afterdecimal est ind\xE9finie
+ et doit \xEAtre remplac\xE9e par \afterdecimal
+------------------------------------------------------------------------------
+v1.82 01/02/2019
+ - \xs_testopt n'est pas longue et provoque un bug dans \xs_IfStrCase et
+ \xs_IfStrCase lorsque #1 contient \par : \xs_testopt reste courte et
+ \xs_IfStringCase a \xE9t\xE9 modifi\xE9e pour que cela fonctionne.
\ No newline at end of file
More information about the tex-live-commits
mailing list