The following would “set the stage” for future improvements. Do they qualify?
- Split up the huge vanilla stylesheet
- Enable listing of all controlpanel settings
The following would “set the stage” for future improvements. Do they qualify?
Split up, modularize, document better.
Any of those.
CSS is massive in TW (massive size and massive importance).
I want to say, also, much/most CSS in TW is fairly logical in it’s nesting.
That is because the basic HTML of TW is as near perfect as is possible.
A footnote, TT
So my oncall phone is an iPhone 6s. These were first released over 9 and a half years ago, and discontinued 3 years later. As a physical device it’s beyond the 5 year window.
It’s OS is iOS15, which is still supported by Apple, with the most recent release being March this year - approx 6 weeks ago.
Looking for a ecmascript version detection site, it seems it’s a mess since browsers may support a subset of features. But anyway, I ended up checking with this one: https://stackoverflow.com/questions/47374678/how-to-detect-ecmascript-version (which has three tests within the answers)
By comparison, my iPhone 14pro running the very latest iOS18, desktop Firefox (135) and desktop Chromium (136) all get the same answer on the first two, and “Version 14 / 2023” on the third.
Granted this is a pretty simplistic test, of a single device (and apparently the 6s is a bit unusual in it’s support longevity). Nonetheless, as of right now this 9.5 year old iOS mobile appears to be 2022 compatible… I think that puts a reasonable case that supporting a 2020 era dialect of JS should be fine?
If there are concerns about any given new JS feature, I’m sure a simple test page can be made that I and others would be happy to check and report back on with a variety of devices.
Table Syntax Idea That Does Not Brake Backwards Compatibility
This improves table readability, and editability.
| first row, first column |
=|second column|
=|third column|
=|fourth column|
| second row, first column| second column|
=|third column|
=|fourth coumn|
| third row, first column|
=| joined column|<|
=|third (fourth) column|
Conceivably it would be reversed, so that the symbol was at the beginning of each row. However this would not be backwards compatible.
The only potential problem I see with this is if the parser would need an indicator at the end of the lines as well . . . as a sign to continue.
ie:
| first row, first column |=
=|second column|=
=|third column|=
=|fourth column|fifth column|
|second row, first column|~|=
=|third column|=
=|>|joined forth/fifth column|
Yet another possibility is to leave the ending open altogether to save typing:
| first row, first column
=|second column|third column
=|fourth column
=|fifth column|
|second row, first column
=|second column|third column
=|fourth column
=|fifth column|
|third row, first column|second column|third column|fourth column|fifth column|
Thanks again to everyone for the feedback.
Thanks @etardiff that is a helpful scenario, and I think rules out making changes to the top level tripe brace syntax for the moment. I have amended the OP.
Thanks @Christian_Byron that’s a good point. As mentioned in the main 2036 thread, I would like to move the project to a sustainable and formal organisation. I think the key is to get more people involved by forming teams with responsibility for particular areas (eg @Arlen22 leading the MWS development). I would like to start having regular calls for core development, and I can imagine using the GitHub Projects feature as both the agenda and minutes of the planning parts of the meetings.
I think that makes sense. It would be useful for v5.4.0 to be a little visually distinct from earlier versions. I’ve updated the OP with a new section under the heading “Visual Refresh”.
Thanks @saqimtiaz I’ve updated the OP.
An important reason that TiddlyWiki does not restyle system controls is because it is very hard to do so without degrading the experience for users of assistive technology (screen readers etc).
Hi @twMat. I think splitting up the vanilla stylesheet could be done without affecting backwards compatibility. Picking up the control panel modifications is a good idea, and I’ve added it to the OP.
Thanks @wattahay that’s a good suggestion. As you note, it shouldn’t present backwards compatibility issues, and so we can address it after v5.4.0. I’d be grateful if you could make a GitHub ticket so that the idea is not lost.
This Comment Broke Me, I laughed so hard being a linux user myself idk why but I just found this Lil note funny like “yeah, for linux users we’ll just duct-tape it together ourselves”. Also the for the EoL cycle info,
I am sad to see IE support die (primarily due to HTA Hacking TW5) but i understand entirely why this needed to happen, HTA is already a bit unstable when it comes to plugins. I genuinely look forward to the possibilities that tw5.4.0 will bring
@saqimtiaz has kindly worked with me to create an initial project plan on GitHub:
There is also a GitHub ticket for discussing the project plan:
Project management is far from my comfort zone, so I would welcome help on this side of things.
These days, because of social platforms, I’d say @
and #
are universal even in note taking software.
A key advantage if tiddlywiki is open and readable source. I have long stood by the fact if you were stuck on a desert islan with a copy of empty.html or better yet tiddlywiki.com you would have sufficent information to develop almost anything by reverse engeneering the source.
According to the to-do list, Feather/Lucid is set to replace the current icon set. Would it be possible to allow users to install or switch between different icon sets seamlessly? Similar to palettes, an icon set could be selected and applied as desired. I appreciate the current thick icon set, and would like the option to retain it or switch to the Lucid icon set.
Perhaps the popular Extra editor toolbar buttons, discard and close, confirm and close and Confirm and keep open should be added to the core (even before 5.4) and make them optional see $:/plugins/telmiger/EditButtons
Can we support different outputs through the template with Filtered Transclusions? eg {{{ [tag[mechanism]]||TemplateTitle }}}
But there are a number of features above HTML/CSS that influences the output, such as the ability to reorder stylesheets, the ability to reference external CSS and the way tiddlywiki manages its components with CSS like colours and themes.
As a result I would love to see a systematic documentation of this to assist both script kiddies like me and experts alike to see how TiddlyWiki plays along with CSS. This meta layer can also assist sophisticated CSS users to build and test CSS and layouts.
I already found some methods to do this using functions that just pass through all titles and the parameter can include notes. Wether this is enhanced with a different syntax it could still use the same method and provide an alternative syntax to also use funtions.
For many real world functions removing duplicates is a good default, for example combining sets of tiddlers using a set of tags, no additional thinking is needed to remove the duplicates if a tittle is tagged by more than one tiddler.
Possible from a naieve perspective what about instead;
all.filter="filters that retains duplicates"
even if this just then passes a reformed filter to the filters= parmeter.[all[]]
and all[system]]
We should where possible find solutions that do not damage backwards compatibility and I belive we have not yet explored the suit of possibilities to solve many problems without breaking backwards compatibility, especialy when there are ways to introduce alternate mechanisiums, altered widgets (eg new parmeters) or additional syntax.
Not withstanding the above there may very well be things that need to be broken, but every effort should be made to avoid doing so.
[Edited] I have not used dupl;icates often enough to be sure but I expect outside of filters there are a limited set of widgets that someone would use when processing duplicates for maths purposes. What if we had a mathfilter? or specific syntax for filters that retain duplicates.
You know, Tones, you have an unusual choice in what you’re taking to a deserted island.
Me, I’m asking for a huge cache of food and fresh water. Oh yeah, and a boat.
Is there a standard, non-Vanilla theme way to have an editor open on a separate basis?
(This is just honestly a thought I had, and so if it’s not “inspired” then it’s not inspired thanks.)
The depth of this issue is that the editing is actually literally a separate temporary Tiddler, and that is not able to change from what I understand.
A side question I have had for a little while is: How easy is it to facilitate a slightly different theme, where the same edit-mode for tiddlers can basically get opened in a different river, or in the sidebar? In this case, there would be no re-opening at all - just 2 separately opened modes.
The two seem to be unnecessarily entangled too intrinsically anyway.
It’s been a while since I have been looking at it, but I think edit mode is a template. In summary: How inconvenient/incompatible is it to program the ability for users to implement a separate edit mode on a separate basis altogether? Plus it could open up more design possibilities than just this aspect of re-opening.
Smart ideas @wattahay but the community is ahead of you on this one.
You may find this better as a thread of its own. There are multiple opportunities to do what you want with the current versions, from multiple story rivers, edit in the sidebar, to open for edit in a new window, with or without closing the tiddler in the view template allowing a preview of the edit, this is why some favor wysiwyg, as its both at once.
You know what, I had searched for almost exactly this before, but couldn’t find anything like it.
However I wonder: with his/her amount of knowledge, would* it not be so easy to use the same template as the regular editor?
edit: By, “would it not” I mean literally perhaps “should it not” be that easy. If it were that easy, then the plugin would probably not have to re-do it for instance. It’s more of a thought about the core for the sake of enabling the community in this regard.
You mean an instance of any use for each of the UNused System tags does not exist in Empty?
Yes?
Taggery in TW is a triple: brilliant, fundamental, and ultra-flexy.
TAG MANAGER
My suggest here is to Enhance The Tag Manager to give it easier powers to … Create Tag Tiddlers for any unused System Tag. And give more options on tag manipulation in general. Should not add much code?
IMO the Tag Manager is underused and with a bit of love could live up to it’s name and become a major way to understand and improve one’s own wikis.
TT
My personal solution to missing system tags is a small package that list all system tags known to tiddlywiki, that I have collected in an additional sidebar > more tab. However I also use my Reimagin tags package that adds a lot of additional features to the tag pill dropdown.
The Question is what should move into the core, however none of these are breaking backwards compatibility.