X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/f7aa28919588d307083b4b5b1c010f26cbc63cde..d3b5b5a94d974e678d10a8670886e17a354eede5:/util/markup.lua
diff --git a/util/markup.lua b/util/markup.lua
index d367bca..63f9486 100644
--- a/util/markup.lua
+++ b/util/markup.lua
@@ -1,65 +1,62 @@
-
--[[
-
- Licensed under MIT License
- * (c) 2013, Luke Bonham
- * (c) 2009, Uli Schlachter
- * (c) 2009, Majic
-
+
+ Licensed under MIT License
+ * (c) 2013, Luca CPZ
+ * (c) 2009, Uli Schlachter
+ * (c) 2009, Majic
+
--]]
-local beautiful = require("beautiful")
-local tostring = tostring
+local format = string.format
local setmetatable = setmetatable
-- Lain markup util submodule
-- lain.util.markup
-local markup = {}
-
-local fg = {}
-local bg = {}
+local markup = { fg = {}, bg = {} }
--- Convenience tags.
-function markup.bold(text) return '' .. tostring(text) .. '' end
-function markup.italic(text) return '' .. tostring(text) .. '' end
-function markup.strike(text) return '' .. tostring(text) .. '' end
-function markup.underline(text) return '' .. tostring(text) .. '' end
-function markup.monospace(text) return '' .. tostring(text) .. '' end
-function markup.big(text) return '' .. tostring(text) .. '' end
-function markup.small(text) return '' .. tostring(text) .. '' end
+-- 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.
+-- Set the font
function markup.font(font, text)
- return '' .. tostring(text) ..''
+ return format("%s", font, text)
end
--- Set the foreground.
-function fg.color(color, text)
- return '' .. tostring(text) .. ''
+-- Set the foreground
+function markup.fg.color(color, text)
+ return format("%s", color, text)
end
--- Set the background.
-function bg.color(color, text)
- return '' .. tostring(text) .. ''
+-- Set the background
+function markup.bg.color(color, text)
+ return format("%s", color, text)
end
--- Context: focus
-function fg.focus(text) return fg.color(beautiful.fg_focus, text) end
-function bg.focus(text) return bg.color(beautiful.bg_focus, text) end
-function markup.focus(text) return bg.focus(fg.focus(text)) end
+-- Set foreground and background
+function markup.color(fg, bg, text)
+ return format("%s", fg, bg, text)
+end
--- Context: normal
-function fg.normal(text) return fg.color(beautiful.fg_normal, text) end
-function bg.normal(text) return bg.color(beautiful.bg_normal, text) end
-function markup.normal(text) return bg.normal(fg.normal(text)) end
+-- Set font and foreground
+function markup.fontfg(font, fg, text)
+ return format("%s", font, fg, text)
+end
--- Context: urgent
-function fg.urgent(text) return fg.color(beautiful.fg_urgent, text) end
-function bg.urgent(text) return bg.color(beautiful.bg_urgent, text) end
-function markup.urgent(text) return bg.urgent(fg.urgent(text)) end
+-- Set font and background
+function markup.fontbg(font, bg, text)
+ return format("%s", font, bg, text)
+end
-markup.fg = fg
-markup.bg = bg
+-- 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 })