Gatha Plugin: Experimental Release

Update Gatha 07.2

@telmiger - would you please check now!

Demo and Code

Thomas,

I missed the parent-plugin! I will add it.

I also think we can have a checkbox or button to toggle simple/advanced UI.
In simple, it can ask author to enter a plugin name, publisher and version
In advanced we can display all fields

I am just reluctant if this causes UI seems complex!

Thomas,
I forgot to answer this question! By default there is no list field
If you add readme, history, … e.g. click on add boilerplate tiddlers, the list field automatically appeared with new content
If use manually add the list field with some entries, and you click on add boilerplate tiddlers, then Gatha, keep the old list and adds new tiddlers

So, it is already there!

I could not find an easy way except I write my own list-links-draggable. I opened a ticked on GitHub to have emptyMessage for list-links-draggable (@pmario). That way we can show an empty zone and a message for drag and drop!
Please let me know if you have a simple solution for this.

About the list field:

Yes and no. It is in the tiddler, but not “in your nice form” where I still miss it. So the information is missing in the frontend view, as long as the plugin details/tabs preview is not open. Also, as a beginner I would assume to see all relevant fields in the nice form.

In my eyes it would be good to hide all unnecessary fields like Type and extra-tiddlers in the editor. Or even better: Show an editable form in the frontend view. Then I woudn’t have to click “edit” to update plugin information.

Thomas, I have done some change in 0.8.0 (I hope publish it tomorrow).

Information tiddlers (tabs) in edit mode

Information tiddlers (tabs) in view mode

Agree!
I am thinking to use casecades for this purpose!
If the type is hidden with current methid, it will be hidden for all tiddlers!
Give your opinion please!

Did you consider showing the form in view mode? That would free you from hacking the edit template. (I read somwhere that the EditText Widget supports editing the same tiddler since 5.2.0 or so.)

I am thinking to use an editable form! It seems edit template needs more hack!
The downside is I have to use a central form and open each plugin there! similar to what Tinka uses!

Not sure about this. I think (using the new cascade filters) you should be able to set up conditional view templates for normal tiddlers in view mode. Let’s assume you have a field “gata-version” in your tiddlers, where you save the version number of gatha whenever a plugin is exported. Then you could test in your view templates for the existence of this field and use your own form template to present all tiddlers that have this field.

In Tix v0.7 — A Novel Tiddler Experience you will find a description of the filters and templates I set up for a completely different tiddler construct. Most of it here: What defines a tiddler

You would have to do the opposite of what I did. I left the body template relatively untouched and rebuilt the rest. You would only have to replace the body part.

(Sidenote: It would be interesting to test, if our sollutions are compatible, if you do it that way.) I hope this is not too much information. Just ideas and hints.

Cheers, Thomas

The current Gatha works like this! It uses cascades both for view and edit mode!
I thought to have a button to toggle the table rows from lock for edit to editable. But I preferred to have a more native way! editing tiddler!

I follow your progress and will have a closer look!

In Gatha see for example $:/config/gatha/EditTemplateBodyFilters/PluginMetaData it does what you mean! but cascades do not work on fields and one has to use the viewmode!

Thank you!

Gatha seems worthy of a "Golden Smurf Award"

See … Thoughts on Badges - #7 by TiddlyTweeter

1 Like

That would be perfect.

For the rest: Ignore what I said, I see you are already there. (I will have to try to understand the field restriction though. Probably another day.)

The easiest way is to use css :

<style>
.tc-links-draggable-list>ul>:first-child:not(li):after{
content:"Drop here !";
}
</style>

But a custom macro would be better for accessibility. Another option would be to wrap the draggable list in a container together with a reveal widget for the hint, then position the reveal widget with position:absolute above the droppable list. When the list is not empty, hide the reveal.

2 Likes

Maybe the emptyMessage of the list widget could do that instead of the reveal.

@telumire

This is quite a conundrum :confused:

.tc-links-draggable-list>ul > :first-child :not(li) :after

Please explain what the bold stuff is doing? I’m a bit baffled. child combinator followed by :first-child pseudo class then rejecting li elements?

What am I not seeing?

Thanks!

@CodaCoder this css selector target the first child of the ul element inside tc-links-draggable-list, and if it’s not a li, display some content in the after pseudo element. As soon as the list is not empty, the first child becomes a list item (li) and thus the message disappear. I use the direct descendant selector on the ul in order to not accidentally select descendants inside the list items.

Hi Mark,

yes, plugin is not created in the production wiki, You need to export it.

It uses template to let users edit/view fields, click on the plugin full name e.g. $:/plugins/marks/test

Yes!

See the screencasts here: Gatha Plugin: Experimental Release - Plugins - Talk TW (tiddlywiki.org)

Gatha plugin seems to depend on tiddlywiki/jszip plugin(optional) for exporting zip folder

That is right! It is good to automatically install JSZIP when install Gatha. But as @pmario explained elsewhere, plugin dependency only work if both plugins come from the same library.