another sightly different way would be to automatically prepend the plugin 
name to the widget name to form an alternative name using an api function eg

defineExport('mywidget')

inplace of 

exports['mywidget']

where the 'defineExport' would set the addition 
exports[pluginname+'mywidget']

and have a pragma to 'focus' the name 'mywidget' to a particular plugin, 
within a tiddler.


On Saturday, October 15, 2016 at 7:44:43 AM UTC+1, BJ wrote:
>
> we could have some kind of namespace switching, eg  for widgets, we have 
> when defining widgets
>
> exports.['mywidget']exports.set = SetWidget;
>
> which sets up the name 'mywidget' . If we have the convention to 
> additionally provide another qualified name like this:
>
> exports['bj.mywidget'] exports.set = SetWidget;
>
> so another clashing definition of 'mywidget' could be
>
> exports['anon.mywidget'] exports.set = SetWidget;
>
> then we could have a pragma to 'tell' the parser (the html rule in this 
> case) to override the 'mywidget' with a choosen prefix.
> Obviously prefixes should be publish somewhere.
>
> BJ
> On Thursday, October 13, 2016 at 12:17:44 PM UTC+1, Jeremy Ruston wrote:
>>
>> > However, I have yet to see a plugin follow this guideline. Is this 
>> still enforced/encouraged?
>>
>> I think I wrote that right back in the beginning of TiddlyWiki5, when it 
>> was under development in 2011/12. Trying to learn from the experience of TW 
>> Classic, I was consciously trying to implement features that would help the 
>> community coalesce.
>>
>> As it's turned out, I don't think using the author prefix in the 
>> widget/macro name is a good approach, because of the inevitable wordiness 
>> it brings.
>>
>> Tobias' idea of a central registry is not bad; if you're interested in 
>> setting it up, then I suggest that structuring the registry as tiddlers in 
>> the tw5.com wiki, but open to suggestions.
>>
>> Best wishes
>>
>> Jeremy
>>
>>
>> On Thursday, October 13, 2016 at 9:24:18 AM UTC+1, Julian Kniephoff wrote:
>>>
>>> Hi Tobias
>>>
>>> that's good to hear in the sense that I now don't have to feel bad for 
>>> ignoring that guideline myself.
>>>
>>> The GitHub-Repository idea sounds very interesting, even independently 
>>> of namespacing issues. But in the long run, some kind of namespace system 
>>> could be very useful. After all, I might really really want to pick a 
>>> certain name for my widget, for example, even if I find out that it is 
>>> already taken. ;)
>>>
>>> Just a stray idea: Since TiddlyWiki borrows XML syntax (for widgets) 
>>> already, anyway, something similar to the XML namespace system could maybe 
>>> work?
>>>
>>> I imagine a plugin author would specify a namespace URI (maybe the 
>>> sourceURL that is already in the plugin.info file?) and then to use the 
>>> stuff from the frobnicate plugin, you would specify a namespace 
>>> attribute like
>>>
>>> <$frobnicate twns="http://juliankniephoff.com/frobnicate";>
>>> Every named entity referred to in here is looked up in my plugin first
>>> </$frobnicate>
>>>
>>> Or, if you want to explicitly disambiguate things or be more explicit in 
>>> general, you could give it a prefix:
>>>
>>> <$jk:frobnicate twns:jk="http://juliankniephoff.com/frobnicate";>
>>> Every named entity referred to in here with a "jk:" prefix is looked up 
>>> in my plugin first
>>> </$jk:frobnicate>
>>>
>>> As said, just an idea. Such a system would probably require much work 
>>> very deep within the core of TiddlyWiki. :/
>>>
>>> Best wishes,
>>> Julian
>>>
>>> P.S.: Sorry for the empty post earlier, I accidentally hit the wrong 
>>> button ...
>>>
>>> On Thursday, October 13, 2016 at 6:25:51 AM UTC+2, Tobias Beer wrote:
>>>>
>>>> Hi Julian,
>>>>
>>>> It's the first time I hear of this convention and I'm almost certain no 
>>>> one has been adhering to it.
>>>> At least I haven't been, since I wasn't even aware it existed.
>>>>
>>>> It would definitely avoid collisions, especially among plugin authors.
>>>>
>>>> If you look at my plugins, you'll find that many have a good chance for 
>>>> future incompatibilities owed to their generic names...
>>>>
>>>> http://tobibeer.github.io/tw5-plugins
>>>>
>>>> Eventually, rather than the above convention, I think we should have 
>>>> some public listing where authors can register some basic info about their 
>>>> plugins, especially things that may clash, like:
>>>>
>>>>    - parsers
>>>>    - widgets
>>>>    - filters
>>>>    - fields
>>>>    - css classes
>>>>
>>>> I find that to be a more sensible approach which would also make 
>>>> plugins a little more discoverable. Then a dev could verify if their 
>>>> desired name was already used by something else.
>>>>
>>>> This could be a simple github repo where authors are free to make a PR 
>>>> for their plugin listing.
>>>>
>>>> Best wishes,
>>>>
>>>> Tobias.
>>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWikiDev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tiddlywikidev+unsubscr...@googlegroups.com.
To post to this group, send email to tiddlywikidev@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywikidev.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywikidev/422d5881-b60e-40da-a0fd-40520aa42465%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to