X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/b953c498401e42f0dbf60de22463b6845fdf7ab3..6944fa282424926b1124edfddbbaa89bc759a74f:/.config/awesome/rc.lua diff --git a/.config/awesome/rc.lua b/.config/awesome/rc.lua index 08cb946..26d66cc 100644 --- a/.config/awesome/rc.lua +++ b/.config/awesome/rc.lua @@ -15,6 +15,7 @@ local lain = require("lain") local dkjson = require("lain.util").dkjson local math = require("math") local freedesktop = require("freedesktop") +local luatz = require("luatz") -- }}} -- {{{ Error handling @@ -198,9 +199,23 @@ menubar.utils.terminal = terminal -- Set the terminal for applications that requ -- {{{ Wibox local spacer = wibox.widget.textbox() -spacer:set_text(' | ') +spacer:set_text(' │ ') -- Create a textclock widget -mytextclock = wibox.widget.textclock("%a %d %b %H:%M:%S", 1) +clocks = { wibox.widget.textclock("%a %d %b %H:%M:%S", 1) } + +ZONES = { + ["NZ"] = "Pacific/Auckland", + ["DE"] = "Europe/Berlin" +} +local now = luatz.time_in(nil) +for c, tz in 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) + end +end -- Create a wibox for each screen and add it mywibox = {} @@ -336,17 +351,21 @@ awful.screen.connect_for_each_screen(function(s) mypromptbox[s], }, mytasklist[s], -- Middle widget - { -- Right widgets - layout = wibox.layout.fixed.horizontal, - mykeyboardlayout, - wibox.widget.systray(), - btc_widget, - spacer, - lain_bat.widget, - spacer, - mytextclock, - mylayoutbox[s], - }, + awful.util.table.join( -- Right widgets + { + layout = wibox.layout.fixed.horizontal, + mykeyboardlayout, + wibox.widget.systray(), + btc_widget, + spacer, + lain_bat.widget, + spacer, + }, + clocks, + { + mylayoutbox[s], + } + ), } end) -- }}} @@ -623,7 +642,7 @@ awful.rules.rules = { { rule = { class = "URxvt" }, properties = { - floating = false, + -- floating = false, size_hints_honor = false } }, { rule = { class = "URxvt", instance = "irc" }, @@ -695,7 +714,7 @@ awful.rules.rules = { client.connect_signal("manage", function (c) -- Set the windows at the slave, -- i.e. put it at the end of others instead of setting it master. - -- if not awesome.startup then awful.client.setslave(c) end + if not awesome.startup then awful.client.setslave(c) end if awesome.startup and not c.size_hints.user_position