\doifinstring: strange characters on the output
Hi all, I noticed that \doifinstring produces quite strange output if a command follows immediately (or with any amount of spaces) after the substring I am searching for: -------------------------------------MWE \starttext \def\xxx{asdf \bf Z:\bf asdf} % strange \def\xxx{asdf \bf Z: \bf asdf} % strange \def\xxx{asdf \bf Z:: \bf asdf} % OK \def\xxx{asdf \bf Z: text \bf asdf} % OK \def\xxx{asdf \bf Z:{} \bf asdf} % OK \doifinstring{Z:}{\xxx}{yes!} \stoptext ----------------------------------OUTPUT fbf@yes! fbf@yes! yes! yes! yes! ---------------------------------------- If I insert another character, text or {} between them (with or without spaces), all is ok. I would like to ask what is the cause of this behavior and how to use the \doifinstring to prevent the "fbf@" on the output. Best wishes Tomáš
Hi all,
I noticed that \doifinstring produces quite strange output if a command follows immediately (or with any amount of spaces) after the substring I am searching for:
-------------------------------------MWE \starttext \def\xxx{asdf \bf Z:\bf asdf} % strange \def\xxx{asdf \bf Z: \bf asdf} % strange \def\xxx{asdf \bf Z:: \bf asdf} % OK \def\xxx{asdf \bf Z: text \bf asdf} % OK \def\xxx{asdf \bf Z:{} \bf asdf} % OK
\doifinstring{Z:}{\xxx}{yes!} \stoptext ----------------------------------OUTPUT fbf@yes! fbf@yes! yes! yes! yes! ----------------------------------------
If I insert another character, text or {} between them (with or without spaces), all is ok.
I would like to ask what is the cause of this behavior and how to use the \doifinstring to prevent the "fbf@" on the output.
On 10/31/2021 11:53 PM, Tomas Hala via ntg-context wrote: partial expansion of a protected macro where one doesn't expect it before i patch i let wolfgang check it ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
On 10/31/2021 11:53 PM, Tomas Hala via ntg-context wrote:
I would like to ask what is the cause of this behavior and how to use the \doifinstring to prevent the "fbf@" on the output. btw, you can prevent it by using lmtx
Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
I would like to ask what is the cause of this behavior and how to use the \doifinstring to prevent the "fbf@" on the output.
Hi Hans, ok, thank you, lmtx is a good way. Tomáš partial expansion of a protected macro where one doesn't expect it before i patch i let wolfgang check it btw, you can prevent it by using lmtx # Hans # # ----------------------------------------------------------------- # Hans Hagen | PRAGMA ADE # Ridderstraat 27 | 8061 GH Hasselt | The Netherlands # tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl # ----------------------------------------------------------------- Tomáš Hála -------------------------------------------------------------------- Mendelova univerzita, Provozně ekonomická fakulta, ústav informatiky Zemědělská 1, CZ-613 00 Brno, tel. +420 545 13 22 28 -------------------------------------------------------------------- http://akela.mendelu.cz/~thala
participants (2)
-
Hans Hagen
-
Tomas Hala