Many good ideas here so far. Let me just add that for some purposes, one might want not to strip away created/modified fields (maybe theyâre useful for your own troubleshooting down the line, etc.). You could also, over time, find that some older end-user content-type tiddlers still deserve a place in the timeline, so that an date cutoff on the timeline is not the right solution.
In my own case, I do have many such older tiddlers. And Iâm not interested in converting my administrative infrastructure into plugins (I do too much on-the-fly modifications to go through such rituals of closure), nor do I always want to sweep away my modified timestamps. But I do want lots of admin-related tiddlers to stay out of the recents tab that students and most other web-visitors see. Obviously system tiddlers are already left out, but lots of templates and tag-homes canât conveniently live in system-name-space.
You can instead add a field such as excludeTimeline
â and tweak your timeline so that if a tiddler has the excludeTimeline
field, that tiddler doesnât appear in the Recent tab.
Iâve modified my timeline macro this way (note two insertions of !has[excludeTimeline]
â without the first one, some date headings show up even though they have nothing listed beneath):
\define timeline-title()<$view field=title/>
\define timeline-link()<$link><<timeline-title>>
\define timeline(limit:100 format:[[DDth MMM YYYY]]subfilter dateField:modified)<div class=tc-timeline><$list filter="[!is[system]$subfilter$has[$dateField$]!has[excludeTimeline]!sort[$dateField$]limit[$limit$]eachday[$dateField$]]"><div class=tc-menu-list-item><$view field="$dateField$"template="$format$"format=date/><$list filter="[sameday:$dateField${!!$dateField$}!is[system]!has[excludeTimeline]$subfilter$!sort[$dateField$]]"><div class=tc-menu-list-subitem><<timeline-link>>
Note the !has[field]
filter step is excluding tiddlers based on finding a value in the field. So I make sure not just to create the field but to toss some value in there (perhaps in a batch operation with Commander), such as âtemplateâ or âtroubleshootingâ or âmeta-tagâ (or whatever) so that the excludeTimeline
field has a value in each case.