local wibox = require("wibox")
-- Theme handling library
local beautiful = require("beautiful")
+local xrdb = beautiful.xresources
-- Notification library
local naughty = require("naughty")
local menubar = require("menubar")
local hotkeys_popup = require("awful.hotkeys_popup").widget
+local tblutils = require("tblutils")
local lain = require("lain")
local dkjson = require("lain.util").dkjson
local math = require("math")
-- }}}
-- {{{ Variable definitions
+--xrdb.set_dpi(95, screen[1])
+--xrdb.set_dpi(120, screen[2])
+
-- Themes define colours, icons, and wallpapers
beautiful.init(awful.util.get_themes_dir() .. "default/theme.lua")
+beautiful.font = 'Sans 10'
-- This is used later as the default terminal and editor to run.
terminal = "x-terminal-emulator"
end
end
-local function sorted_pairs(t, f)
- local a = {}
- for n in pairs(t) do table.insert(a, n) end
- table.sort(a, f)
- local i = 0 -- iterator variable
- local iter = function () -- iterator function
- i = i + 1
- if a[i] == nil then return nil
- else return a[i], t[a[i]]
- end
- end
- return iter
-end
-
-local function print_table(tbl, indent)
- if not indent then indent = 0 end
- for k, v in pairs(tbl) do
- formatting = string.rep(" ", indent) .. k .. ": "
- if type(v) == "table" then
- print(formatting)
- print_table(v, indent+1)
- else
- print(formatting .. tostring(v))
- end
- end
-end
-
local lain_bat = lain.widget.bat({
batteries = {"BAT0", "BAT1"},
settings = function()
local spacer = wibox.widget.textbox()
spacer:set_text(' │ ')
-- Create a textclock widget
-clocks = { wibox.widget.textclock("%a %d %b %H:%M:%S", 1) }
+clocks = { wibox.widget.textclock("%a %d %b %H:%M:%S %Z", 1) }
ZONES = {
["NZ"] = "Pacific/Auckland",
["DE"] = "Europe/Berlin"
}
local now = luatz.time_in(nil)
-for c, tz in sorted_pairs(ZONES) do
+for c, tz in tblutils.sorted_pairs(ZONES) do
local t = luatz.time_in(tz)
if math.abs(os.difftime(t, now)) > 10 then
local widget = wibox.widget.textclock(c .. ": %H:%M (%a)", 60, tz)
- table.insert(clocks, spacer)
- table.insert(clocks, widget)
+ table.insert(clocks, 1, spacer)
+ table.insert(clocks, 1, widget)
end
end
end
awful.screen.connect_for_each_screen(function(s)
+ -- local fontsize = math.floor(250 * xrdb.get_dpi(s)/s.geometry.width)
+ -- beautiful.font = "Sans " .. tostring(fontsize)
-- Wallpaper
--DISABLED--if beautiful.wallpaper then
--DISABLED-- local wallpaper = beautiful.wallpaper
if not tags[s.index] then
tags[s.index] = {}
end
- for n,p in sorted_pairs(screentags[s.index]) do
+ for n,p in tblutils.sorted_pairs(screentags[s.index]) do
p["screen"] = s
n = string.sub(n, 2) -- remove leading 't' needed for syntax in table
table.insert(tags[s.index], awful.tag.add(n, p))