Pick a date and insert it in a field

Is there really no way to select a date in the standard TiddlyWiki dateformat (20150117190213631) and insert it in a field? I searched through various post in the forum and also looked for a plugin but there seems to be none?

My usecase is that I have various tiddlers which are all tagged “meeting” and I want a way to store the date on which the meeting was held. So I thought it would be a good way of storing the date in a “date” field to have filter options etc. Also I thought it’s a good idea to use the standard dateformat of Tiddlywiki which could make some things easier. But it’s obvious that entering 20150117190213631 is a pain and here would be a date picker handy.


PS: I hit tab thinking that would add a tab character, but I accidentally hit send instead. How do you indent bullets in Discourse aside from manually adding spaces?

I use projectify, so this would be nice to use. But I still don’t get it how to use it. Could you give me a hint, please? :pray:

Entering dates in fields

Thanks for all your answers!

I think I got it now. The thing which I didn’t understand was that you will not get a date picker next to the date field (like the color picker in projectify). So if you are in edit mode you don’t get a date picker. Instead you create a button in the edit mode and when you save it you can pick the date and then it gets inserted into your date field!

I still don’t find a way to use the datepicker of projectify. How is the macro called?

Sorry for taking long to reply.

For projectify, write {{|| $:/plugins/nico/projectify/ui/buttons/TodoDueDate}} into your tiddler. It is not a macro but a transclusion with template. The || is important. That means you’re transcluding the current tiddler with a template. For more info on transclusions, see: https://tiddlywiki.com/#Transclusion%20with%20Templates

I also found an alternative to the datepicker plugin. It's About Time! — TiddlyTools: "Small Tools for Big Ideas!" (tm). The datepicker plugin is a widget, while this is a macro. It may not have the timezone issue I mentioned.

Have a great day!

Thanks, this worked. But I realized that when I have regular meetings I need to have for every meeting a unique title and the best way for me was to store the date in the title. I copied the New Journal button and modified it to my needs, so that I have a New Meeting button, which creates a title with a date in the format YYYY-0MM-0DD 0hh:0mm.

1 Like

@Taltessy I have “preached” before against putting data into a title and no where else (and using compound tiddler titles), can I suggests in your new Journal button modification you also set a journal-date field using the full tiddlywiki date serial number!

This then allows you to list and search for journal entries with all the features of tiddlywiki date handling without needing to reverse engineer the date eg; days operator, simple comparisons between dates and the display in any format using the view widget.

  • Now in 5.1.23 you can also make use of the ## format Operator
  • Now in 5.2.0 you can use the now macro in a filter ## now Macro
    which makes use of the tiddlywiki serial number. Thus you can compare dates in filters.

In general I totally agree that you should put as much as possible information in fields, so you can make use of all the great TiddlyWiki capabilities and e.g. filter tiddlers based on the information in the fields.

But sometimes it’s really hard for me to choose a title. In TiddlyWiki every tiddler needs a unique title, which serves as the unique ID of a tiddler. This causes sometimes two problems:

  1. There are cases where finding a title is hard/annoying
  2. Sometime it is annoying that you can’t have multiple titles

Before using TiddlyWiki I used a Mind map tool called Freeplane, where every node in the mind map gets it’s unique ID and you can call the node title whatever you want (there could be the same node title multiple times in a mind map). You link then to another node through the ID and not with the title. This is sometimes more handy when you just want to through out (fast) some information and the connection between ideas is preserved through the connection of the nodes.

For example when I want to document settings from application A and application B which have similar settings. In Freeplane I would do a node for every application followed by child nodes like Application ASettingsAppearanceTheme. Then I would do another node for the other applications like Application BSettingsAppearanceTheme. Then I would create an overall node Application and this would look like:

  • Applications

    • Application ASettingsAppearanceTheme
    • Application BSettingsAppearanceTheme

I would then store the information in the node details (which is similar to the tiddler text field). The advantage of Freeplane in this case is that this would be faster than compared to TiddlyWiki (in my limited experience), because a shortcut creates a new node and the new node is automatically connected (which means the information is related together) and also I don’t have to care about the title name (I think this is maybe the reason why @saqimtiaz created streams?). In TiddlyWiki I end up with weird titles like ApplicationA:Settings:Appearance:Theme, because I can’t have two Settings titles. How would you @TW_Tones (or someone else) solve this example in TiddlyWiki?

To came back to the topic, I also don’t know how to name meeting tiddlers unique without using the date. If I would have every Monday a meeting with John how should I create a unique title for every meeting?

Hi @Taltessy, I personally feel that there’s many “right” answers, and that HOW you use your wiki should drive your conventions, rather than the other way around - that’s the benefit of TiddlyWiki’s flexibility to me. I will even have different conventions in my project management wiki than in my other specific use-case ones. I will also say that you often DON’T HAVE TO CHOOSE between things like titles, tags, and fields.

