wikilabs / plugins

TW5 plugins: https://wikilabs.github.io
30 stars 8 forks source link

Tagging Pragma `$:/tags/Pragma` that contain Macros Does NOT globalise them??? #72

Open pmario opened 3 years ago

pmario commented 3 years ago

Tagging Pragma $:/tags/Pragma that contain Macros Does NOT globalise them???

In the process of getting a TW working for your demo I discovered that adding $:/tags/Pragma to a Tiddler the pragmas break on items that have a $macrocall. But tagging those "pragma" tiddlers just $:/tags/Macro enables them to work!

Q: @pmario Is that the expected behaviour?

Originally posted by @TiddlyTweeter in https://github.com/wikilabs/plugins/discussions/56#discussioncomment-425704

pmario commented 3 years ago

@TiddlerTweeter See: http://localhost:8080/#Global%20Pragma%20Definitions ... Is this enough?

At the moment it's not possible to "globalize" macros, that are part of a tiddler tagged: $:/tags/Pragma. It would need to modify the core PageTemplate tiddler, which I don't want atm.

pmario commented 3 years ago

note to self: It may be possible to use $:/core/ui/PageMacros tiddler instead of $:/config/custom-markup/pragma/PageTemplate

BUT we need to take care, that the plugin doesn't overwrite an existing PageMacros tiddler. .. May be an "upgrader" can handle this job .... don't know if I like it that way

TiddlyTweeter commented 3 years ago

@pmario At the moment it's not possible to "globalize" macros, that are part of a tiddler tagged: $:/tags/Pragma. It would need to modify the core PageTemplate tiddler, which I don't want atm.

QUESTION: Is there any problem tagging a Tiddler that contains BOTH custom pragma and macros with BOTH $:/tags/Pragma AND $:/tags/Macro. ??

That is what I did in a couple of cases and it seems to work okay.

The point is that to have to maintain the macros separately, in their own Tiddler, is adding a level of difficulty to code maintenance. Yes?

I'd be FINE with having two tags on a Tiddler where needed (i.e. where you have both pragma & macros in it)--IF it is safe.

pmario commented 3 years ago

It is OK to tag them with both tags. .. The disadvantage is, that they will be "touched" 2 times during startup. ... Not the biggest problem, but it doesn't feel right.

As I wrote there is probably a second possibility using the $:/core/ui/PageMacros tiddler, which is handled by the core. ... But I think as a side effect it also would be touched several times while rendering. ... So not the biggest win. ..

pmario commented 3 years ago

I'll have to think about it.