Module:CharColorParse
Jump to navigation
Jump to search
local p = {}
function p.parse(frame)
local a = frame.args[1]:gsub('(amp;)', '')
a = string.gsub(a, "(&)(%w)(%^?%w?)", function(_,color,background)
local luatable = {
['r'] = "#a64a2e",
['R'] = "#d74200",
['g'] = "#009403",
['G'] = "#00c420",
['b'] = "#0048bd",
['B'] = "#0096ff",
['c'] = "#40a4b9",
['C'] = "#77bfcf",
['m'] = "#b154cf",
['M'] = "#da5bd6",
['w'] = "#98875f",
['W'] = "#cfc041",
['k'] = "#0f3b3a",
['K'] = "#155352",
['y'] = "#b1c9c3",
['Y'] = "#FFFFFF",
['o'] = "#f15f22",
['O'] = "#e99f10"
}
local bgluatable = {
["^r"] = "#a64a2e",
["^R"] = "#d74200",
["^g"] = "#009403",
["^G"] = "#00c420",
["^b"] = "#0048bd",
["^B"] = "#0096ff",
["^c"] = "#40a4b9",
["^C"] = "#77bfcf",
["^m"] = "#b154cf",
["^M"] = "#da5bd6",
["^w"] = "#98875f",
["^W"] = "#cfc041",
["^k"] = "#0f3b3a",
["^K"] = "#155352",
["^y"] = "#b1c9c3",
["^Y"] = "#FFFFFF",
["^o"] = "#f15f22",
["^O"] = "#e99f10",
}
local c = bgluatable[background]
if (c == nil or c == '')
then
c = "transparent"
end
return "color:" .. luatable[color] .. ";background:" .. c ..";font-family:Source Code Pro;"
end)
return a
end
return p