You can not set a value in one widget with another widget, that is the 
whole problem here. Your line 

<$set name="foo" value="<$transclude tiddler='$(mytestname)$' 
field='$(mytestfield)$'>"/>

won't work. You can just use the {{ }} syntax like this:

<$set name='foo' value={{$(mytestname)$!!$(mytestfield)$}}/>

although that line does nothing because the variable foo is only defined 
inside the start and end tags of the set widget so I am not sure what is 
supposed to happen there.

For the full thing, try this:

\define s.test.result()
<$transclude tiddler='$(mytestname)$' field='$(mytestfield)$'/>
<$set name="foo" value={{$(mytestname)$!!$(mytestfield)$}}>
foo is <<foo>> or $foo$ or $(foo)$.
</$set>
\end

\define s.test(testname,testfield)
<$set name="mytestname" value="$testname$">
<$set name="mytestfield" value="$testfield$">

<!--subtest isn't actually needed anywhere, just use $testfield$ -->
<!-- defining tests is also redundant because using the list operator takes 
care of that -->
<!-- use triple quotes around names like this to prevent trouble caused by 
names having " in them. -->
<$select tiddler="""$testname$""" field="""$testfield$"""><!-- this 
selection puts findings into this tiddler and field-->

<!-- Use the list operator so you only need one list widget here -->
<$list filter="[list[testDictionary##$testname$]]"><!-- gets the list of 
options for this test-->
<option value=<<currentTiddler>>><$text text=<<currentTiddler>>/></option>
</$list>
</$select>
:<<s.test.result>>:
</$set>
</$set>

\end


-- 
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/6527a085-e046-473c-a926-f4c5080e6c1c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to