The upcoming v5.3.0 release of TiddlyWiki introduces some significant improvements and new features related to some of TiddlyWiki’s most fundamental components: macros, widgets, operators and transclusion. v5.3.0 also contains several other bug fixes and improvements. All the changes are intended to be backwards compatible.
Visit the prerelease on the web, explore the release note and try out the new features. Let us know if the release note or documentation is not clear
Use the prerelease upgrader at https://tiddlywiki.com/prerelease/upgrade.html to make a test upgrade of your own single file wiki and try out your usual workflows. It is suggested that you use a copy of your real life wikis, ie complex wikis that you’ve tweaked and personalised over a long time, so that the new version is tested under tough conditions
Please wait until the official release before updating your day-to-day wikis, and remember the first rule of TiddlyWiki: to make sure to take (and verify) backups before doing anything risky.
This is all very exciting and I look forward to its release. I will continue to test and play with the prerelease to assist in the detection of issues, to come to understand it, and to find ways to explain new methods available once release.
Thanks @jeremyruston and all the contributors to getting it this far, there are numerous improvements that allow much more to be done within tiddlywiki than ever before and often in much simpler ways.
I want to encourage people, of all skill levels, to take a little time to play with one or more of the new features. Of course if you find a bug all the better but it also helps knowing what people struggle with.
Other than @jeremyruston’s backup guidance I also want to remind everyone that
TiddlyWiki endeavours to ensure backward compatibility, so all your methods and tricks should still work in the new release and you don’t have to learn any of these new methods, but when you do you will be empowered to do more, or use solutions made by others that do more.
This is a serious milestone event in TiddlyWikis history, and your reviews and contributions encouraged.
I think there are some macros left in the core, that use the “old” text substitution style. I’m pretty sure, they will be changed in the future.
For the rest there is no need to rush.
I think as soon as we start to replace macros with parametrized transclusions, they will not be 100% backwards compatible. At the moment 3rd party plugins can overwrite core-macros to change them, without changing core tiddlers.
Eg: If core-macros are replaced by transclusions, just for the sake of it, existing 3rd party plugins may stop working. So we need to be careful.
As I was reading through the documentation for the :then filter run prefix added, I expected to see it in the Filter Expression page as it sounded like essentially a mirror of the :else filter run prefix. Especially this section which I reference a lot - should :then be shown below the :else here?.
I then started digging around and saw a couple inconsistencies in which prefixes were mentioned on other pages of the documentation. The only complete list appears to be NFRP Named Filter Run Prefix but in that article there are no links to any of the other documentation. To get links to prefix documentation, the other (incomplete) lists are:
There are enough of these Filter Run Prefixes that maybe they should be consolidated and have a summary table like there is for Filter Operators (my most commonly referred to page) which looks like this:
It has all operators listed with links to documentation with a brief purpose and helpful flags on the end columns. So I was thinking we could use a similar format for Filter Run Prefixes, something like:
Now I’m aware that my personal style tends towards overly simplified, but reading / contrasting is often how I am able to understand, so it’s really helpful to see all options together and compared.
It would be possible to include the tables you have created. … But first we would need to get the first 2 doc only PRs merged
@jeremyruston Any chance to review the first PR with the breadcrumbs, so that I can fix the second one which now contains conflicts, due to the merge of the :then filter run-prefix.
In this learning phase I would see value adding documentation with real world examples and perhaps even some text on the ways to use features that go beyond the precise formal documentation.
This includes how to replace more fragile methods with new ones that will be available soon.
Can or could we submit documentation updates or changes to the pre-release as we do on tiddlywiki.com where it generates a PR?
It’s not that the current way we do documentation is wrong, concise and specific documentation is critical, but I feel especially with new changes, and certainly much of the existing documentation, we could add more value to help users, new or experienced to get more insight into features
What opportunities for solving problems does a particular feature enables?
eg substitute for constructing strings or tooltips using variables etc…
How to make use of a new feature to do common activities
For example currently using +[join[ ]] is a good way to generate tooltips with current and active content.
In 5.3.0 we can do this using the new substitute features to generate tooltips containing other values.
Present more examples that suit what we want to do, for example few features explain how to use them with variables, or values in tiddlers and fields as a parameter to that feature, but this is common.
For example using enlist and enlist-input, to save lists of titles, in a variable and use it multiple times rather than needing to use the same filter multiple times.
5.3.x will allow users to do this with functions, as filters and custom operators, but how can you make use of this?
If necessary we could build a separate “make use of” wiki or add it to the existing documentation.
I am happy to contribute to this type of documentation, and traditional changes, on the pre-release, but it would help if it were as easy as submitting changes to tiddlywiki.com
On the prerelease site the tiddler SystemTag: $:/tags/Macro links SystemTag $:/tags/Global which does not exist.
There is a colon missing. SystemTag: $:/tags/Global exists.
The first code-block in Procedure Definitions and the second code-block in Pragma: \procedure use \define.
Shouldn’t they use \procedure as \define creates a macro instead of a procedure?
i agree with this, it’s quite a bit confusing to get details on all the filter run prefixes, especially when one would assume they were collected somewhere like filter operators, widgets, etc. i find myself searching for “Filter Run Prefixes” looking for a master list in its own tiddler.
I think before anyone can meaningfully contribute, we need to get PR #7368 out of the door to establish a baseline of Mario’s current progress, and expand from there. Otherwise, much work may be for naught.
You might remember that I had to “cripple” the :then FRP documentation in order not to base it on that PR…
the new text substitution syntax for widget attributes, allows widget attributes to be assigned the value of a string with certain placeholders being replaced by their processed contents.
The emphasis here is on widget attributes.
Would it be possible for this to be extended to html attributes including arbitrary html tags and attributes?
If not it may be better to modify the examples in TiddlyWiki Pre-release tiddler to illustrate the attr= is only inside a widget, perhaps using an existing attribute in an existing widget.
Perhaps bold widget attributes for emphasis
Perhaps state “this is not valid on html attributes”.