Difference between revisions of "Module:Coxeter–Dynkin diagram/sandbox"
Jump to navigation
Jump to search
blackwiki>Eiim (Create sandbox version of Module:Coxeter–Dynkin diagram) |
m (4 revisions imported) |
||
| (3 intermediate revisions by 2 users not shown) | |||
| Line 2: | Line 2: | ||
-- See the template documentation or any example for how it is used and works. | -- See the template documentation or any example for how it is used and works. | ||
local p = {} | local p = {} | ||
| + | |||
| + | -- list of file names (minus 'CDel ' and extension) which are available as an | ||
| + | -- SVG version which must be perfectly compatible in appearance and public domain. | ||
| + | -- Uses spaces not underscores. | ||
| + | local has_svg = {'nodes', 'node h', '2', '3', '4', '5', '6', '7', '8', '9', | ||
| + | '10', '11', | ||
| + | 'label2'} | ||
| + | |||
| + | function show_image(x, double) | ||
| + | local suffix = "|link=]]" | ||
| + | if double then | ||
| + | suffix = "|x46px|link=]]" | ||
| + | end | ||
| + | for i, svgfile in ipairs(has_svg) do | ||
| + | if svgfile == string.gsub(x, '_', ' ') then | ||
| + | return "[[File:CDel_" .. x .. ".svg" .. suffix | ||
| + | end | ||
| + | end | ||
| + | return "[[File:CDel_" .. x .. ".png" .. suffix | ||
| + | end | ||
function p.CDD(frame) | function p.CDD(frame) | ||
| Line 13: | Line 33: | ||
-- For calling from other Lua modules. | -- For calling from other Lua modules. | ||
local body ='<span style="display:inline-block;">' -- create and start the output string | local body ='<span style="display:inline-block;">' -- create and start the output string | ||
| + | local double = false -- experimental only, scale to 2x and see what happens | ||
for v, x in ipairs(args) do -- process params, ignoring any names | for v, x in ipairs(args) do -- process params, ignoring any names | ||
| − | if (x ~= '') then | + | if (x == 'DOUBLE') then |
| − | + | double = true | |
| + | elseif (x ~= '') then -- check for null/empty names | ||
| + | body = body .. show_image(x, double) -- write file for this parameter | ||
end | end | ||
end | end | ||
Latest revision as of 15:58, 26 September 2020
Documentation for this module may be created at Module:Coxeter–Dynkin diagram/sandbox/doc
-- module to turn a parameter list into a list of [[Coxeter–Dynkin diagram]] images.
-- See the template documentation or any example for how it is used and works.
local p = {}
-- list of file names (minus 'CDel ' and extension) which are available as an
-- SVG version which must be perfectly compatible in appearance and public domain.
-- Uses spaces not underscores.
local has_svg = {'nodes', 'node h', '2', '3', '4', '5', '6', '7', '8', '9',
'10', '11',
'label2'}
function show_image(x, double)
local suffix = "|link=]]"
if double then
suffix = "|x46px|link=]]"
end
for i, svgfile in ipairs(has_svg) do
if svgfile == string.gsub(x, '_', ' ') then
return "[[File:CDel_" .. x .. ".svg" .. suffix
end
end
return "[[File:CDel_" .. x .. ".png" .. suffix
end
function p.CDD(frame)
-- For calling from #invoke.
local pframe = frame:getParent()
local args = pframe.args
return p._CDD(args)
end
function p._CDD(args)
-- For calling from other Lua modules.
local body ='<span style="display:inline-block;">' -- create and start the output string
local double = false -- experimental only, scale to 2x and see what happens
for v, x in ipairs(args) do -- process params, ignoring any names
if (x == 'DOUBLE') then
double = true
elseif (x ~= '') then -- check for null/empty names
body = body .. show_image(x, double) -- write file for this parameter
end
end
body = body .. "</span>" -- finish output string
return body -- return result
end
return p