texlive[49946] Master/texmf-dist: xstring (5feb19)

commits+karl at tug.org commits+karl at tug.org
Tue Feb 5 22:54:20 CET 2019


Revision: 49946
          http://tug.org/svn/texlive?view=revision&revision=49946
Author:   karl
Date:     2019-02-05 22:54:20 +0100 (Tue, 05 Feb 2019)
Log Message:
-----------
xstring (5feb19)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/generic/xstring/README
    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-05 21:53:56 UTC (rev 49945)
+++ trunk/Master/texmf-dist/doc/generic/xstring/README	2019-02-05 21:54:20 UTC (rev 49946)
@@ -1,8 +1,8 @@
                               _________________
 
                                xstring package
-                                   v 1.82
-                                 2019/02/01
+                                   v 1.83
+                                 2019/02/06
                               _________________
 
 This package provides macros manipulating strings for programming use.

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-05 21:53:56 UTC (rev 49945)
+++ trunk/Master/texmf-dist/doc/generic/xstring/xstring-en.tex	2019-02-05 21:54:20 UTC (rev 49946)
@@ -158,7 +158,7 @@
 
 As the arguments may contain any token, advanced users could have problems with catcodes leading to unexpected behaviours. These behaviours can be controlled: read page~\pageref{macrosetoilees}.\medskip
 
