Module:Demo/doc: Difference between revisions
Appearance
Content deleted Content added
m →Usage in a module: syntaxhighlight |
|||
Line 16: | Line 16: | ||
=== Usage in a module === |
=== Usage in a module === |
||
If you want to use this in another module (such as to make the output prettier), you can get values like so: |
If you want to use this in another module (such as to make the output prettier), you can get values like so: |
||
< |
<syntaxhighlight lang="lua">require('Module:demo').get(frame)</syntaxhighlight> |
||
Function get() returns a table containing: |
Function get() returns a table containing: |
||
Line 26: | Line 26: | ||
Example: |
Example: |
||
<syntaxhighlight lang="lua"> |
|||
p = {} |
|||
function p.main(frame) |
function p.main(frame) |
||
Line 33: | Line 34: | ||
end |
end |
||
return p</ |
return p</syntaxhighlight> |
||
== See also == |
== See also == |
Revision as of 05:08, 20 September 2022
Usage
Usage via templates
This module supports {{Demo}}
{{#invoke:Demo|main}}
and {{Demo inline}}
{{#invoke:Demo|inline}}
The input must be wrapped in <nowiki>...</nowiki>
tags or else it may be processed before the module can read it.
Usage in a module
If you want to use this in another module (such as to make the output prettier), you can get values like so:
require('Module:demo').get(frame)
Function get() returns a table containing:
source
= the source code (without<pre>...</pre>
wrappers, characters substituted with html entities)output
= the execution result of the source.frame
= the frame from which this template took the parameter.
By default, get() takes the first parameter of frame. If the frame uses a different parameter name for the nowiki-wrapped source, then place that name (as a string) as the second parameter, like so require('Module:demo').get(frame, 'alternate_name')
Example:
p = {}
function p.main(frame)
local parts = require('Module:demo').get(frame)
return '<Pretty html><pre>' .. parts.source .. '</pre><more pretty html>' .. parts.output .. '<even more pretty html>'
end
return p
See also
- Template:Nowiki template demo which uses Module:Template test case
- Template:Automarkup which uses Module:Automarkup