Hi Mat,
thank you very much for your feedback, you raise some important
points and a new Tinka version with quite a few changes is already
in the making.
Here are my thoughts:
- I don't think the "Create New Plugin"
button/content should be under the tab "Installed
Plugins" but instead warrants a tab of its own.
Yes, you are correct, it feels better to put it there, so this will
be changed in the next version.
- As someone new in the plugin packers business, I
am a bit uncertain what happens to my original
tiddlers. It seems they are fully replaced with
the created plugin. This makes it difficult to
make changes and I would strongly prefer that the
original tiddlers were left intact.
- Presumption of how a plugin is made up and how
Tinka creates one: the plugin is created by
copying+converting multiple tiddlers into a json tiddler.
At the same time, the original tiddlers are converted into
being shadow tiddlers.
Feedback: In creating different variants of
a plugin, which I'm just trying to do, I find it would be
valuable to access tiddlers that have previously been
converted to shadow tiddlers. (Specifically, I'm creating
a variant of the SideEditor and it uses all the tiddlers
of the current variant but also some new ones.) If
possible, I would like an option to include shadow
tiddlers in the Tinka search tool. (...or is a
tiddler somehow critically changed as it is converted into
a shadow tiddler, making it unusable for plugin content?)
Observation: When developing my
plugin, I need easy access to the tiddlers involved so they are
not prefixed with $:/. This, however, means that when the plugin
is created, they are hidded (shadowed) but with these titles...
which makes them "odd" in the shadow list and, more unfortunate,
they get placed (alphasorted) to the very bottom of the listing.
If someone is looking around for where these tiddlers are
hiding, then being at the very bottom of a long list is of
course not good.
Feedback: I'm not certain it's a "Tinka issue" as much as
a workflow issue, but I would like to use common titles during
development but have prefixes $:/ added as they are
converted into shadow tiddlers. Maybe this is something Tinka
could offer?
This is partly due to the way plugins work, namely the tiddlers
belonging to this plugin are stuffed into a JSON tiddler and
become shadows. Also I am afraid that I would like to do it this
way, as ideally the tiddlers in the plugin are the ones that get
executed on loading, as this is necessary to test if the plugin is
working. Copying those tiddlers and having them both as shadows
and as normal tiddlers may cause all kinds of problems.
The general philosophy is that all the tiddlers belonging to the
plugin should be shadow tiddlers, except when you are in the middle
of making changes, in which case a selected few are overwritten by
normal tiddlers. Also, you can get a list of all the tiddlers in the
plugin by just clicking on the plugin name in either the Tinka tab
or the normal Plugin tab in the Control Panel.
I do however agree with you, that it can be cumbersome to navigate
to the tiddlers. For that, I would like to add something like an
edit-mode, where a new tab is attached to the sidebar that displays
all the relevant tiddlers for the plugin for easy access.
The variants is something I did not think about when I removed the
capability of the "default" search to search for shadows. I will
have to think about this one and maybe add a third tab to the
searches that enable a search for shadow tiddlers. For now however,
the mechanics to create variants is via the backup functionality:
- You create your plugin
- Then you back it up
- Make the changes to create a new variant
- Pack the changes into the plugin, maybe add something to the
version to mark is as a variant (e.g. "0.0.2-variantA")
- Repeat for all the variants. If you want to make one active again,
simply restore it via the Backup-tab, the currently active one will
be backed up by default (if not already)
This way you will also only have 1 variant active at any given time
(which sounds like a good idea).
As for the creation ($:/-prefix) process: Since plugin tiddlers can
have interdependencies (and these are usually by title), it can get
very difficult to near impossible to implement a mechanic that
changes the tiddlers titles automatically while keeping all the
links intact. Therefore, when making a plugin, the tiddler titles
pretty much have to be the final titles. Again the above mentioned
"edit-mode" with the sidebar tab might make this process easier.
- "Plugin title" appeared clear... until I
read (full "path"). I suggest using the
same technique used in the standard "New Tiddler",
i.e add a faint gray "disappear-on-type"
instruction in the text field saying perhaps "e.g
$:/.../myPlugin". (...if this, in deed, is
what you mean).
You are right, this might be confusing, I will write a simple
helpfile that explains all of the metadata field involved to make
this more clear. Also, "Plugin title" might change to "Plugin path"
or maybe "Plugin tiddler" as it really doesn't have much to do with
the title of the plugin that the user perceives.
- ...further, I propose moving "Name:" to
first position in list, then "Plugin title"
and then "Author".
This field only applies for theme plugins, it does not have any
effects on the name of the plugin for normal plugins (if I am not
mistaken). Again, this has to be made clear somehow, I am not sure
how exactly though, as I would like to keep all possible metadata
fields displayed at any time, even though some of them might not
apply to the specific type of plugin currently being edited.
- For "Plugin type" I would love to get a
drop down menu with predefined suggestions in
addition to the possibility to make up a type. I
propose "predefined suggestions" as part of a
greater "community issue" to standardize
denominations and terminology for the coming
Federation. I'm guessing this will become
important then in order to find things (or am I
wrong?) Your whole plugin packer already does a
wonderful job for creating a standard for the meta
data labels (e.g "Author" as opposed to "Creator",
"Plugin-maker" etc), not to mention the fact that
your plugin encourages people to actually add this
data to begin with.
I fully agree, I will change this for the next version.
- "Description"; It is not unlikely that the
plugin author finds the plugin to be more
"obvious" than the later users. For this reason it
is, IMO, desirable to really encourage the author
to describe it properly, and the current field is
IMO too small for this. (An option would perhaps
be a field with "Link to documentation" or
some such.)
Although this encourages to type in a longer text, this is actually
the "name" of the plugin that will be displayed in the plugin tab.
Therefore this isn't much of a description, but more of a
descriptive title. I am not sure why TiddlyWiki does it this way
(instead of using the "name" field), but that is how it works as far
as I can tell (very confusing, I know).
Making it double the current length is probably still a good idea
though.
- "Version"; do I understand it right that typing
in "1" or "0.1" should automatically be converted
to "0.01"? (I made my first plugin the other day
and proudly tried to set it to version 1.0 but
this was converted. Maybe there are standards for
versioning that I'm not aware of?)
TiddlyWiki seems to only accept version-numbers in this format:
N.N.N-XXXXX where N is a number and X can be letters (and maybe
numbers too). therefore 1 is automatically converted to "0.0.1".
"1.0.0" would work the way you would expect. Again, this probably
has to be explained (and I will include this in the help-tiddler).
I apologize that this answer became very lengthy, still I hope I was
able shed some light on a few things. Again thank you very much for
your feedback, I will be sure to include the points you mentioned in
the next Tinka version.
/Andreas