| Deutsch English Français Italiano |
|
<ufs001$2dann$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Texboy <tex.boy@teaser.fr>
Newsgroups: fr.comp.text.tex
Subject: Re: \advance\toks 41{...}
Date: Sat, 7 Oct 2023 18:11:45 +0200
Organization: A noiseless patient Spider
Lines: 37
Message-ID: <ufs001$2dann$1@dont-email.me>
References: <564ae975-a378-42f5-8048-691605fdeea5n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 7 Oct 2023 16:11:45 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="9308589fd1e5b08d2141743018cfc880";
logging-data="2534135"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Zav2T+ehj0WHyZu5l7eGI9dTBmEeZHrQ="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:K0ow2RvDmyHHlmqWeE6mRiPYZwI=
Content-Language: fr
In-Reply-To: <564ae975-a378-42f5-8048-691605fdeea5n@googlegroups.com>
Bytes: 2263
Le 07/10/2023 à 17:45, Gérard Lemenn a écrit :
> Bonjour,
>
> Quelqu'un a une référence ou une idée de pourquoi on ne peut pas écrire :
>
> \advance\toks 41{<general text>}
> ou
> \advance\toks 41\toks 10
>
> Ce qui évidemment serait une concaténation de chaînes de symboles.
>
> Bien sûr on peut créer une macro \toks@advance qui permette cette syntaxe, mais l'idée serait de surtout de rendre plus rapide la concaténation de chaînes.
>
> Bonne journée.
La primitive \advance s'emploie avec la syntaxe suivante
\advance<registre de compteur><[by]><nombre>
\advance<registre de dimension><[by]><dimension>
\advance<registre de ressort><[by]><ressort>
\advance<registre de muressort><[by]><muressort>
Pour la première, elle agit sur un compteur et l'incrémente de l'entier
signé <nombre>. Le fonctionnement est identique pour les autres syntaxes.
Elle ne peut pas agir sur un registre de tokens.
Si vous souhaitez une macro qui ajoute un <texte général> à un registre
de tokens, vous pouvez définir une macro comme par exemple :
\def\addtotoks#1#2{#1\expandafter{\the#1#2}}
Notez que l'argument #2 n'est pas développé et donc
\addtotoks{\toks41 }{\toks10 }
pourra ne pas fonctionner comme attendu.