Folks,

I built a Tiddler bundle to display info plugins in Control panel > Plugins 
> Info

Attached, just remove the .txt extension before dropping on a test wiki. 
Then if you follow the instructions in my last post you can make your own 
info bundle.

Only one core tiddler is changed for this 
example $:/core/ui/ControlPanel/Plugins although others will look as if 
they came with the core given I reused the naming standards.

Regards
Tony

On Saturday, September 7, 2019 at 10:54:42 PM UTC+10, TonyM wrote:
>
> Jeremy,
>
> For give me for being a bit of a hacker. I have played with making my own 
> tiddlers with a plugin-type of info, 
> which I note is NOT documented here 
> https://tiddlywiki.com/#Plugin%20Fields (perhaps this is understandable)
>
> However I found if I started to import multiple tiddlers, and renamed 
> $:/import to tiddlername (Capturing the import json), and modified the 
> tiddler type to info (deleting the status field) I created myself a hidden 
> plugin - not listed in plugins, containing the batch of tiddlers I almost 
> imported. Reloading I had all the shadow tiddlers appearing. Of course If I 
> edit a tiddler it looses its bold font in the "info plugin", and overwrites 
> the shadow.
>
> Disabling and reloading they are gone, but listed in the new info plugin 
> in italics and they open new empty tiddlers. The edited tiddlers from when 
> the plugin was active remain in the wiki as regular tiddlers, and can 
> actually be deleted, perhaps must be.
>
> Not only has this suddenly shed light on the plugin mechanism but I have 
> found away to capture importing tiddlers even from multiple JSON and 
> storing them in abeyance and made available when needed by enabling the 
> plugin. This has exposed a method by which I can load test data into a 
> wiki, or configuration settings. 
>
> This info plugin can be dragged and dropped to another wiki. Interestingly 
> after importing If I open the "info" plugin (not a plugin title), the 
> import mechanism offers to import the tiddlers. If it does so I expect It 
> will create standard tiddlers that would override if it where a plugin.
>
> Anyway there is a lot of potential here, even if we were to create a new 
> tiddler type of say "bundle", that used my proposed import but not get 
> replaced as per the idea documented here;
> Suggested Import mechanisium refactor for hackability #4231 
> <https://github.com/Jermolene/TiddlyWiki5/issues/4231>
>
> I can explain further the value in such an mechanism if you wish, but 
> perhaps the possibilities are obvious to you.
>
>    - Packed data tiddlers
>    - Restorable and removable data with a click save and reload to add or 
>    remove
>    - Canned sets of config tiddlers to toggle multiple tiddler states
>    - Ability to drag and drop to other wikis, a bundle defined in one 
>    wiki to another
>    - A method by which to host and distribute json files of tiddlers 
>    (which are not active in the source wiki) without needing to upload 
>    independant files to the host.
>    - A method by which a developer can commit tiddlers into a plugin 
>    bundle and selectively overwrite tiddlers to release a new version. Once 
>    happy commit these changes back into the plugin. 
>    - A way to distribute macros (excluding javascript plugin code) which 
>    can be selectively activated and deactivated. Especially good for designer 
>    tools.
>
> Apart from the import hackability I expect we would need a mechanism to 
> optional delete imported or overwritten (shadow) tiddlers, so they do not 
> remain in the wiki after the info plugin is disabled or deleted. And 
> perhaps a method to list such pseudo plugins. I wonder if the lack of this 
> clean up could cause problems already when people add/edit/delete plugins 
> because the overwritten tiddlers will remain as a legacy.
>
> Regards
> Tony
>
> On Saturday, September 7, 2019 at 11:06:37 AM UTC+10, TonyM wrote:
>>
>> Jeremy
>>
>> The idea of temporary plugin sounds interesting!
>>
>> Tony
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/b0cd46a1-5804-435e-bc20-b9d418f0e83c%40googlegroups.com.
[
    {
        "text": "<<plugin-table info>>\n",
        "title": "$:/core/ui/ControlPanel/Plugins/Installed/Info",
        "tags": "",
        "modifier": "dev",
        "modified": "20190908061422295",
        "creator": "",
        "created": "20190908054528499",
        "caption": "{{$:/language/ControlPanel/Plugins/Info/Caption}} (<$count 
filter=\"[!has[draft.of]plugin-type[info]] -[prefix[$:/temp]]\"/>)"
    },
    {
        "text": "Info",
        "title": "$:/language/ControlPanel/Plugins/Info/Caption",
        "tags": "",
        "modifier": "dev",
        "modified": "20190908054808212",
        "creator": "dev",
        "created": "20190908054753472"
    },
    {
        "text": "Info plugins",
        "title": "$:/language/ControlPanel/Plugins/Info/Hint",
        "tags": "",
        "modifier": "dev",
        "modified": "20190908054834767",
        "creator": "dev",
        "created": "20190908054818743"
    },
    {
        "created": "20190908055302085",
        "creator": "dev",
        "text": "<pre>{{!!filter}}</pre>",
        "wiki-owner": "Landscape sandbox",
        "title": "info-plugins.bundle",
        "tags": "$:/tags/Filter",
        "modifier": "dev",
        "modified": "20190908063009900",
        "filter": "[[$:/core/ui/ControlPanel/Plugins/Installed/Info]] 
[[$:/language/ControlPanel/Plugins/Info/Caption]] 
[[$:/language/ControlPanel/Plugins/Info/Hint]] [[info-plugins.bundle]] 
[[$:/core/ui/ControlPanel/Plugins]]",
        "description": "provide a meaningful description to display in 
AdvancedSearch: Filter!"
    },
    {
        "text": "\\define lingo-base() 
$:/language/ControlPanel/Plugins/\n\n\\define plugin-table(type)\n<$set 
name=\"plugin-type\" value=\"\"\"$type$\"\"\">\n<$set name=\"qualified-state\" 
value=<<qualify \"$:/state/plugin-info\">>>\n<$list 
filter=\"[!has[draft.of]plugin-type[$type$]sort[description]]\" 
emptyMessage=<<lingo \"Empty/Hint\">> 
template=\"$:/core/ui/Components/plugin-info\"/>\n</$set>\n</$set>\n\\end\n\n{{$:/core/ui/ControlPanel/Plugins/AddPlugins}}\n\n<<lingo
 Installed/Hint>>\n\n<<tabs 
\"[[$:/core/ui/ControlPanel/Plugins/Installed/Plugins]] 
[[$:/core/ui/ControlPanel/Plugins/Installed/Themes]] 
[[$:/core/ui/ControlPanel/Plugins/Installed/Languages]] 
[[$:/core/ui/ControlPanel/Plugins/Installed/Info]]\" 
\"$:/core/ui/ControlPanel/Plugins/Installed/Plugins\">>\n",
        "title": "$:/core/ui/ControlPanel/Plugins",
        "tags": "$:/tags/ControlPanel",
        "modifier": "dev",
        "modified": "20190908054647594",
        "creator": "dev",
        "created": "20190908054634054",
        "caption": "{{$:/language/ControlPanel/Plugins/Caption}}"
    }
]

Reply via email to