ok, here's a beta streams-fusion addon:
https://fastfreddy.gitlab.io/streams-fusion/
please note the troubleshooting step is required until the next Streams
release; beta users beware....

very open to constructive feedback; and/or different ways of shipping such
as rolled in the Streams plugin itself if it is good enough.

On Wed, 21 Jul 2021 at 06:59, Saq Imtiaz <[email protected]> wrote:

> That is definitely an oversight from when I added that at Jan's request.
> If you open an issue on Github, it will be resolved for the next release.
>
> On Wednesday, July 21, 2021 at 3:15:33 AM UTC+2 [email protected] wrote:
>
>> @saq
>> quick question: am trying to package my addon, am a bit of a newbie
>> unfortunately.
>> is it possible we need to modify this line (bold insert)
>> <$list filter="[*all[shadows+tiddlers]*tag[$:/tags/streams/root-buttons]]"
>> variable="btnTiddler">
>>
>> in $:/plugins/sq/streams/nodes-list-template ?
>> otherwise, it feels like my new button does not take when it is contained
>> within a plugin....even with the $:/tags/streams/root-buttons tag....
>>
>> thanks much...
>>
>> On Tue, 20 Jul 2021 at 07:58, Frédéric Demers <[email protected]> wrote:
>>
>>> a quick update to everyone;
>>>
>>> I am making steady progress on packaging this merging solution, hoping
>>> to release as a Streams plugin addon. I have repurposed the button from
>>> https://szen.io/stream/. I now have it also working as a Streams
>>> context menu, with keyboard shortcuts, and it can export sub-trees
>>> correctly by adjusting the depth levels of the bulleted/numbered lists.
>>>
>>> A few ideas I am going to try to roll in and release a beta by the end
>>> of this week....
>>>
>>> Cheers
>>>
>>> On Sat, 17 Jul 2021 at 09:06, Frédéric Demers <[email protected]>
>>> wrote:
>>>
>>>> with capture:
>>>>
>>>> On Sat, 17 Jul 2021 at 09:05, Frédéric Demers <[email protected]>
>>>> wrote:
>>>>
>>>>> nevermind, I think I solved it.... at least, significant progress
>>>>>
>>>>> here's the wikitext for the challenging nodes; renders pretty well:
>>>>>
>>>>> * <div>
>>>>>
>>>>> ''Streams'' uses the following tiddler fields to maintain the
>>>>> structure of a stream:
>>>>>
>>>>> * each node tiddler has a field `stream-type`
>>>>> * each node that has children, contains their titles in a list in the
>>>>> field `stream-list`
>>>>> * each node that has a parent, contains the parent's title in the
>>>>> field `parent`
>>>>>
>>>>> ''You can manipulate these tiddlers just as you would any other
>>>>> tiddlers, with filters and list and action widgets''
>>>>>
>>>>> </div>
>>>>> * To make it easier to work with Streams tiddlers and their nodes, two
>>>>> filters have been introduced. See [[Streams 0.2 improvements/Filters]]
>>>>> * <div>
>>>>>
>>>>> This is an example of a button that can export the content of the
>>>>> nodes of a tiddler whose title is in the variable `myTiddler` and save the
>>>>> combined text to a single tiddler:
>>>>>
>>>>> ```
>>>>> <$button> save to a single tiddler
>>>>> <$vars lb="
>>>>>
>>>>> ">
>>>>> <$action-setfield $tiddler="report" text={{{
>>>>> [<myTiddler>get-stream-nodes[]]
>>>>>  :reduce[get[text]addprefix<lb>addprefix<accumulator>] }}}/>
>>>>> </$vars>
>>>>> </$button>
>>>>> ```
>>>>> Note that this disregards the node hierarchy.</div>
>>>>> * <div>
>>>>>
>>>>> Similarly to export the combined text of the nodes as HTML you can use
>>>>> the `<$wikify>` widget:
>>>>>
>>>>> ```
>>>>> <$button> export as HTML
>>>>> <$wikify name="text" text="""<$list
>>>>> filter="[<myTiddler>get-stream-nodes[]]">
>>>>> <$transclude mode=block/>
>>>>> </$list>""" output="html">
>>>>> <$action-setfield $tiddler="report" text=<<text>>/>
>>>>> </$wikify>
>>>>> </$button>
>>>>> ```
>>>>>
>>>>> </div>
>>>>> * <div>
>>>>>
>>>>> Here is an example of a macro that can be used to export a stream
>>>>> using a custom HTML structure:
>>>>>
>>>>> ```
>>>>> \define print-row()
>>>>> \whitespace trim
>>>>> <$(innerTag)$>{{!!text}}
>>>>> <$list filter="[<currentTiddler>has[stream-list]]" variable="_NULL">
>>>>> <$(outerTag)$>
>>>>> <$list filter="[enlist{!!stream-list}is[tiddler]]">
>>>>> <<print-row>>
>>>>> </$list>
>>>>> </$(outerTag)$>
>>>>> </$list>
>>>>> </$(innerTag)$>
>>>>> \end
>>>>>
>>>>> \define print-stream()
>>>>> \whitespace trim
>>>>> <$(outerTag)$>
>>>>> <$list filter="[enlist{!!stream-list}is[tiddler]]">
>>>>> <<print-row>>
>>>>> </$list>
>>>>> </$(outerTag)$>
>>>>> \end
>>>>>
>>>>> \define export-stream(tiddler:"" outerTag:"article" innerTag:"section")
>>>>> \whitespace trim
>>>>> <$vars outerTag="$outerTag$" innerTag="$innerTag$"
>>>>> currentTiddler="$tiddler$">
>>>>> <<print-stream>>
>>>>> </$vars>
>>>>> \end
>>>>>
>>>>> ```
>>>>>
>>>>> Try the following:
>>>>>
>>>>> * `<<export-stream tiddler:Roadmap>>` to export using article and
>>>>> section tags
>>>>> * `<<export-stream tiddler:Roadmap outerTag:ul innerTag:li>>` to
>>>>> export as a list in HTML
>>>>>
>>>>> If you need a copy to clipboard button it would look something like
>>>>> this:
>>>>>
>>>>> ```
>>>>> <$button>
>>>>> <$wikify name="stream-html" text=<<export-stream tiddler:Roadmap>>
>>>>> output="html" >
>>>>> <$action-sendmessage $message="tm-copy-to-clipboard"
>>>>> $param=<<stream-html>>/>
>>>>> </$wikify>
>>>>> Copy stream to clipboard as HTML
>>>>> </$button>
>>>>> ```
>>>>>
>>>>> Similarly you can write recursive macros to output as just flat text
>>>>> (with no structure or hierarchy) or wiki text list syntax (assuming you
>>>>> have no multi-line content).</div>
>>>>>
>>>>> On Sat, 17 Jul 2021 at 09:01, Saq Imtiaz <[email protected]> wrote:
>>>>>
>>>>>> @fred
>>>>>>
>>>>>>
>>>>>>> I noticed my solution does not work so well for complex node
>>>>>>> content, as those in:
>>>>>>> https://saqimtiaz.github.io/streams/#Working%20with%20streams%20tiddlers
>>>>>>>
>>>>>>>
>>>>>>> The reason is that wrapping in <div> tags mangles them badly; I
>>>>>>> tried a few alternatives (<span>, more white space, ..), no success yet.
>>>>>>> Any suggestions?
>>>>>>>
>>>>>>
>>>>>> This is actually the real challenge and why there currently isn't a
>>>>>> default export option from Streams. Depending on the nature of the 
>>>>>> content,
>>>>>> it seems difficult to generalize a single export format that will work 
>>>>>> and
>>>>>> one of the common pitfalls is to think of Streams nodes as a list,*
>>>>>> which they are not.*
>>>>>>
>>>>>> A stream node is a tiddler which can contain any kind of content, and
>>>>>> not all kinds of content can be mapped to a list item. It might be easier
>>>>>> to set limitations in one's usage as to what to put inside of a node and
>>>>>> have an export format that works accordingly, rather than trying to come 
>>>>>> up
>>>>>> with a universal export format that works for all content. Hence my
>>>>>> suggestion of gathering real world user data to drive the process.
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to a topic in
>>>>>> the Google Groups "TiddlyWiki" group.
>>>>>> To unsubscribe from this topic, visit
>>>>>> https://groups.google.com/d/topic/tiddlywiki/-xTFWPwzq6g/unsubscribe.
>>>>>> To unsubscribe from this group and all its topics, send an email to
>>>>>> [email protected].
>>>>>> To view this discussion on the web visit
>>>>>> https://groups.google.com/d/msgid/tiddlywiki/a0431024-302d-4433-95f0-021234984ab0n%40googlegroups.com
>>>>>> <https://groups.google.com/d/msgid/tiddlywiki/a0431024-302d-4433-95f0-021234984ab0n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>> --
> You received this message because you are subscribed to a topic in the
> Google Groups "TiddlyWiki" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/tiddlywiki/-xTFWPwzq6g/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/tiddlywiki/73a8e0c1-0318-4132-bd78-0a339c93e611n%40googlegroups.com
> <https://groups.google.com/d/msgid/tiddlywiki/73a8e0c1-0318-4132-bd78-0a339c93e611n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/CAAY2DnPu5Qe3uao7Wp1W6kjn8UACbSBFmt%2BdBF14RGawiLhFpQ%40mail.gmail.com.

Reply via email to