Introducing: the Subsume plugin.

646 views
Skip to first unread message

David Gifford

unread,
Jul 16, 2021, 7:33:23 PM7/16/21
to TiddlyWiki
Hi everyone

For a while it seemed the problems would never end. But with the help of a lot of people, the Subsume plugin has finally landed. https://giffmex.org/gifts/subsume.html

Subsumes are a combination of links and sliders in one macro, so that you can either open a link to a subsumed tiddler or open a slider to view its contents without losing your place in the host tiddler.

Subsumes can be nested, so this plugin is also a way to do outlining in TiddlyWiki similar to Dynalist and Workflowy. Includes an editor toolbar, relinking of subsumes, excising as subsumes, and, with an addon, autocompletion as subsumes.

See the new video tutorial at the demo site. A big thanks to snowgoon88 and flibbles for their plugins, and to everyone who helped me out with previous versions (hideme, det) and now subsume

Feedback welcome and appreciated!

Brian Radspinner

unread,
Jul 16, 2021, 10:14:42 PM7/16/21
to TiddlyWiki
I like it! Simple but effective.

An option to think about: you could change the asterisk link to instead be a button that opens the tiddler in edit-mode rather than view-mode.It will save a step to go right to editing.

David Gifford

unread,
Jul 16, 2021, 11:07:55 PM7/16/21
to TiddlyWiki
Hi Brian

I thought about that. I wasn't sure if Subsume should be thought of more for readers / web viewers, who might be confused by the sudden switch to edit mode, or for writers, for whom edit mode would be one click less, thus more efficient.

Frédéric Demers

unread,
Jul 16, 2021, 11:22:46 PM7/16/21
to TiddlyWiki
I am a fan; nicely done; probably will become part of my core toolset!
thank you!

David Gifford

unread,
Jul 17, 2021, 8:07:48 AM7/17/21
to tiddl...@googlegroups.com
Glad you like it, Frederic, thanks for the encouragement




--
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/Kg5i94SOx_s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to tiddlywiki+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/tiddlywiki/c365754e-eea0-40d6-963b-544375065532n%40googlegroups.com.

ludwa6

unread,
Jul 17, 2021, 8:47:25 AM7/17/21
to TiddlyWiki
Just what the MD ordered, @Dave!  Just an hour into using this plugin, i am finding it makes a great complement to my TiddlyStreams workflow, as the final step in process of turning a Stream's hierarchy of nodes into a hierarchy of tiddlers...

Moreover:  it looks as though @Fred may have solved the problem of "flattening" nodes into a tiddler while preserving hieararchial presentation, which could serve as the bridge between Streams and Subs. 

Seems like that old Chinese wall between worlds of wiki & outlining is tumbling down at long last!

/walt

ludwa6

unread,
Jul 17, 2021, 9:14:16 AM7/17/21
to TiddlyWiki
Further to my last @Dave, i do have one little gripe:  after installation of Subsume plugin, a "References" dropdown appeared -redundant in my case, since i use the Shiraz plugin for its "References" table- and i can't make it go away. 

This gave me a sense of deja-vu, like maybe we had this problem before... And indeed, following my report of same issue w/r/t "hidemebacklinks" pill, you posted this fix, which worked in that case... But it didn't work this time. 

Anything you can suggest in this case, Dave?

/walt

David Gifford

unread,
Jul 17, 2021, 9:44:48 AM7/17/21
to tiddl...@googlegroups.com
Thanks Walt. Not being a user of Streams, I am wondering if you can share a file or screenshot of how you integrate the two.




David Gifford

unread,
Jul 17, 2021, 9:50:26 AM7/17/21
to TiddlyWiki
Hi Walt, This seems a bit different. I think the relevant tiddler is $:/plugins/flibbles/relink/ui/TiddlerInfo/References . But it is not a viewtemplate tiddler, and I deliberately avoided adding a view template tiddler. It should only affect a tab in info. Can you tell me what you have as your viewtemplate tiddler(s)?

