Folks,
Off line I am working on what I call “Link protocol handlers” and thought I would outline the idea which I think is a good one and see if anyone is inspired and have any other related novel ideas, I may include.
- I want some release of this to be included on the Personal Notebook edition I have built 85% of.
Key innovations?
- Use any fieldname (including text) and tiddlywiki automatically responds according to the prefix of the fieldvalue so you can use any arbitrary fieldname. The result is displayed on the current tiddler.
- Drop links/text on a tiddler to add them to a field in that tiddler
- Display, edit/rename fields from the view template with a click
The solution provides the following features;
On viewing tiddler it checks the non-system fields for content and tests it against a set of protocol prefixes
-
Example prefixes are http:// https:// file:// mailto:
-
Prefixes found for which we have a handler will generate an appropriate link in the current tiddler
-
I have also added some smarts to allow such links to be optional opened in a named “target” tab to reduce the number of tabs open. For example you can open all your tiddlywiki.com permalinks in the same tiddlywiki.com tab. R-click for a new window/tab.
-
Another feature is to turn any such link into a bookmark tiddler for more detailed handling.
I have also provisioned an optional drop zone on tiddlers, where you can drop links and have them added to a field on the tiddler - initially with a fieldname such as link-N so you can quickly gather links in a tiddler, or your wiki.
- Given we may want to rename such link-N tiddlers to any more meaningful fieldname I have added a feature that allows a fieldname to be renamed, retaining its value inline in a list/ on the tiddler.
- This can be used on any tiddler and field.
Outstanding items;
- Feedback and Ideas from the community.
- Add more prefixes and handling
- Toggle the display of protocol links on each tiddler
- Toggle the display of field rename or edit icons on each tiddler
- Not yet implemented I plan to allow each fieldname to have a value set that indicates which html input parameter to use on the edit-text widget, eg input=text/textarea/email/color… to use when editing inline, with freedom to use other methods.
- A Matching view option is likely as well.
Much later;
- Extend the protocol handling to include tiddlywiki content such as tiddlername, lists, filters and transclusions.
- Introduce the concept of virtual protocols to assign other tiddlywiki objects to tiddler such as buttons, dropdown selectors, config settings etc…