Hi Mark, Nice solution! Saq is the developer behind toggle and cycle operators. As much as I know toggle is a listop operator and that is the reason for such behaviour. Of course Saq can explain this much better than me.
Best wishes Mohammad On Sun, Jan 3, 2021 at 11:43 PM 'Mark S.' via TiddlyWiki < [email protected]> wrote: > Ok, I think you can do it without the list widget using this instead of > the action-listops: > > <$action-setfield $tiddler=<<tid>> $index="mode" $value={{{ > [<tid>getindex[mode]compare:string:eq[author-mode]][<tid>getindex[mode]compare:string:eq[presentation-mode]]+[toggle[author-mode],[presentation-mode]] > }}} /> > > The thing thing is, I don't quite understand how toggle works, and I feel > either toggle is buggy or the documentation is. If you don't use it with > the +[xxx] construction, it will use the entire pool of tiddlers to output > at least one tiddler name. But it will put out exactly one tiddler name. > And what is the difference inside of a filter between a "list" and a "title > list" ? > > At a very minimum, this line is grammatically incorrect: " If neither is > present, the first parameter takes precedence is added to the list." > > (Probably wants an "and" before "is" ) > > On Friday, January 1, 2021 at 9:37:10 PM UTC-8 Mohammad wrote: > >> Hi Mark, >> >> Yes, the first loop is not necessary in all cases except one, if a user >> or another action sets a third value in that index of data tiddler. >> As toggle is a listops operator, it does not toggle the whole value, so >> you may see your code has appended a value to the list of >> current values. >> This issue happened when I tried to use the code for a page control >> button to switch the day/light palette. >> >> Best wishes >> Mohammad >> >> >> On Sat, Jan 2, 2021 at 12:37 AM 'Mark S.' via TiddlyWiki < >> [email protected]> wrote: >> >>> Hi Mohammad! >>> >>> Interesting! But the first list loop doesn't seem to be necessary. >>> >>> On Friday, January 1, 2021 at 6:46:14 AM UTC-8 Mohammad wrote: >>> >>>> I use data tiddler (Json tiddler) to store settings and configs of a >>>> plugin or other tools. >>>> >>>> Below is an example how to toggle/switch a value in a data tiddler >>>> (e.g. myTest) >>>> It uses a pair of *key*: *mode* and *value*: *author-mode / >>>> presentation-mode* >>>> >>>> *Go to *https://tiddlywiki.com/ and create a tiddler and give a try! >>>> >>>> >>>> <$vars tid="myTest"> >>>> >>>> <$button>Toggle >>>> <$list >>>> filter="[<tid>getindex[mode]!match[author-mode]!match[presentation-mode]]"> >>>> <$action-setfield $tiddler=<<tid>> $index="mode" $value=""/> >>>> </$list> >>>> >>>> <$action-listops $tiddler=<<tid>> $index="mode" >>>> $subfilter="+[toggle[author-mode],[presentation-mode]]" /> >>>> </$button> >>>> >>>> ;Result >>>> :<$text text={{{[<tid>getindex[mode]]}}}/> >>>> </$vars> >>>> >>>> >>>> >>>> >>>> Best wishes >>>> Mohammad >>>> >>> -- >>> 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/15017eed-b72e-4848-bf2c-f7223fcd062fn%40googlegroups.com >>> <https://groups.google.com/d/msgid/tiddlywiki/15017eed-b72e-4848-bf2c-f7223fcd062fn%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/a6e9aa12-f79b-4518-af11-302c474e7c7an%40googlegroups.com > <https://groups.google.com/d/msgid/tiddlywiki/a6e9aa12-f79b-4518-af11-302c474e7c7an%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/CAAV1gMAcRT4ibMF5mWn7OJ%2Bj5nGY3utdiKQdx1cp96_jst%3Ds1A%40mail.gmail.com.

