<label for=<<qualify id>>>This is the label</label> <input id=<<qualify id>>/>
This is hand-made html code. how would I be able to get the input behave in tiddlywiki as if it was done by the button widget? could a pragma like \useIdInButtons be used to allow a code like <$button actions=<<myMacro>> id=auto/> which would construct an input with an id=<<qualify id>>? No other value than "auto" would be allowed for "id", making uniformed use of it fail and force coders to look at the doc? Le mercredi 28 avril 2021 à 17:34:14 UTC+2, [email protected] a écrit : > Hi Jean-Pierre > > On 28 Apr 2021, at 15:48, Jean-Pierre Rivière <[email protected]> > wrote: > > Thank you for the clarification. I understand your point of view. > > Now if I want to have a go at it, for instance so that my input buttons > can get an id from a parameter, how should I proceed? From where should I > start? I'm sure this is not trivial but I'm eager to try. > > > It’s essentially the same problem as we encounter when generating unique > state tiddler titles. Thus you could use the <<qualify>> macro like so: > > <label for=<<qualify id>>>This is the label</label> > <input id=<<qualify id>>/> > > The qualify macro returns its argument with a string of numbers appended > that is derived from the ancestor transclusions, making an ID that will be > unique within a transclusion. > > Best wishes > > Jeremy > > > regards. > > Le mercredi 28 avril 2021 à 12:32:33 UTC+2, [email protected] a écrit : > >> In a recent thread, Jeremy told me that having id elements is a bit of a >> problem because each tiddler can be transcluded more than once into any >> given tiddler' which would result into a broken html with a repeated id >> value. >> >> >> This is true. >> >> But if id are required, shouldn't it be up to the programmer to make sure >> there is no problem? Of course, the doc would tell that specifying id is a >> tricky things to be done with great precaution. But this is IMHO better >> that forbidding id specification altogether. >> >> As was the exposed, this has to do with WCAG requirements ignoring the >> CORRECT HTML (stated as accessible on official docs) >> <label><input/></label> are requiring <label for=foo/><input id=foo/> as >> the only validating way of accessible code. (with some variations for >> WAI-ARIA) >> >> >> Just to be clear, the core doesn't forbid using "id" attributes, it's >> perfectly possible to use them as long as care is taken. The thing that's >> particularly hard is to use IDs within a reusable component without the >> user of that component being aware of the mechanism. So, the core avoids >> the complexity of these techniques. >> >> Best wishes >> >> Jeremy. >> >> >> >> >> >> -- >> Jean-Pierre >> >> -- >> 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/d739e00f-ba01-4425-b0d0-9730d6524986n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/tiddlywiki/d739e00f-ba01-4425-b0d0-9730d6524986n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> > -- > 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/0805f885-ed1b-441a-9552-50758afe0b1fn%40googlegroups.com > > <https://groups.google.com/d/msgid/tiddlywiki/0805f885-ed1b-441a-9552-50758afe0b1fn%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- 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/4531f079-cb8d-40e3-a7a3-7817cb5568a3n%40googlegroups.com.

