Module:Delimited tag: Difference between revisions

merge serialDelimiter
seems this doesn't break anything; don't mind the uhhh... ternary expression
 
(5 intermediate revisions by 4 users not shown)
Line 9: Line 9:


local tag = function(txt)
local tag = function(txt)
return '<' .. args['tag'] .. '>' .. txt .. '</' .. args['tag'] .. '>'
return '<' .. args['tag'] .. (args['wordbreak'] and ' style="word-break:break-all"' or '') .. '>' .. txt .. '</' .. args['tag'] .. '>'
end
end
local listLevel = args['list-level'] or '**'
local listLevel = args['list-level'] or '**'


local output = tag(args[1])
local output = tag(assert(args[1], 'No tag text provided.?'))
local finalDelimiterValues = {
local finalDelimiterValues = {
['none'] = '<nowiki/>',
['none'] = '<nowiki/>',
['comma'] = ',&#32;',
['comma'] = ', ',
[','] = ',&#32;',
[','] = ', ',
['and'] = ' and&#32;',
['and'] = ', and ',
['&'] = ' &amp;&nbsp;',
['&'] = ' &amp;&nbsp;',
['amp'] = ' &amp;&nbsp;',
['or'] = ' or&nbsp;',
['or'] = ' or&nbsp;',
['to'] = ' to&nbsp;',
['to'] = ' to&nbsp;',
['br'] = '<br/>',
['br'] = '<br/>',
['newline'] = '<br>',
['newline'] = '<br/>',
['list'] = '\n' .. listLevel,
['list'] = '\n' .. listLevel,
['bullet'] = '\n' .. listLevel,
['bullet'] = '\n' .. listLevel,
Line 32: Line 31:
['or-list'] = ', or\n' .. listLevel,
['or-list'] = ', or\n' .. listLevel,
['&-list'] = ' &\n' .. listLevel,
['&-list'] = ' &\n' .. listLevel,
['amp-list'] = ' &\n' .. listLevel,
['comma-list'] = ',\n' .. listLevel,
['comma-list'] = ',\n' .. listLevel,
[',-list'] = ',\n' .. listLevel,
[',-list'] = ',\n' .. listLevel,
Line 40: Line 38:
['and'] = ', ',
['and'] = ', ',
['&'] = ', ',
['&'] = ', ',
['amp'] = ', ',
['or'] = ', ',
['and-list'] = ',<br>\n' .. listLevel,
['and-list'] = ',<br/>\n' .. listLevel,
['&-list'] = ',<br>\n' .. listLevel,
['&-list'] = ',<br/>\n' .. listLevel,
['or-list'] = ',<br/>\n' .. listLevel,
}
}
local delimiter = args['delimiter'] or args['delim'] or args['d'] or '&nbsp;'
local delimiter = args['delimiter'] or args['delim'] or args['d'] or '&nbsp;'
local finalDelimiter = finalDelimiterValues[delimiter] or delimiter
local finalDelimiter = finalDelimiterValues[delimiter] or delimiter
local midDelimiter = midDelimiterValues[delimiter] or delimiter
local midDelimiter = midDelimiterValues[delimiter] or finalDelimiter
for i,val in ipairs(args) do
for i,val in ipairs(args) do