helpers: properly handle magic characters

This commit is contained in:
Adrian C. (anrxc) 2011-02-15 05:47:21 +01:00
parent 6ddad318e0
commit d38584386d
2 changed files with 7 additions and 4 deletions

6
TODO
View File

@ -5,11 +5,11 @@
* Vicious * Vicious
** TODO Consider commiting power drain support to bat.lua
** TODO Try replacing dio.lua with io.lua
*** TODO First io.lua should grab data for all devices
** TODO Document contrib widgets in contrib/README ** TODO Document contrib widgets in contrib/README
** TODO Consider multigraph, graph stacking, support ** TODO Consider multigraph, graph stacking, support
** TODO Consider including this code in format helper
- return format and format:gsub("${[^}]+}", "")
- Note: We should then also replace just $1/$2...
** TODO Complete the hddtemp fix ** TODO Complete the hddtemp fix
- In certain setups regexp does not match all devices - In certain setups regexp does not match all devices
- The regexp catches the first device name, but last stats - The regexp catches the first device name, but last stats

View File

@ -9,6 +9,7 @@
-- {{{ Grab environment -- {{{ Grab environment
local pairs = pairs local pairs = pairs
local tonumber = tonumber
local io = { open = io.open } local io = { open = io.open }
local setmetatable = setmetatable local setmetatable = setmetatable
local getmetatable = getmetatable local getmetatable = getmetatable
@ -53,7 +54,9 @@ end
-- {{{ Format a string with args -- {{{ Format a string with args
function format(format, args) function format(format, args)
for var, val in pairs(args) do for var, val in pairs(args) do
format = format:gsub("$" .. var, val) format = format:gsub("$" .. (tonumber(var) and var or
var:gsub("[-+?*]", function(i) return "%"..i end)),
val)
end end
return format return format