> I’ve been trying to open multiple tiddlers as well and following
> closely the hints here (being a newbie). But I can’t get TiddlyWiki to
> do what I really want: open a dynamically generated list of tiddlers,
> typically gotten from a field = value request.
>
> What I can do, using the OpenStory macro or story.display directly
> is :
> 1) open the tiddlers listed in another tiddler, so a static call ;
> 2) open all tiddlers with a given tag ;
> 3) generate a list of tiddlers with prescribed values for given
> field(s), using ForEachTiddler.
>
> But I can’t mix the two. If I try OpenStory on the tiddler generated
> by ForEachTiddler, I get no answer at all. On the other hand
> story.display shows a list of tiddlers based on the *source* text of
> my dynamic tiddler  :-(


<<forEachTiddler>> dynamically generates and shows content.  However,
the output from <<forEachTiddler>> isn't actually stored as data
anywhere.  It is simply rendered into the story column when the
tiddler is displayed.  Thus, it is not available for use by
<<openStory>> [1] which needs *data* contained in the source text of a
stored tiddler.

Fortunately, what you are trying to do is actually very
straightforward to write as direct, inline javascript code [2] to
perform the entire process using standard TW core functions,
store.forEachTiddler(...), store.getValue(...), and
store.displayTiddlers(...)

<script>
   var titles=[];
   store.forEachTiddler(function(title,tiddler){
      var val=store.getValue(title,'fieldname');
      if (val==undefined) return; // no field... ignore this tiddler
      titles.pushUnique(val);
   });
   store.displayTiddlers(null,titles);
</script>

note: the above code assumes that for any given tiddler, the
'fieldname' in question contains a single tiddler title to be used.
However, if we were to suppose that the field contains a space-
separated *list* of tiddler titles to be used, then instead of simply:
      titles.push(val);
you could write something like:
      val.readBracketedList().map(function(title)
{titles.pushUnique(title);});

enjoy,
-e
Eric Shulman
TiddlyTools / ELS Design Studios
refs:
[1] http://www.TiddlyTools.com/#StorySaverPlugin
[2] http://www.TiddlyTools.com/#InlineJavascriptPlugin

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/tiddlywiki?hl=en.

Reply via email to