Hi,

On Tuesday, April 15, 2014 11:29:40 PM UTC+2, Stephan Hradek wrote:
>
>
> And it's hard for me to understand what you mean. Maybe you best show some 
> real life examples? 
>
 
Okay, maybe this wasn't the best way to introduce the problem. I think 
there are two separate questions: (1) Why I would want to do this and (2) 
how I want it to function.

Whilst trying to adress (1) I'm not sure I am able to show you how valuable 
the suggested use case is or why one would even consider it. It's a 
conceptual question that relates to the way of using outlines for 
information/knowledge structuring and to a specific way of thinking. I use 
outlines to structure thoughts. As it happens most thoughts or propositions 
cannot be fully expressed as a simple parent/child statement - instead 
there are many parent/child relations possible, each covering different 
aspects of an idea, describing connections between ideas and thoughts and 
concepts and whatnot. For that reason it would be nice to be able to 
"contextualize" specific outline fragments by including them in different 
locations/contexts. Practial (artificial) example, while shifting to 
question (2):

tiddler named "cupcake ingredients":

* cupcake ingredients 
** flour
** sugar
** cocoa
** olive oil
** baking soda
** ...

tiddler named "cupcake reciepe":


* cupcake reciepe 
**{{cupcake ingredients}} 
** directions 
*** make some delicious cupcakes

should render:


   - cupcake reciepe
      - cupcake ingredients
         - flour
         - sugar
         - cocoa
         - olive oil
         - baking soda
         - ...
      - directions
         - make some delicious cupcakes
      
tiddler named "shopping list":

* shopping list 
**{{cupcake ingredients}}

should render:


   - shopping list
      - cupcake ingredients
         - flour
         - sugar
         - cocoa
         - olive oil
         - baking soda
         - ..
      
Obviously this can be solved by copypasting lists around, but even in this 
simple case it is helpful to have not redundancies but linking do the work. 
After all, if I decide to list "salt" under "ingredients" but forget to add 
it to the shopping list, I would bake myself some tasteless cupcakes, 
because I tend to be a mindless list-following groceries shopper...

Do you see how this can be helpful in more complex cases?

It starts to get really powerful for quick-and-dirty information 
aggregation where, for instance, I would tag several lists with tag "pro" 
and some others with "con" and have them listed somewhere deep inside 
another list so I get all pros and cons right in place where I need them 
*plus* additional information (e.g. why is it good/bad) encoded as subitems 
of these pro and con lists. Maybe I also want to use each of these lists 
independently inside another branch, resulting in completely different 
contextual meaning.

After thinking about it I realised that there are several difficulties 
here. For instance I would need (pseudo)markup like

* item 
** {{[tag[pro]]}}

to behave as if each item with tag "pro" was included as a subitem in the 
list with ** preceding each item, additionally stripping each * in the 
included lists and adding ** to every subitem in these lists. So if there 
was a tiddler "list" tagged with "pro":

* fact 1 
** explanation of fact 1 
*** some subitem of explanation

I would in fact need to behave {{[tag[pro]]}} like a loop with additional 
input pre-processing:

for each tiddler with tag "pro": 
  return 
    each line with additionally (current level-1) asterisks prepended if it 
is a list item OR
    each line with additionally (current level) asterisks if there are nolist 
items 
in the tiddler

And this seems to be a rather unfortunate hack. Of course I could implement 
a macro like:

* item 
<<include-lists "**" "[tag[pro]]">>

But this makes it hard to read and seems not clean either. So maybe it will 
be better to implement a parser module for this kind of markup.

* item 
**<<subitem-each [tag[pro]]>>

But which markup should I use? This seems to be a separate kind of content 
inclusion mechanism, alongside transclusion and macros.

Does this all look silly to you? Do you understand better now what I mean?
Best,
Stefan

-- 
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 http://groups.google.com/group/tiddlywiki.
For more options, visit https://groups.google.com/d/optout.

Reply via email to