--[[
Licensed under MIT License
* (c) 2013, Luca CPZ
* (c) 2009, Uli Schlachter
* (c) 2009, Majic
--]]
local format = string.format
local setmetatable = setmetatable
-- Lain markup util submodule
-- lain.util.markup
local markup = { fg = {}, bg = {} }
-- Convenience tags
function markup.bold(text)
return format('%s', text)
end
function markup.italic(text)
return format('%s', text)
end
function markup.strike(text)
return format('%s', text)
end
function markup.underline(text)
return format('%s', text)
end
function markup.monospace(text)
return format('%s', text)
end
function markup.big(text)
return format('%s', text)
end
function markup.small(text)
return format('%s', text)
end
-- Set the font
function markup.font(font, text)
return format("%s", font, text)
end
-- Set the foreground
function markup.fg.color(color, text)
return format("%s", color, text)
end
-- Set the background
function markup.bg.color(color, text)
return format("%s", color, text)
end
-- Set foreground and background
function markup.color(fg, bg, text)
return format("%s", fg, bg, text)
end
-- Set font and foreground
function markup.fontfg(font, fg, text)
return format("%s", font, fg, text)
end
-- Set font and background
function markup.fontbg(font, bg, text)
return format("%s", font, bg, text)
end
-- Set font, foreground and background
function markup.fontcolor(font, fg, bg, text)
return format("%s", font, fg, bg, text)
end
-- link markup.{fg,bg}(...) calls to markup.{fg,bg}.color(...)
setmetatable(markup.fg, {
__call = function(_, ...)
return markup.fg.color(...)
end,
})
setmetatable(markup.bg, {
__call = function(_, ...)
return markup.bg.color(...)
end,
})
-- link markup(...) calls to markup.fg.color(...)
return setmetatable(markup, {
__call = function(_, ...)
return markup.fg.color(...)
end,
})