Difference between revisions of "User:Ericb/If"

From MHWiki
(another new template)
 
(tweak logic)
Line 1: Line 1:
<noinclude>A conditional template.  The first argument cannot be "use=".  If the first argument contains any text, then we end up calling the <nowiki>{{Use}}</nowiki> template with two arguments, one named "use" with our second argument as its value, and the other will be unnamed or have an unrelated name, so the overall expansion is our one use of the name "use" - our second argument.  But if the first argument is empty (or missing), then we provide a default expansion such that we end up using the <nowiki>{{Use}}</nowiki> template with use= specified twice, and the last use wins, giving the overall expansion of our third argument.
+
<noinclude>A conditional template.  The first argument cannot start with "=".  If the first argument contains any text, then we end up calling the <nowiki>{{Use}}</nowiki> template with two arguments, one named "use" with our second argument as its value, and the other will have an unrelated name, so the overall expansion is our one use of the name "use" - our second argument.  But if the first argument is empty (or missing), then we end up using the <nowiki>{{Use}}</nowiki> template with use= specified twice, and the last use wins, giving the overall expansion of our third argument.
  
 
That is, I implemented {{#if:test|if text|if empty}}, with a slightly different syntax:<br/>
 
That is, I implemented {{#if:test|if text|if empty}}, with a slightly different syntax:<br/>
 
<nowiki>{{if|test|if text|if empty}}</nowiki></noinclude>
 
<nowiki>{{if|test|if text|if empty}}</nowiki></noinclude>
<includeonly>{{User:Ericb/Use|use={{{2|}}}|{{{1|use=}}}{{{3|}}}}}</includeonly>
+
<includeonly>{{User:Ericb/Use|use={{{2|}}}|use{{{1|}}}={{{3|}}}}}</includeonly>

Revision as of 03:49, 24 October 2011

A conditional template. The first argument cannot start with "=". If the first argument contains any text, then we end up calling the {{Use}} template with two arguments, one named "use" with our second argument as its value, and the other will have an unrelated name, so the overall expansion is our one use of the name "use" - our second argument. But if the first argument is empty (or missing), then we end up using the {{Use}} template with use= specified twice, and the last use wins, giving the overall expansion of our third argument.

That is, I implemented {{#if:test|if text|if empty}}, with a slightly different syntax:
{{if|test|if text|if empty}}