Thank you Eric. When I got up one hour ago, I got myself the revelations that I had done the error of using the \whitespace trim pragma error! So I immediatly corrected my macro, before anything else (including going here to check any answer).
I got a way to produce the raw ouput I wanted. But it is not correctly rendered, even though by copying the output between pre and /pre I have the table output I want (that's shown at the bottom of the picture). Yes, I had to make some clever but ugly layout of the markup to achieve that goal of getting the raw text I needed.
But the table was still not well rendered. Yet, as I copied the output within "pre" and "/pre" tags I used to check my code, I got my table right!
And then I got the illumination :o)
In my copied-text table, I had no links! Whereas I got them between the "pre" and "/pre" tags! That was just because, in fact, I was not looking at the wikintext code I would have coded manually. Which means that I would need to reproduce that code as a result of my macro. Which would clutter the macro code. Way worse than using html for table as I've been told twice!
SO I will obey your wise counsel and go for direct html table coding.
However, here is the example code for getting a wiki text of a table (a simple wiki text with no links or other fancy stuff, including in what tou transclude (which was not hte case for the "criterion" filed in my case).
\define listCriterions()
|les <$count filter="[all[current]tagging[]butfirst[]]"/> critères liés aux {{!!title}}|c
| Code | Tests|Énoncé|h
<$list filter="[all[current]tagging[]butfirst[]]" variable="crit">|<$transclude
tiddler=<<crit>> field="code"/>|<$count
filter="[tag<crit>]butfirst[]" />|<$transclude
tiddler=<<crit>> field="criterion"/>|
</$list>
\end
The trick is to open the next widget after a pipe "|" at the end of a line, but to terminate that widget on the new line to avoid getting one very long line!
Thank you all for your help! I've learnt a lot once again.