ludwa6

unread,
Jul 17, 2021, 10:30:52 AM7/17/21
to TiddlyWiki
OK @Dave -but, as you can see here, it's a pretty long list i got by searching all System tiddlers for string "viewtemplate"... Even longer when i add all Shadow tiddlers with that string!  
NB: That TiddlyStreams wiki linked above does not have the problem; this is a ported-over list from my "mother" instance in TiddlyDesktop. 
Can you identify some potential conflict(s) in that list?

/walt

David Gifford

unread,
Jul 17, 2021, 10:49:21 AM7/17/21
to TiddlyWiki
Hi Walt, I meant which tiddlers do you personally have tagged as $:/tags/ViewTemplate. From your link I see it is the Kookma one, as you said. But I am not seeing the References dropdown you refer to, except the one that opens the Kookma table. Can you show me what the problem looks like, and I will see what is causing it?

ludwa6

unread,
Jul 17, 2021, 11:39:42 AM7/17/21
to TiddlyWiki
@Dave: see bottom of attached screenshot for the two "References" widgets.  Yours is folded, but when opened reveals a filter widget, with list of referenced tids, as you know... While the References table from Shiraz is partially displayed a bottom. 
Does this help?  
Also: This also shows what a Streams hierarchy looks like -below the HR that separates it from the several Subsume widgets above.  That's the best i can do to answer your up-thread request for a view of my workflow... But, as described in text of that tiddler, there is no good way at present to bring a Streams hierarchy into a single tiddler -not without some code magic that i don't know how to do yet!

SeeTwReferencesConflictAtBottom.jpeg

David Gifford

unread,
Jul 17, 2021, 11:46:52 AM7/17/21
to tiddl...@googlegroups.com
Hi Walt

Solution, hopefully:
1. Go to Advanced search > Filter tab.
2. Paste [tag[$:/tags/ViewTemplate]]
3. Tell me what you see there (so I can figure out how that showed up once you added subsume)
4. Open the one(s) that is giffmex, and untag it.




--
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/Kg5i94SOx_s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to tiddlywiki+...@googlegroups.com.

ludwa6

unread,
Jul 17, 2021, 12:16:52 PM7/17/21
to TiddlyWiki
Yes @Dave: it was $:/.giffmex/ViewTemplate/Backlinks ... So i removed the tag $:/tags/ViewTemplate from it, and problem is solved -for now.  Is it going to reappear if/whenever i update the Subsume plugin?
NB: it also has the tag "hidemebacklinks" on it, which i have left, not knowing if that's a problem or not.  ?

/walt

David Gifford

unread,
Jul 17, 2021, 12:24:13 PM7/17/21
to tiddl...@googlegroups.com
Hi Walt,

1. That tiddler is not part of Subsume. I will investigate to see if there is a reason it kicked in when you imported Subsume. My guess is that it was a coincidence.
2. Updating Subsume will not affect it now that you have removed the tag $:/tags/ViewTemplate.
3. The hidemebacklinks tag will not affect anything. That tag was only so you could drag the hideme tiddlers to your file.

So you should be all set!

David Gifford
Mexico team leader, Mexico City

Resonate Global Mission
Engaging People. Embracing Christ.
A Ministry of the Christian Reformed Church
resonateglobalmission.org



David Gifford

unread,
Jul 17, 2021, 12:27:59 PM7/17/21
to TiddlyWiki
Ah, now I see what happened. The backlinks tiddler you mentioned lists relink backreferences. Subsume, like hideme, grabs those.

Mystery solved. And my previous post is still true, you will not have that problem again unless you re-tag that backlinks tiddler with $:/tags/ViewTemplate

ludwa6

unread,
Jul 17, 2021, 2:44:11 PM7/17/21
to TiddlyWiki
Good to hear -thanks, Dave.  Now i can enjoy a care-free experience of Subsume :-)

/walt

.... 

TW Tones

