Исправление disarmer, (текущая версия) :
local ph = 22 -- высота панели
local ww;local wh;
function gg
local wa = screen[mouse.screen].workarea -- текущий screen
ww = wa.width -- длина текущего screen
wh = wa.height -- высота текущего screen
end
clientkeys = awful.util.table.join(
awful.key({modkey}, "KP_Left", function (c) gg(); c:geometry( { width = ww / 2, height = wh, x = 0, y = ph } ) end),
Функция gg обновляет ww и wh, её надо вызывать в колбеке до изменения геометрии окна
Исходная версия disarmer, :
local ph = 22 -- высота панели
local ww;local wh;
function gg
local wa = screen[mouse.screen].workarea -- текущий screen
ww = wa.width -- длина текущего screen
wh = wa.height -- высота текущего screen
end
clientkeys = awful.util.table.join(
awful.key({modkey}, "KP_Left", function (c) gg; c:geometry( { width = ww / 2, height = wh, x = 0, y = ph } ) end),