Folks,
I wanted to raise an Idea. I hope it is a really good one, that can be achieved very simply. Even with a plugin only.
Background
With the development of Bob, tiddlywiki multiuser "update platform" there is now less risk using iframes to access other wikis because if I (or someone else) makes a change in an iframe or other tab session we will not overwrite each others work.
- As a result I see value in embedding iframes in tiddlywiki from other Wikis. For example I have a core wiki that I want to register other wikis in. By placing an iframe in the tiddler that creates a "unique" wiki-tiddler defining my wiki, I can simply drag the wiki-tiddler over the iframe and drop it, and it will be added to the core wiki. I can then have a filtered bundle in the core wiki, I can drag back to get all wiki tiddlers from the core tiddler (this allows every wiki to know about every other wiki).
- A similar application is an iframe to a wiki that contains all my collected plugins, so it is simply a matter of viewing the tiddler $:/core/ui/ControlPanel/Plugins in an iframe and dragging the desired plugin to the current wiki.
I already have this running in proto-type and it is spectacular.
New idea
In the above I use an iframe with a url to a tiddlers permalink, however the result is I still see the sidebar, tiddler title and its edit buttons. This is fine in some applications, however if I could provide a specially formatted link that only showed in the iframe a single tiddler with its rendered content as occurs in the "Open tiddler in a New Window" I could customise the destination tiddler, and thus the look in the iframe however I wish. I am keen to drag and drop tiddlers on this window using the default import facility but ideally we could automatically import without showing the intermediate import tiddler, and people smarter than me could create special drop zones to drop say images and save as external images etc... The key advantage however is we can embed inter wiki tiddlers in a way that the user need not even know there is another wiki involved.
Possibilities
Perhaps your mind is spinning and you can see the potential however, if not here is a small list of the possibilities.
- Provide a window into other wikis to access shared tiddlers, plugins, stylesheets, code snipits, macros and more
- this way no need to locate and open the wiki to get something (just the iframe tiddler)
- Provide a drag and drop way to send tiddlers to other wikis and retrieve them
- Perhaps add ctrl-drag which asks move or copy, if move delete the original
- Review a central Task list or documents that pertains to this wiki without storing them in this wiki
- This would allow you to centralise shared functions in one wiki, but make it available in anyother wiki
- Assist in rapid development of wikis
- Provide training materials in one wiki that can be dragged and dropped into the current wiki (your own) as you proceed.
- Provide access to tiddletwiki.com to search for documentation without leaving the current wiki.
- This would allow a specific tiddler in a wikis content to be "published" anywhere it is accessible from at a tiddler level.
- If the external tiddler is served by a TiddlyWiki using noteself and the PouchDB (local browser save) these shared tiddler can even be updated, saved in the user browser.
- We could then start serving tiddler wiki "solutions" as only part of a tiddlywiki, in effect making tiddlers not only the logical atom of tiddlywiki but the publishable atom of tiddlywiki,
What is needed to achieve this?
A new way to link (URL) into a tiddler in another wiki, such that all you see (to start with) is that tiddler as rendered (with no other extraneous info), it is thus totally up-to the designer of the tiddler what will be seen.
Even bigger solution?
Do the above using a custom view assigned to the tiddler, including the UpdateView (additional to the view and edit templates) I proposed earlier so that the tiddler can appear as an interactive form not needing edit or view mode.
I already have a prototype for this as well.
Regards
Tony