Module:Demo/doc: Difference between revisions

Jump to navigation Jump to search
 
m (1 revision imported)
 
(No difference)

Latest revision as of 05:47, 13 December 2023

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 <syntaxhighlight>...</syntaxhighlight> 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:

local 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