This is the documentation page for Module:Eval
This module takes in text and displays both the input and/or the result. The input supports wikitext formatting and can use links to other pages. The output's wikitext formatting needs to be escaped appropriately (see below).
Usage
{{#invoke:Eval|main|<wikitext to process>}}
For just the code with HTML formatting, utilize {{#invoke:Eval|code|<wikitext to process>}}
For just the unformatted code, utilize {{#invoke:Eval|raw|<wikitext to process>}}
For just the result, utilize {{#invoke:Eval|result|<wikitext to process>}}
Parameters
1: the code to evaluate and display. This parameter is required.nowiki: whether the input is surrounded by nowiki tags. In this case, the module will behave similar to Module:Demo. Default is "no".format: the format of the code section. "inline" will display the code and/or result on the same line, while "block" will display the code in syntaxhighlight. Default is "block".
Escape characters
For technical reasons, attempting to add template code such as {{template}} will copy the contents of the template into the parameters. The same applies for parser tags like <ref>...</ref> and <gallery>...</gallery>. To get around this, using backslash before any of these characters will escape it, similar to escaping in JavaScript or C++.
| Escape sequence | Output to source code |
|---|---|
\e |
= |
\p |
| |
\[ |
[ |
\] |
] |
\{ |
{ |
\} |
} |
\< |
< |
\> |
> |
\\ |
\ |
This is not relevant when "nowiki" is set to "yes".
Examples
With Formatted Text
{{#invoke:Eval|main|
This is some <b>bold text</b> in the source
}}
- Using this code:
This is some bold text in the source- yields:
- This is some bold text in the source
{{#invoke:Eval|main|
This is some \<b\>bold text\</b\> in the source
}}
- Using this code:
This is some <b>bold text</b> in the source- yields:
- This is some <b>bold text</b> in the source
{{#invoke:Eval|main|
This is some \<b\>bold text\</b\> in the output
}}
- Using this code:
This is some <b>bold text</b> in the output- yields:
- This is some bold text in the output
{{#invoke:Eval|main|
I can call a template like \{\{T\pT\}\}
}}
- Using this code:
I can call a template like {{T|T}}- yields:
- I can call a template like
{{T}}
{{#invoke:Eval|main|
I can call a template like \{\{T\pT\}\}
|format=inline}}
I can call a template like {{T|T}} yields: I can call a template like {{T}}
{{#invoke:Eval|raw|
I can call a template like \{\{T\pT\}\}
}}
{{#invoke:Eval|code|
I can call a template like \{\{T\pT\}\}
}}
I can call a template like {{T|T}}
{{#invoke:Eval|code|
I can call a template like \{\{T\pT\}\}
|format=inline}}
I can call a template like {{T|T}}{{#invoke:Eval|main|
I can also make a fake template call like \{\{T\{\{!\}\}T\}\}
}}
- Using this code:
I can also make a fake template call like {{T{{!}}T}}- yields:
- I can also make a fake template call like {{T|T}}
{{#invoke:Eval|main|
To insert a \[\[wikipedia:Backslash\pbackslash\]\] I just use \\
|format=inline}}
Using this code: To insert a [[wikipedia:Backslash|backslash]] I just use \ yields: To insert a backslash I just use \
{{#invoke:Eval|main|
And this is how to insert [[Main Page|links]] into the code
|format=inline}}
Using this code: And this is how to insert links into the code yields: And this is how to insert links into the code
{{#invoke:Eval|main|
And an [https://example.com external link]
|format=inline}}
Using this code: And an external link yields: And an external link
{{#invoke:Eval|main|
If you [[Main Page|try it]] in block mode it may look weird
}}
- Using this code:
If you try it in block mode it may look weird- yields:
- If you try it in block mode it may look weird
With Nowiki
{{#invoke:Eval|main|
<nowiki>This is some [[Main Page|Link]]</nowiki>
|nowiki=yes}}
- Using this code:
This is some [[Main Page|Link]]- yields:
- This is some Link
More info
- Subpages
- Module:Eval/doc