unread,
Jul 17, 2021, 8:02:33 PM7/17/21
to TiddlyWiki
David,

Thanks for publishing this. Nice, functional and specific and reminds us of the transclude to macro which is easy to forget.

The only suggestion I would make for a future version is to set a tiddler $:/config/author-mode to yes and only display the Asterix link (to view/edit) if it is yes. Otherwise this can be hidden once publishing. Alternatively this will "open the tiddler if clicked out of author mode" and "open it for edit in the author mode".

Also I believe there may be a way to wrap a group of subsumes, or set a tiddler field (class) so they are not double spaced but still live in different lines in the edit mode.

Love your work
Tones

David Gifford

unread,
Jul 17, 2021, 9:31:36 PM7/17/21
to tiddl...@googlegroups.com
Thanks Tones! And I will keep your suggestions in mind for a later version, if I get to that point. I am not sure how flexible the details disclosure element is to including other things. I only recently discovered that one could put links in them.

Also, I am not possessive, so if anyone sees a way to tweak the plugin and present their adaptation as their own, regarding your suggestion or others that might arise, I will be flattered, and relieved to not have to do it myself.

I think I want to play with this plugin a few months before I revisit it. It really in a sense represents a new way of writing. Why footnote when you can subsume? Why have appendices at the end when they can be subsumed anywhere in the text? Why add arguments and examples in the text itself, when they can be subsumed as other tiddlers? Why not just write the bare skeleton or overview, and subsume the rest?

FYI I don't think of the asterisk as only for authors. Readers will want to: a) open a tiddler from a subsume in order to print it,b) open it to grab and share its url, or c) open it because it is too ar indented in a multilevel nest of subsumes, and the text is too squished.

But I understand what you mean. While the asterisks, in my opinion, aren't distracting, there is value in reading the text without them. Blessings.

--
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/Kg5i94SOx_s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to tiddlywiki+...@googlegroups.com.

TW Tones

unread,
Jul 17, 2021, 11:43:24 PM7/17/21
to TiddlyWiki

David,

Responses in line

Thanks Tones! And I will keep your suggestions in mind for a later version, if I get to that point. I am not sure how flexible the details disclosure element is to including other things. I only recently discovered that one could put links in them.

I have become somewhat of a master with the html details tag in tiddlywiki, so do ask if you are interested some quick tips;
  • you can place wiki text inside the summary tags to provide more information of the contents, eg it may contain a list but you could indicate the number of items with count of items {{{ filter..count[]] }}}
 

Also, I am not possessive, so if anyone sees a way to tweak the plugin and present their adaptation as their own, regarding your suggestion or others that might arise, I will be flattered, and relieved to not have to do it myself.

Understood, a healthy way, and my view as well. Thank you.
 

I think I want to play with this plugin a few months before I revisit it. It really in a sense represents a new way of writing. Why footnote when you can subsume? Why have appendices at the end when they can be subsumed anywhere in the text? Why add arguments and examples in the text itself, when they can be subsumed as other tiddlers? Why not just write the bare skeleton or overview, and subsume the rest?

I think deeply living a tool is a great way to learn about it and its possibilities. They say after the novelty of the new it is wise to exchange nuance for the novelty to understand more deeply.  The result is expertise. It also makes it easier to ask others for help because it becomes easier to ask pertinent questions.
 

FYI I don't think of the asterisk as only for authors. Readers will want to: a) open a tiddler from a subsume in order to print it,b) open it to grab and share its url, or c) open it because it is too ar indented in a multilevel nest of subsumes, and the text is too squished.

In my view there are readers, writers (authors) and designers. Each may have there most desirable settings. We are often one of more of these at a time.  I try to understand the different requirements and when it has value permit different uses. In the long run I hope to be cognisant of this with everything I build. I raise it hoping people will provide feedback. So often when we design something we may have the best insight to the possibilities and way to alter the solution to accommodate different uses.
 
Regards
Tones



David Gifford

