List filter for today's date, that won't change tomorrow

Hi guys

I would like my journal entries to list the tiddlers created and/or modified on today’s date, similiar to what the beginning of the recent tab has. How would I express that?

Try this ViewTemplate add-on: TiddlyTools/Templates/JournalListChanges

If a tiddler is tagged with “Journal”, then it gets the date of that journal tiddler from one of three possible sources:

  • A journal-date field in the tiddler which should contain a value that starts with YYYYMMDD.
    Note: this field is automatically set if the journal tiddler is created by using an “edit journal” button from a date popup in the TiddlyTools/Time/Calendar interface, or @TW_Tones enhanced “new journal” add-on.
  • If journal-date doesn’t exist or doesn’t start with an 8-digit date number, it falls back to parsing the tiddler’s title text (using the TiddlyTools/Time/ParseDate.js add-on parsedate[...] filter). This filter handles many different titles as long as they conform to ISO 8601 or RFC2822 standardized date formats.
  • If the tiddler title isn’t recognized as a valid date format, then it falls back to using the tiddler’s created field contents, which is a 17-digit TWCore standard UTC timestamp.

Once it has gotten the journal tiddler’s date, it then uses that date to show bullet lists of tiddlers created or modified on that date. Since this add-on is tagged with $:/tags/ViewTemplate, it’s output will automatically be shown below the text field contents of the tiddler.

enjoy,
-e

edit:
As of 18-August-2025, this add-on has been renamed
from TiddlyTools/Time/JournalListChanges to TiddlyTools/Templates/JournalListChanges

3 Likes

Very good.


Imagine: A scenario where a doctor needs me to create a record to the nearest quarter hour.

For instance: at 12:04 a.m. I had palpitations.

  • To record as at 12.00 a.m.

And at 01.46 p.m. seizures

  • To record as at 02.00 p.m.

Can you help my doctor?


p.s. This is vaguely related to the thread in that representation of time is an activity.

If today is yesterday, or the morrow, then a journalist journaling your journals might have a red face in the morning?

Give this a try:

Create a tiddler (e.g., “NewMedicalJournal”), containing the following text:

<$let
  ymdh=<<now [UTC]YYYY0MM0DD0hh>>
    mm={{{ [<now 0mm>divide[15]round[]multiply[15]] }}}
  time={{{ [<ymdh>] [<mm>pad[2]] [[00000]] +[join[]] }}}
 title={{{ [<time>format:date[TIMESTAMP]format:timestamp[]] }}}
   now={{{ [<title>format:date{$:/config/NewJournal/Title}] }}}>
{{$:/core/ui/Buttons/new-journal}}
</$let>

Notes:

  • ymdh gets the current year, month, day and hour
  • mm calculates the current minute, rounded down or up to the nearest 15 minute value. This computed value can be "0", "15", "30", "45", or "60".
  • time assembles a standard TWCore 17-digit timestamp. The mm value is padded to ensure it is always 2 digits, and the seconds/millseconds value is always “00000” since we only care about accuracy to the nearest minute.

Now here’s the clever tricky parts:

  • title takes the assembled 17-digit timestamp and uses format:date[TIMESTAMP]format:timestamp{...} to perform a “round-trip conversion” to/from a decimal UNIX epoch time value. This automatically adjusts the timestamp to handle “time overflow” conditions: If the computed mm value is "60" it adjusts to the next hour. Then, if this adjusted hour is "24", it adjusts to the next day, and if it is the end of a month, it adjusts to the next month and if it is the end of the year, it adjusts to the next year.
  • Then we temporarily redefine the TWCore’s <<now>> macro to just apply the {{$:/config/NewJournal/Title}} format to our computed datetime value. Note: In order to include the time in the journal title, you will need to set “Title of new journal tiddlers” in $:/ControlPanel > Info > Basics to DDth MMM YYYY 0hh:0mm
  • And finally, we transclude the TWCore’s $:/core/ui/Buttons/new-journal tiddler to show the “New Journal” button and perform the “create a new journal tiddler” actions. Since we’ve redefined the <<now>> macro, the “New Journal” button just uses our formatted timestamp, rather than gettng the actual current datetime value and formatting it.

To invoke the custom button, we just transclude {{NewMedicalJournal}}

enjoy,
-e

Also consider mohammads “interstitial journaling” and others by searching for “interstitial journaling” here in talk.tiddlywiki.