Added to TW-Scripts.

On Tuesday, February 26, 2019 at 11:31:52 AM UTC+3:30, Eric Shulman wrote:
>
> On Monday, February 25, 2019 at 11:18:49 PM UTC-8, S. S. wrote:
>>
>> I'm having a problem understanding WHY example 2. BREAKS down.
>> I did not even know how to give this post an appropriate title!
>> I would appreciate if someone could explain it to me.
>>
>
> OK... Let's see if this helps:
>
> TiddlyWiki macro definitions are NOT functions in the traditional 
> programming sense.  Although input "parameters" can be passed to them, and 
> they "return" something as a result, they don't actually "run" any of the 
> "code" they contain.  When a macro is invoked, it does two things (and ONLY 
> two things):
>
> 1) replace all occurrences of $paramname$ with the corresponding value 
> that was passed as an input parameter
> 2) replace all occurrences of $(variablename)$ with the current value of 
> the variable (assuming it is defined in the context of the "caller" of the 
> macro)
>
> That is ALL it does.  After doing the replacements, the resulting content 
> is "returned".  If the macro call is being used as a widget parameter, then 
> the result is simply passed along to the widget for further processing.  
> However, if the macro call is embedded directly in wiki content, then it is 
> rendered.
>
> In light of the above, when you invoke the following:
> 2. BREAKS: <$macrocall $name="test" list-tids=<<get-related-tiddlers>> 
> field="list" />
> the value of the "list-tids" parameter is simply passed along to the 
> widget and will NOT be the contents of the list field, but rather will 
> literally be:
> <$view tiddler=SomeTiddlerName field="list" mode="block"/>
>
> In contrast, when you use <$wikify> on the macro, you are forcing it to be 
> rendered and then capturing that result in the variable 
> "GOT-related-tiddlers".  Thus, the <$view> widget contained in the macro 
> DOES get processed, and the result is then available to pass along to the 
> "list-tids" param.
>
> Also, I wonder if this use case was the primary reason for making the 
>> $wikify widget? If not, what was?
>>
>
> I would say it was a convincing reason, though perhaps not the only one.
>
> hope this helps,
> -e
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/tiddlywiki.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/d65bc6ad-78e0-4edf-a9f8-40228ef293bb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to