X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=config%2Fawesome%2Frc.lua;h=9e622cb1c3a8a66d473cf72bde8d30c457ae8cb7;hb=5a862dc4833fee9676263244a029f29cd9a78d8d;hp=cccf4595a11e90993e008ad3774f4222dd9dfbd0;hpb=5923f706617b966f114656c78bd60108d4ab1dde;p=~madcoder%2Fdotfiles.git diff --git a/config/awesome/rc.lua b/config/awesome/rc.lua index cccf459..9e622cb 100644 --- a/config/awesome/rc.lua +++ b/config/awesome/rc.lua @@ -6,12 +6,6 @@ require("eminent") require("wicked") require("beautiful") -function table.append(t, ...) - for _, v in ipairs({...}) do - table.insert(t, v) - end -end - terminal = "x-terminal-emulator" lock = 'xscreensaver-command -lock' beautiful.init(awful.util.getdir("config").."/theme") @@ -31,7 +25,7 @@ k_a = {alt} k_ac = {alt, control} k_c = {control} k_cs = {control, shift} -k_s = {shift} +k_s = {shift} -- }}} @@ -78,10 +72,10 @@ end -- {{{ Taglist maintaglist = {} -maintaglist.buttons = { - button(k_n, 1, awful.tag.viewonly), - button(k_s, 1, awful.client.toggletag) -} +maintaglist.buttons = awful.util.table.join( + awful.button(k_n, 1, awful.tag.viewonly), + awful.button(k_s, 1, awful.client.toggletag) +) -- }}} -- {{{ Widgets @@ -230,7 +224,7 @@ awful.hooks.timer.register(10, clock_update) -- }}} mymenubox = widget{ type = "textbox", name = "mytextbox", align = "left" } -mysystray = widget{ type = "systray", name = "mysystray", align = "right" } +-- mysystray = widget{ type = "systray", name = "mysystray", align = "right" } -- {{{ Statusbar @@ -265,30 +259,30 @@ end ---- {{{ Global keys local hist = os.getenv("HOME") .. "/.cache/awesome/history" -globalkeys = { +globalkeys = awful.util.table.join( -- Mod+{A/S}: Switch to prev/next tag - key(k_m, "Left", eminent.tag.prev), - key(k_m, "Right", eminent.tag.next), + awful.key(k_m, "Left", eminent.tag.prev), + awful.key(k_m, "Right", eminent.tag.next), -- Mod+Shift+{A/S}: Move window to Prev/Next tag - key(k_ms, "Left", function() + awful.key(k_ms, "Left", function() awful.client.movetotag(eminent.tag.getprev()) eminent.tag.prev() end), - key(k_ms, "Right", function() + awful.key(k_ms, "Right", function() awful.client.movetotag(eminent.tag.getnext()) eminent.tag.next() end), -- Mod+Shift_{E/D}: move window to next/prev screen - key(k_mc, "Right", function() + awful.key(k_mc, "Right", function() local s = getscreen() + 1 while s > screen.count() do s = s-screen.count() end client_movetoscreen(s) end), - key(k_mc, "Left", function() + awful.key(k_mc, "Left", function() local s = getscreen() - 1 while s < 1 do s = s+screen.count() @@ -298,40 +292,42 @@ globalkeys = { -- Focus Prev/Next window - key(k_m, "j", + awful.key(k_m, "j", function () awful.client.focus.byidx(1) if client.focus then client.focus:raise() end end), - key(k_m, "k", + awful.key(k_m, "k", function () awful.client.focus.byidx(-1) if client.focus then client.focus:raise() end end), -- Swap window with the Prev/Next one - key(k_ms, "j", function () awful.client.swap.byidx(1) end), - key(k_ms, "k", function () awful.client.swap.byidx(-1) end), + awful.key(k_ms, "j", function () awful.client.swap.byidx(1) end), + awful.key(k_ms, "k", function () awful.client.swap.byidx(-1) end), -- Mod+{E/D}: Switch to next/previous screen - key(k_m, "Tab", function () awful.screen.focus(1) end), - key(k_ms, "Tab", function () awful.screen.focus(-1) end), + awful.key(k_m, "Tab", function () awful.screen.focus(1) end), + awful.key(k_ms, "Tab", function () awful.screen.focus(-1) end), -- Mod+Enter: Launch a new terminal - key(k_m, "Return", function() awful.util.spawn(terminal) end), - key(k_ac, "Delete", awesome.restart), - key(k_m, "F12", function() awful.util.spawn(lock) end), + awful.key(k_m, "e", function() awful.util.spawn("firefox") end), + awful.key(k_m, "Return", function() awful.util.spawn(terminal) end), + awful.key(k_ac, "r", awesome.restart), + awful.key(k_m, "F12", function() awful.util.spawn(lock) end), + awful.key({}, "#148", function() awful.util.spawn("kcalc") end), -- Layout manipulation - key(k_m, "l", function () awful.tag.incmwfact(0.05) end), - key(k_m, "h", function () awful.tag.incmwfact(-0.05) end), - key(k_ms, "h", function () awful.tag.incnmaster(1) end), - key(k_ms, "l", function () awful.tag.incnmaster(-1) end), - key(k_mc, "h", function () awful.tag.incncol(1) end), - key(k_mc, "l", function () awful.tag.incncol(-1) end), + awful.key(k_m, "l", function () awful.tag.incmwfact(0.05) end), + awful.key(k_m, "h", function () awful.tag.incmwfact(-0.05) end), + awful.key(k_ms, "h", function () awful.tag.incnmaster(1) end), + awful.key(k_ms, "l", function () awful.tag.incnmaster(-1) end), + awful.key(k_mc, "h", function () awful.tag.incncol(1) end), + awful.key(k_mc, "l", function () awful.tag.incncol(-1) end), -- Menu - key(k_m, "r", + awful.key(k_m, "r", function () awful.prompt.run({ prompt = "Run: " }, mymenubox, @@ -339,7 +335,7 @@ globalkeys = { awful.completion.bash, awful.util.getdir("cache").."/commands") end), - key(k_m, "F4", + awful.key(k_m, "F4", function () awful.prompt.run({ prompt = "Run Lua code: " }, mymenubox, @@ -347,7 +343,13 @@ globalkeys = { awful.prompt.bash, awful.util.getdir("cache").."/lua_commands") end), -} + + awful.key({}, "#192", function() eminent.tag.goto(1, nil, true) end), + awful.key({}, "#193", function() eminent.tag.goto(2, nil, true) end), + awful.key({}, "#194", function() eminent.tag.goto(3, nil, true) end), + awful.key({}, "#195", function() eminent.tag.goto(4, nil, true) end), + awful.key({}, "#196", function() eminent.tag.goto(5, nil, true) end) +) -- Mod+#: Switch to tag -- Mod+Shift+#: Toggle tag display @@ -355,30 +357,31 @@ globalkeys = { -- Mod+Alt+#: Toggle client on tag for i = 1, 10 do - table.append(globalkeys, - key(k_m, i % 10, - function() - eminent.tag.goto(i, nil, true) - end), - - key(k_ms, i % 10, - function () - local t = eminent.tag.getn(i, nil, true) - if t ~= nil then t.selected = not t.selected end - end), - key(k_mc, i % 10, - function () - local t = eminent.tag.getn(i, nil, true) - if t ~= nil then awful.client.movetotag(t) end - end) - ) + globalkeys = awful.util.table.join( + globalkeys, + awful.key(k_m, i % 10, + function() + eminent.tag.goto(i, nil, true) + end), + + awful.key(k_ms, i % 10, + function () + local t = eminent.tag.getn(i, nil, true) + if t ~= nil then t.selected = not t.selected end + end), + awful.key(k_mc, i % 10, + function () + local t = eminent.tag.getn(i, nil, true) + if t ~= nil then awful.client.movetotag(t) end + end) + ) end ---- }}} ---- {{{ Client hotkeys -clientkeys = { - key(k_m, "i", function (c) +clientkeys = awful.util.table.join( + awful.key(k_m, "i", function (c) if mymenubox.text then mymenubox.text = "" else @@ -387,11 +390,11 @@ clientkeys = { end), -- Client manipulation - key(k_m, "c", function (c) c:kill() end), - key(k_m, "o", awful.client.floating.toggle), - key(k_m, "t", awful.client.togglemarked), - key(k_m, "F11", function (c) c.fullscreen = not c.fullscreen end) -} + awful.key(k_m, "c", function (c) c:kill() end), + awful.key(k_m, "o", awful.client.floating.toggle), + awful.key(k_m, "t", awful.client.togglemarked), + awful.key(k_m, "F11", function (c) c.fullscreen = not c.fullscreen end) +) ---- }}} @@ -431,19 +434,21 @@ awful.hooks.manage.register(function (c, startup) end -- Add mouse bindings - c:buttons{ - button({ }, 1, function (c) client.focus = c; c:raise() end), - button(k_a, 1, awful.mouse.client.move), - button(k_a, 3, awful.mouse.client.resize) - } + c:buttons(awful.util.table.join( + awful.button({ }, 1, function (c) client.focus = c; c:raise() end), + awful.button(k_a, 1, awful.mouse.client.move), + awful.button(k_a, 3, awful.mouse.client.resize) + )) -- Create border c.border_width = beautiful.border_width c.border_color = beautiful.border_normal -- Make certain windows floating - local name = c.name:lower() - if name:find('pinentry') + local class = c.class:lower() + if class:find('pinentry') + or class:find('kcalc') + or class:find('gajim') then c.floating = true end @@ -458,22 +463,21 @@ end) -- (tag switch, new client, etc) awful.hooks.arrange.register(function (screen) local sel = client.focus + if not sel then sel = awful.client.focus.history.get(screen, 0) - if sel then client.focus = sel end + if not sel then return end + client.focus = sel end - --[[ - if sel then - local m_c = mouse.coords() - - if m_c.x < sel.x - 1 or m_c.x > sel.x + sel.width + 1 or - m_c.y < sel.y - 1 or m_c.y > sel.y + sel.height + 1 then - if #m_c.buttons == 0 then - mouse.coords{x = sel.x + 5, y = sel.y + 5} - end - end + + local o = mouse.object_under_pointer() + if not o or (type(o) == "client" and o ~= sel) then + local g = sel:geometry() + + mouse.coords { x = g.x + 5, y = g.y + 5 } end - ]]-- end) -- }}} + +awful.util.spawn("xkbcomp -w 0 -R/usr/share/X11/xkb /home/madcoder/.Xkeyboard :0")