On 1/11/2025 10:21 AM, Henning Hraban Ramm wrote:
Am 11.01.25 um 00:19 schrieb Hans Hagen:
Yes, of course, but I’m often surprised by funny characters like #:
Well, there are reasons: It has to fit in the #1 .. #9 approach because these things are stored into tokens, so single character. Then one has to decide on what characters. There's also a performance issue because we don't want to sacrifice too much and these preamble tokens are "parsed" every time a macro is called so they better can be efficient.
In the end only a few users (mostly developers) will see the obscure ones (and understand why some are there). The \optional prefix enables these extensions. It's a bit like: I want to grab arguments with mandate {} and there is something so let's look it up. Or, I bet that one can grab \par's so lets the manual for that.
Thank you for the explanation! I guess you meant \tolerant instead of \optional?
yes, (i sometimes localy uise that as aliasm, sorry) .. consider that you just past the examn
Did you know that we can have #A..#E as well. So 15 parameters instead of 9? I still need to use that more (deep down).
That I knew. At least in mkvi/mklx mode. If I use even 4 params I lose count of them.
Don't worry, you don't want to know what I forget.
\tolerant\def\MyMacro[#1]#:#2% {\parameterdef\ikeepforgettingone1 \parameterdef\ikeepforgettingtwo2 \ifparameter#1\or % maybe here too (\ikeepforgettingone) \fi /\ikeepforgettingtwo/} \MyMacro[one]{two} \MyMacro{two} seems that i also need to let \ifparameter handle these defs ... so now you contributed to development (and i can delegate documentation of low levels to you)
Sure. I’m proud to have found several features that you forgot about ;)
ah, so you now make a nice certificate that you can put behind you when we chat
I’m not competent enough to rewrite e.g. https://wiki.contextgarden.net/System_Macros/Handling_Arguments
Sigh.
So you haven't reached Wolfgang level yet, and by the time you have, he bumped the scale up again, so don't sigh too much ... won't help, actually your upcoming manual will cover plenty, so more of a hurray.
I’m always aiming for the stars. ;) But my manual can’t be better than me, and I want it to be up to date and helpful – mostly for myself ;-P
Yes, I need to read the lowlevel manuals. But after taxes… (Also sigh.)
Hraban ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / https://mailman.ntg.nl/mailman3/lists/ ntg-context.ntg.nl webpage : https://www.pragma-ade.nl / https://context.aanhet.net (mirror) archive : https://github.com/contextgarden/context wiki : https://wiki.contextgarden.net ___________________________________________________________________________________
-- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------