-Certainly, other packages exist (for example \href{http://www.ctan.org/tex-archive/macros/latex/contrib/substr/}{\nolinkurl{substr}} and \href{http://www.ctan.org/tex-archive/macros/latex/contrib/stringstrings/}{\nolinkurl{stringstrings}}), but as well as differences on features, they do not take into account occurrences so I found them too limited and difficult to use for programming.
+Certainly, other packages exist (for example \href{http://mirror.ctan.org/tex-archive/macros/latex/contrib/substr/}{\nolinkurl{substr}} and \href{http://mirror.ctan.org/tex-archive/macros/latex/contrib/stringstrings/}{\nolinkurl{stringstrings}}), but as well as differences on features, they do not take into account occurrences so I found them too limited and difficult to use for programming.
 
 \subsection{Motivation}
 I decided to write this package of macros because I have never really found tools in \LaTeX{} suiting my needs for strings. So, over the last few months, I wrote a few macros that I occasionally or regularly used. Their numbers have increased and become a little too dispersed in directories in my computer, so I have grouped them together in this package.

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-05 21:53:56 UTC (rev 49945)
+++ trunk/Master/texmf-dist/doc/generic/xstring/xstring-fr.tex	2019-02-05 21:54:20 UTC (rev 49946)
@@ -156,7 +156,7 @@
 
 Les arguments contenant des chaînes de tokens sont lus par \Xstring \emph{\US par \US\footnote{Sauf cas particulier, une \US est un caractère lu dans le code à ces exceptions près : une séquence de contrôle est une \US, un groupe entre accolades est aussi une \US. Voir également page~\pageref{developpementarguments}.}}, ce qui revient à les lire caractère par caractère lorsque ceux-ci contiennent des tokens \guill{normaux}, c'est-à-dire dont les catcodes sont 10, 11 et 12. On peut également utiliser \Xstring à des fins de programmation en utilisant des arguments contenant des séquences de contrôle et des tokens dont les catcodes sont moins inoffensifs. Voir le chapitre sur le mode de lecture et de développement des arguments (page~\pageref{developpementarguments}), la commande \verbinline|\verbtocs| (page~\pageref{verbtocs}), la commande \verbinline|\scancs| (page~\pageref{scancs}).\medskip
 
-Certes d'autres packages manipulant les chaînes de caractères existent (par exemple \href{http://www.ctan.org/tex-archive/macros/latex/contrib/substr/}{\nolinkurl{substr}} et \href{http://www.ctan.org/tex-archive/macros/latex/contrib/stringstrings/}{\nolinkurl{stringstrings}}), mais outre des différences notables quant aux fonctionnalités, ils ne prennent pas en charge les occurrences des sous-chaînes et me semblent soit trop limités, soit trop difficiles à utiliser pour la programmation.\medskip
+Certes d'autres packages manipulant les chaînes de caractères existent (par exemple \href{http://mirror.ctan.org/tex-archive/macros/latex/contrib/substr/}{\nolinkurl{substr}} et \href{http://mirror.ctan.org/tex-archive/macros/latex/contrib/stringstrings/}{\nolinkurl{stringstrings}}), mais outre des différences notables quant aux fonctionnalités, ils ne prennent pas en charge les occurrences des sous-chaînes et me semblent soit trop limités, soit trop difficiles à utiliser pour la programmation.\medskip
 
 Comme les macros manipulent des chaînes de tokens, il peut arriver aux utilisateurs avancés de rencontrer des problèmes de \guill{catcodes\footnote{Codes de catégories, en français.}} conduisant à des comportements inattendus. Ces effets indésirables peuvent être contrôlés. Consulter en particulier le chapitre sur les catcodes des arguments page~\pageref{macrosetoilees}.
 

Modified: trunk/Master/texmf-dist/tex/generic/xstring/xstring.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/xstring/xstring.tex	2019-02-05 21:53:56 UTC (rev 49945)
+++ trunk/Master/texmf-dist/tex/generic/xstring/xstring.tex	2019-02-05 21:54:20 UTC (rev 49946)
@@ -4,9 +4,9 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %                                                                    %
 \def\xstringname               {xstring}                             %
-\def\xstringversion              {1.82}                              %
+\def\xstringversion              {1.83}                              %
 %                                                                    %
-\def\xstringdate              {2019/02/01}                           %
+\def\xstringdate              {2019/02/06}                           %
 %                                                                    %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %                                                                    %
@@ -42,15 +42,15 @@
 \long\def\xs_gobarg#1{}
 \expandafter\def\expandafter\xs_gobspace\space{}
 \def\xs_deftok#1#2{\let#1= #2\relax}\xs_deftok\xs_sptoken{ }
-\def\xs_ifnxttok#1#2#3{\xs_deftok\xs_toktotest{#1}\def\__truecode{#2}\def\__falsecode{#3}\xs_ifnxttok_a}
+\long\def\xs_ifnxttok#1#2#3{\xs_deftok\xs_toksmatch{#1}\def\__truecode{#2}\def\__falsecode{#3}\xs_ifnxttok_a}
 \def\xs_ifnxttok_a{\futurelet\__futurtok\xs_ifnxttok_b}
 \def\xs_ifnxttok_b{%
 	\xs_ifx{\__futurtok\xs_sptoken}
 		{\afterassignment\xs_ifnxttok_a\let\__futurtok= }
-		{\xs_ifx{\__futurtok\xs_toktotest}\__truecode\__falsecode}%
+		{\xs_ifx{\__futurtok\xs_toksmatch}\__truecode\__falsecode}%
 }
 \def\xs_ifstar#1{\xs_ifnxttok*{\xs_execfirst{#1}}}
-\def\xs_testopt#1#2{\xs_ifnxttok[{#1}{#1[{#2}]}}
+\long\def\xs_testopt#1#2{\xs_ifnxttok[{#1}{#1[{#2}]}}
 \long\def\xs_exparg#1#2{\expandafter\xs_exparg_a\expandafter{#2}{#1}}%
 \long\def\xs_exparg_a#1#2{#2{#1}}
 \long\def\xs_exptwoargs#1#2#3{\xs_exparg{\xs_exparg{#1}{#2}}{#3}}
@@ -1220,4 +1220,8 @@
 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
+    \xs_IfStringCase a \xE9t\xE9 modifi\xE9e pour que cela fonctionne.
+    ------------------------------------------------------------------------------
+v1.83 06/02/2019
+      - mauvaise approche et mauvais fix dans la v1.82 : \xs_testopt devient
+        longue, pas le choix (et donc aussi \xs_ifnxttok)
\ No newline at end of file



More information about the tex-live-commits mailing list