unread,
Jul 18, 2021, 8:27:27 AM7/18/21
to tiddl...@googlegroups.com
Thanks for the responses Tones. I am thinking, eventually, a sidebar series of radials to choose between 4 options:
Open to edit or Open to view, with each of those options having the additional options of Link as asterisk or Link as whitespace (  x3)

But right now we are getting ready to travel to the US to get vaccinated as a family, so I have other things to focus on. And again, I want to use it for a while first. This plugin opens the Adjacent Possible, so I want to explore what that might be.




--
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/Kg5i94SOx_s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to tiddlywiki+...@googlegroups.com.

stan...@gmail.com

unread,
Jul 18, 2021, 9:48:45 AM7/18/21
to TiddlyWiki
I am looking at Walt's posting below and wondering how he got Subsume to work with Streams.   I had a wiki with Streams and added Subsume; when I went to add content using Streams, the carriage return <CR> would just position the cursor in the next line in the same block, rather than create a new block.  I assume that there is a keybinding that is overwritten somewhere, but I just don't know where to start looking.  

In any case, my first use of Subsume is a grand success.  I was writing sections of an article and encapsulating then using the extraction tool.  Now, if only I could solve the <CR> problem...

Thanks,
Stan

stan...@gmail.com

unread,
Jul 18, 2021, 1:08:12 PM7/18/21
to TiddlyWiki
My problem seems not to be from the integration of Subsume and Streams.  I was using David's Notelines 2 as the base Tiddlywiki and if I add Streams, but not Subsume, I get the same behavior - a <CR> does not create a new block.  

In any event, I used Subsume this weekend to write an article.  How nice it was it write modularly, in a manner that made sense and was perfectly efficient.  

David, do you have any idea what in Notelines 2 might be the offending keybinding?
Thanks, in advvance,
Stan

David Gifford

unread,
Jul 18, 2021, 2:38:59 PM7/18/21
to tiddl...@googlegroups.com
Hi Stan

Walt's screenshot tells me that Streams and Subsume are in separate sections. Not so much integrated as juxtaposed.
Subsume is edited in edit mode and appears above in view mode.
Streams is edited in view mode and appears below in view mode.

Unfortunately I don't know anything about keybindings. If you mean keyboard shortcuts, yes, Control Panel > Keyboard shortcuts, see the last three items.

autolist-newline Add a newline and list markup if in a list Enter

autolist-indent Indent a line in a list Tab

autolist-unindent Unindent a line in a list shift-Tab

That is most likely the problem! Even so, that is strange, since Streams and Noteline are in different contexts (view vs edit). Feel free to tweak Notelines to your needs, with other keyboard shortcuts or whatnot. Blessings,

David Gifford
Mexico team leader, Mexico City

Resonate Global Mission
Engaging People. Embracing Christ.
A Ministry of the Christian Reformed Church
resonateglobalmission.org


--
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/Kg5i94SOx_s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to tiddlywiki+...@googlegroups.com.

stan...@gmail.com

unread,
Jul 18, 2021, 8:58:22 PM7/18/21
to TiddlyWiki
David, I know that Subsume works in edit mode and Streams works in View mode.  However, we can remove Subsume from the picture, as Streams does not work with Noteline.  If I add the Streams plugin to Noteline, create a tiddler and go to View mode, hitting the enter/return key should create a new block, but instead I get a new line, i.e. a carriage return.   

A shortcut would be a keystroke or keystroke sequence  that performs a functions and keeps the user from having to type the longer function name.  A binding is a function assigned to a keystroke (or combination like shift- or control- ).  I don't think that is the problem here, but I will keep fiddling around!  Many thanks for the many contributions!
Stan

stan...@gmail.com

unread,
Jul 18, 2021, 9:06:23 PM7/18/21
to TiddlyWiki
David, I'm here looking at Control Panel -> Keyboard Shortcuts and I think we are saying the same thing after all.   
Thanks,
Stan

