Module:Dynkin
Appearance
| This module is rated as ready for general use. It has reached a mature state, is considered relatively stable and bug-free, and may be used wherever appropriate. It can be mentioned on help pages and other Wikipedia resources as an option for new users. To minimise server load and avoid disruptive output, improvements should be developed through sandbox testing rather than repeated trial-and-error editing. |
This module implements the Dynkin diagram template, Template:Dynkin. It is invoked as
{{#invoke:Dynkin|Dynkin}}
though the parameter is ignored; instead it uses the parameters passed to the template. See the template documentation for how that is used.
For using this from other Lua modules, first load the module.
local Dynkin = require('Module:Dynkin')._Dynkin
You can then use it with the following syntax.
Dynkin{"node", "3", "node"}
See the template documentation for possible inputs.
-- module to turn a parameter list into a list of [[Dynkin diagram]] images.
-- See the template documentation or any example for how it is used and works.
local p = {}
function p.Dynkin(frame)
-- For calling from #invoke.
local pframe = frame:getParent()
local args = pframe.args
return p._Dynkin(args)
end
function p._Dynkin(args)
-- For calling from other Lua modules.
local body ='<span style="display:inline-block;">' -- create and start the output string
for v, x in ipairs(args) do -- process params, ignoring any names
body = body .. "[[File:dyn-" .. x .. ".png|link=]]" -- write file for this parameter
end
body = body .. "</span>" -- finish output string
return body -- return result
end
return p