I’ll be a little philosophical before returning to practical. My general rule for titling, structure, and organization is something like:

  1. Is the content easy to Search for?
  2. Is the content easy to Browse for?
  3. Is the content easy to Aggregate?

This leads me to how I use the tools of organization that TiddlyWiki provides.

  1. Search (out of the box) only returns titles, so readable and descriptive titles are best
    1. This is really where the common “I want GUIDs as my title” ask breaks down for me
    2. I think this makes <meetingname> <isodate> titles best for me (like “Debrief John Smith 2021-10-13”)
    3. In fact for this reason I think the ORDER of those is important as having a left-to-right hierarchy is handy for search results too - with date always the end acting as tie-breaker.
    4. In addition to search, this system works really well for Edit-CompText Demo — a demo of the Edit-CompText plugin for TiddlyWiki5 (snowgoon88.github.io) aka link autocomplete.
  2. Browsing is really what tags were built for, so I use them for that. They also become very handy for drag-and-drop sorting, but that’s off-topic here
  3. Aggregating is really most easily done with fields as @TW_Tones points out.
    1. What’d I’d add though is that I will often put the date IN the name (at the end) AND have a fields for dates (tickler/reminder date, due date, recurrence)

Nice to see another Freeplane user! I still use it often for brainstorming myself. I’m currently building an outliner for TiddlyWiki and using Freeplane as the model for how to quickly add and re-arrange content as it’s one of the best I’ve found.

Lastly you talk about ease/speed of setting up new tiddlers based on a complicated organizational scheme. I would say that there are plenty of tools that take that ALL away, so I’d think about that last. For some examples:

  1. For a tag-based structure, the “New Here” is perfectly built to add a new tiddler and tag it with the tiddler it was generated from, in-effect the same way that Freeplane links things. TiddlyWiki will handle tag renames by default!
    1. Note that if you use Relink Relink — flexibility when relinking renamed tiddlers (flibbles.github.io) renames are extended to your other custom fields too
  2. For a more custom system with fields and tiddler name suffixes, it can be done too, you just need to write the macros yourself and use templates. For example I use a template for all meetings tagged as “Debrief” like the one mentioned earlier “Debrief John Smith 2021-10-13”. In that template is a button on it that called “next” that handles all the organizational stuff for me in a single click to generate the next meeting:
    1. Marks current debrief as having been completed (status:done)
    2. Extracts the title suffix (date), adds the recurrence pattern (num of days), builds new title
    3. Copies all the other fields like project name, attendee list, etc. assuming they’ll be the same
    4. Generates the new debrief tiddler. Same one-click you’re used to, you just have write the logic once to suit your needs.

Sorry that got a little long. Just things I’ve learned through using TiddlyWiki for many, many years that I wished I knew earlier on.

3 Likes

@stobot wonderful
I really enjoyed reading your post.
I think this with to be documents somewhere.
Meat be copied to it’s own thread with HowTo category.

1 Like

Thanks @stobot for your wonderful and detailed explanation!

This is something I should ask myself every time creating a new tiddler!

Using tags is some of the hardest concepts to master in TiddlyWiki for me, because tags are handy on one side but it get’s messy when you use to much of them.

Freeplane is really nice if you want to create a hierarchy of something or if you use it for brainstorming (as you said). It’s also good for fast Todo-Lists. But the downsides of Freeplane for me are that there is no mobile version and it get’s hard if you want to store a lot of stuff in an un-hirarchical way. Also the GUI and the dependency of Java is so 90’s :smiley:

I’m really, really looking forward for that. If you need someone to test it, just ask.

1 Like

I understand why you feel this however I will suggest you will develop this skill over time. Perhaps because of my Knowledge and Information management experience this has never being a problem for me. Non the less it could be simplified.

I am considering a solution that offers a set of automatically generated titles and/or selectable to help with this. I may return and post a link to such a discussion. The key question is when to offer the titles for selection. For example in edit mode offer to rename tiddlers to one of a number of alternatives?

Finally the relink plugin is a key to supporting flexible tiddler names.

I and others have discussed this here Best practices: Tiddler Naming

In relation to the Original thread I thought I would show my date picker code which I made and intended to extend. It demonstrates some useful features and provides two date formats including the official TiddlyWiki serial date (at 12 noon). A time or dat/time picker can be created using the same method;

\define save-serial-date-actions() <$action-setfield $tiddler=<<tiddler>> $field=<<datename>> $value={{{ [all[current]get<html-date>split[-]join[]addsuffix[120000000]] }}}/>
\define set-date(datename:"touch" tiddler)
<$set name=datename value="$datename$-date">
<$set name=tiddler value="""$tiddler$""" emptyValue=<<currentTiddler>> >
<$set name=html-date filter="[<datename>addprefix[html-]]" >
<span title="set $datename$ date">
<$edit-text field=<<html-date>> type=date default=<<html-date>> inputActions=<<save-serial-date-actions>>/>
</span>
</$set></$set></$set>
\end

<<set-date>>

<<set-date journal>>