On Sunday, July 18, 2021 at 2:38:59 PM UTC-4 David Gifford wrote:

Sapphireslinger

unread,
Jul 18, 2021, 10:35:56 PM7/18/21
to TiddlyWiki
David, thank you so much for this Subsume plugin. May I ask how to use it in a list filter?

This works:

<$list filter="[collection[foo]sort[title]]">
<$details summary={{!!title}}>
<$transclude field="text" mode="block"/>
</$details>
</$list>

This does not work:

<$list filter="[collection[foo]sort[title]]">
<$subsume summary={{!!title}}>
<$transclude field="text" mode="block"/>
</$subsume>
</$list>

Nor does this:

<$list filter="[collection[foo]sort[title]]">
<<subsume {{!!title}}>>
</$list>

Brian Radspinner

unread,
Jul 18, 2021, 10:50:59 PM7/18/21
to TiddlyWiki
@sapphireslinger give this a try:

<$list filter="[collection[foo]sort[title]]">
<$macrocall $name=subsume tid=<<currentTiddler>>/>
</$list>

Sapphireslinger

unread,
Jul 19, 2021, 2:10:30 AM7/19/21
to TiddlyWiki
Brian, thank you so much! It works!

David Gifford

unread,
Jul 19, 2021, 8:09:31 AM7/19/21
to TiddlyWiki
Wow, nice to wake up to find a question and someone already answered it! Thanks Brian

scot

unread,
Jul 19, 2021, 4:00:04 PM7/19/21
to TiddlyWiki
Thanks @ David Gifford for another great tool.

Hello @Brian Radspinner,
Can you tell me how to expand the filter to include additional tiddler fields other than title.
e.g. {{!!f1}}

The example below doesn't work.

<$list filter="[object-type[task]sort[title]]">


<$macrocall $name=subsume tid=<<currentTiddler >>/>
{{!!f1}}
</$list>

Thanks,
Scot

Brian Radspinner

unread,
Jul 19, 2021, 4:25:50 PM7/19/21
to TiddlyWiki
If you overwrite the shadow tiddler $:/plugins/giffmex/subsume/macro/ with the following:

\relink subsume tid
\define subsume(tid:"" field:"text") <details><summary><$view tiddler="$tid$" field="title"/><$link to="$tid$">&nbsp;&nbsp;*&nbsp;</$link></summary><span class="indent1"><$transclude tiddler="$tid$" field=$field$ mode="block"/></span></details>

...you can then specify a field to display besides text, but text will be the default if you leave it off. Example:

<$list filter="[collection[foo]sort[title]]">
<$macrocall $name=subsume tid=<<currentTiddler>> field="f1"/>
</$list>

scot

unread,
Jul 19, 2021, 5:12:39 PM7/19/21
to TiddlyWiki
Thank you for quick reply Brian.
i will give it a try.

Kind Regards,
Scot

Flibbles

unread,
Aug 10, 2021, 9:23:30 AM8/10/21
to TiddlyWiki
Hey David Gifford,

I'm noticing you're integrating with Relink by using the inline "\relink" pragma. I'd strongly recommend you change it so your plugin uses the relink whitelist instead. You just need a tiddler named:

$:/config/flibbles/relink/macros/subsume/tid

whose contents is: title

The reason for doing this is because right now, Subsume DEPENDS on Relink being installed, or else your plugin doesn't work. Your macro page reads the "\relink subsume tid" and it doesn't know what to make of it, so it stops reading pragma wikitext right there and never processes your macro.

If you use the whitelist trick, then Subsume works just fine without Relink, but automatically integrates with Relink if Relink is present. Also, this allows end-users to disable or modify your Relink integration without overriding your macro shadow tiddler.

Good luck!
-Flibbles

David Gifford

unread,
Aug 10, 2021, 9:31:32 AM8/10/21
to tiddl...@googlegroups.com
Thanks Flibbles! I will get to that right away!




Reply all
Reply to author
Forward
0 new messages