1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-12-29 11:30:28 +00:00
TiddlyWiki5/editions/tw5.com/tiddlers/system/operator-macros.tid

60 lines
2.4 KiB
Plaintext
Raw Normal View History

created: 20150117152607000
modified: 20150127203427000
title: $:/editions/tw5.com/operator-macros
tags: $:/tags/Macro
\define .operator-suffix-name(suffixName)
<$macrocall $name=".if" cond="""$suffixName$""" then="<<.place '$suffixName$'>> = " else=""/>
\end
\define .operator-def(input,negationInput,suffix,suffixName,parameter,paramName,output,negationOutput)
<table class="doc-table">
<tr><th align="left">purpose</th><td>{{!!purpose}}</td></tr>
<tr><th align="left">[[input|Filter Syntax]]</th><td>$input$</td></tr>
<$macrocall $name=".if" cond="""$negationInput$"""
then="""<tr><th align="left">`!` input</th><td>$negationInput$</td></tr>"""
else=""/>
<$macrocall $name=".if" cond="""$suffix$"""
then="""<tr><th align="left">[[suffix|Filter Step]]</th><td><<.operator-suffix-name "$suffixName$">>$suffix$</td></tr>"""
else=""/>
<tr><th align="left">[[parameter|Filter Parameter]]</th><td><$macrocall $name=".if" cond="""$paramName$""" then="<<.place '$paramName$'>> = " else=""/>$parameter$</td></tr>
<tr><th align="left">output</th><td>$output$</td></tr>
<$macrocall $name=".if" cond="""$negationOutput$"""
then="""<tr><th align="left">`!` output</th><td>$negationOutput$</td></tr>"""
else=""/>
</table>
\end
\define .operator-examples(op,text:"Examples") <$link to="$op$ Operator (Examples)">$text$</$link>
\define .operator-example(n,eg,ie)
<div class="doc-example">
`$eg$`
<$macrocall $name=".if" cond="""$ie$""" then="""<dd>&rarr; $ie$</dd>"""/>
<$list filter="[title<.state-prefix>addsuffix{!!title}addsuffix[/]addsuffix[$n$]]" variable=".state">
<$reveal state=<<.state>> type="nomatch" text="show">
<dl>
<dd><$button set=<<.state>> setTo="show">Try it</$button></dd>
</dl>
</$reveal>
<$reveal state=<<.state>> type="match" text="show">
<dl>
<dd><$button set=<<.state>> setTo="">Hide</$button></dd>
</dl>
<ul><$list filter="$eg$" emptyMessage="(empty)">
<li><$link><$view field="title"/></$link></li>
</$list></ul>
</$reveal>
</$list>
\end
\define .this-is-operator-example() This example tiddler is used to illustrate some of the [[Filter Operators]].
\define .using-days-of-week() These examples make use of the [[Days of the Week]] tiddler.
\define .s-matching-is-case-sensitive() In looking for matches for <<.place s>>, capital and lowercase letters are treated as different.
\define .node-only-operator()
<$macrocall $name=".note" _="This operator is <<.em not>> available when ~TiddlyWiki is running in a web browser."/>
\end