vicious: load widget modules only when needed
There's no more need to edit init files and manually disable widgets. Signed-off-by: Joerg T. (Mic92) <jthalheim@gmail.com> Signed-off-by: Adrian C. (anrxc) <anrxc@sysphere.org>
This commit is contained in:
parent
06e8f7c68a
commit
dcc2b60cd8
6
README
6
README
|
@ -29,9 +29,9 @@ $XDG_CONFIG_HOME (usually ~/.config):
|
|||
|
||||
$ mv vicious $XDG_CONFIG_HOME/awesome/
|
||||
|
||||
If you want you can disable widgets you will not use, to avoid having
|
||||
useless modules sitting in your memory. You can comment out any widget
|
||||
type from the "Configure widgets" list in the widgets/init.lua file.
|
||||
Vicious will only load modules for widget types you intend to use in
|
||||
your awesome configuration, to avoid having useless modules sitting in
|
||||
your memory.
|
||||
|
||||
Then add the following to the top of your rc.lua:
|
||||
|
||||
|
|
|
@ -5,20 +5,13 @@
|
|||
-- * (c) 2010, Adrian C. <anrxc@sysphere.org>
|
||||
---------------------------------------------------
|
||||
|
||||
-- {{{ Configure widgets
|
||||
require("vicious.contrib.batacpi")
|
||||
require("vicious.contrib.batpmu")
|
||||
require("vicious.contrib.batproc")
|
||||
require("vicious.contrib.dio")
|
||||
require("vicious.contrib.mpc")
|
||||
require("vicious.contrib.netcfg")
|
||||
require("vicious.contrib.net")
|
||||
require("vicious.contrib.ossvol")
|
||||
require("vicious.contrib.pop")
|
||||
require("vicious.contrib.pulse")
|
||||
require("vicious.contrib.rss")
|
||||
require("vicious.contrib.sensors")
|
||||
-- }}}
|
||||
-- {{{ Setup environment
|
||||
local setmetatable = setmetatable
|
||||
local wrequire = require("vicious.helpers").wrequire
|
||||
|
||||
-- Vicious: widgets for the awesome window manager
|
||||
module("vicious.contrib")
|
||||
-- }}}
|
||||
|
||||
-- Load modules at runtime as needed
|
||||
setmetatable(_M, { __index = wrequire })
|
||||
|
|
|
@ -9,6 +9,8 @@
|
|||
|
||||
-- {{{ Grab environment
|
||||
local pairs = pairs
|
||||
local rawget = rawget
|
||||
local require = require
|
||||
local tonumber = tonumber
|
||||
local io = { open = io.open }
|
||||
local setmetatable = setmetatable
|
||||
|
@ -29,6 +31,13 @@ local scroller = {}
|
|||
-- }}}
|
||||
|
||||
-- {{{ Helper functions
|
||||
-- {{{ Loader of vicious modules
|
||||
function wrequire(table, key)
|
||||
local module = rawget(table, key)
|
||||
return module or require(table._NAME .. "." .. key)
|
||||
end
|
||||
-- }}}
|
||||
|
||||
-- {{{ Expose path as a Lua table
|
||||
function pathtotable(dir)
|
||||
return setmetatable({ _path = dir },
|
||||
|
|
|
@ -5,32 +5,13 @@
|
|||
-- * (c) 2010, Adrian C. <anrxc@sysphere.org>
|
||||
---------------------------------------------------
|
||||
|
||||
-- {{{ Configure widgets
|
||||
require("vicious.widgets.cpu")
|
||||
require("vicious.widgets.cpuinf")
|
||||
require("vicious.widgets.cpufreq")
|
||||
require("vicious.widgets.thermal")
|
||||
require("vicious.widgets.uptime")
|
||||
require("vicious.widgets.bat")
|
||||
require("vicious.widgets.mem")
|
||||
require("vicious.widgets.os")
|
||||
require("vicious.widgets.fs")
|
||||
require("vicious.widgets.dio")
|
||||
require("vicious.widgets.raid")
|
||||
require("vicious.widgets.hddtemp")
|
||||
require("vicious.widgets.net")
|
||||
require("vicious.widgets.wifi")
|
||||
require("vicious.widgets.mbox")
|
||||
require("vicious.widgets.mboxc")
|
||||
require("vicious.widgets.mdir")
|
||||
require("vicious.widgets.gmail")
|
||||
require("vicious.widgets.org")
|
||||
require("vicious.widgets.pkg")
|
||||
require("vicious.widgets.mpd")
|
||||
require("vicious.widgets.volume")
|
||||
require("vicious.widgets.weather")
|
||||
require("vicious.widgets.date")
|
||||
-- }}}
|
||||
-- {{{ Setup environment
|
||||
local setmetatable = setmetatable
|
||||
local wrequire = require("vicious.helpers").wrequire
|
||||
|
||||
-- Vicious: widgets for the awesome window manager
|
||||
module("vicious.widgets")
|
||||
-- }}}
|
||||
|
||||
-- Load modules at runtime as needed
|
||||
setmetatable(_M, { __index = wrequire })
|
||||
|
|
Loading…
Reference in New Issue