Jump to content

Module:For nowiki/doc: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Example: Add back >
Line 15: Line 15:
If you have a template <code>_TEMPLATE_</code>:
If you have a template <code>_TEMPLATE_</code>:
<syntaxhighlight lang="wikitext">{{#invoke:For nowiki|template|
<syntaxhighlight lang="wikitext">{{#invoke:For nowiki|template|
|<nowiki {{{i}}} is {{{1}}}. Next is {{#expr:{{{i}}} + 1}}.</nowiki>}}</syntaxhighlight>
|<nowiki>{{{i}}} is {{{1}}}. Next is {{#expr:{{{i}}} + 1}}.</nowiki>}}</syntaxhighlight>


Then calling:
Then calling:

Revision as of 01:11, 9 September 2024

This module implements a foreach loop that can be used from wikitext. It exports two functions:

  • main - Implements {{For nowiki}}, which can be used with explicitly provided parameters. Should not be called diretly.
  • template - Designed to be used from within other templates. It takes explicit configuration parameters but it uses parameters passed to the parent frame (the template) for all others. Should be called directly.

Usage

{{#invoke:For nowiki|template|separator|<nowiki>wikitext</nowiki>|offset=offset}}
  • separator and wikitext function the same as described in Template:For nowiki/doc#Usage.
  • offset is the offset of the first argument to process. Defaults to 0, which means the |1= parameter passed to the template is the first parameter processed.

Example

If you have a template _TEMPLATE_:

{{#invoke:For nowiki|template|
|<nowiki>{{{i}}} is {{{1}}}. Next is {{#expr:{{{i}}} + 1}}.</nowiki>}}

Then calling:

{{_TEMPLATE_|A|B|Foo|Orange}}

Would produce:

  • 1 is A. Next is 2.
  • 2 is B. Next is 3.
  • 3 is Foo. Next is 4.
  • 4 is Orange. Next is 5.

See also