X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/db29013ebd9bd334d676787d6b584f42f46b5cd6..3981b429fc49cbc49f87fcfcb96d6c9869224353:/.config/awesome/rc.lua diff --git a/.config/awesome/rc.lua b/.config/awesome/rc.lua index 74a1621..1243771 100644 --- a/.config/awesome/rc.lua +++ b/.config/awesome/rc.lua @@ -329,9 +329,10 @@ awful.screen.connect_for_each_screen(function(s) end) -- }}} -- {{{ autorandr integration -local function find_screen_by_name(name) +local function find_screen_by_pattern(pattern) for s in screen do - if s.name == name then + print(s.name .. " :: " .. pattern) + if s.name:match(pattern) then return s end end @@ -350,7 +351,7 @@ local function get_target_screen_for_tag(tag) if tag.targets then if type(tag.targets) == "table" then for _,target in ipairs(tag.targets) do - local s = find_screen_by_name(target) + local s = find_screen_by_pattern(target:gsub('%-', '%%-')) if s then print(" → screen " .. s.name) return s @@ -507,8 +508,8 @@ default_tags = gears.table.join(default_tags, { exclusive = true, layout = layouts.default, exec_once = { "thunderbird" }, - class = { "Thunderbird" }, - targets = { "catalyst/DP2-2", "mtvic/eDP1", "gauting/eDP1", "lehel/DisplayPort-1" }, + class = { "thunderbird" }, + targets = { "catalyst/DP2-1", "mtvic/eDP1", "gauting/eDP1", "lehel/DisplayPort-1" }, }, { name = "chr", @@ -517,7 +518,7 @@ default_tags = gears.table.join(default_tags, { layout = layouts.default, exec_once = { "chromium" }, class = { "Chromium" }, - targets = { "catalyst/DP2-2", "mtvic/eDP1", "gauting/eDP1", "lehel/DisplayPort-1", "present/HDMI1" }, + targets = { "catalyst/DP2-1", "mtvic/eDP1", "gauting/eDP1", "lehel/DisplayPort-1", "present/HDMI.*" }, }, { name = "ffx", @@ -526,7 +527,7 @@ default_tags = gears.table.join(default_tags, { layout = layouts.default, exec_once = { "firefox" }, class = { "Firefox" }, - targets = { "catalyst/DP2-2", "mtvic/eDP1", "gauting/eDP1", "lehel/DisplayPort-1", "present/HDMI1" }, + targets = { "catalyst/DP2-1", "mtvic/eDP1", "gauting/eDP1", "lehel/DisplayPort-1", "present/HDMI.*" }, }, }) @@ -766,11 +767,11 @@ globalkeys = gears.table.join( awful.key({ modkey, }, "d", th.delete_tag, {description = "delete the current tag", group = "tag"}), awful.key({ modkey, "Shift", }, "a", function() - th.move_to_new_tag(nil,nil,true,true,true) + th.move_to_new_tag(nil, { layout = layouts.maximised },true,true,true) end, {description = "add a volatile tag with the focused client", group = "tag"}), awful.key({ modkey, "Shift", "Control" }, "a", function() - th.move_to_new_tag(nil,nil,false,true,true) + th.move_to_new_tag(nil, { layout = layouts.maximised },false,true,true) end, {description = "add a permanent tag with the focused client", group = "tag"}), awful.key({ modkey, "Mod1" }, "a", th.copy_tag, @@ -906,16 +907,18 @@ awful.key({ cmdkey }, "x", function () end), awful.key({ cmdkey, "Shift" }, "x", function () awful.spawn("xscreensaver-command -exit") end), +awful.key({ cmdkey }, "BackSpace", function () awful.spawn("pkill -USR1 offlineimap") end), + -- function keys awful.key(nil, "XF86ScreenSaver", function () awful.spawn("xset dpms force off") end), -awful.key(nil, "XF86AudioMute", function () awful.spawn("pactl set-sink-mute 0 toggle") end), -awful.key({ cmdkey }, "End", function () awful.spawn("pactl set-sink-mute 0 toggle") end), -awful.key(nil, "XF86AudioLowerVolume", function () awful.spawn("pactl set-sink-volume 0 -2%") end), -awful.key({ cmdkey }, "Next", function () awful.spawn("pactl set-sink-volume 0 -2%") end), -awful.key(nil, "XF86AudioRaiseVolume", function () awful.spawn("pactl set-sink-volume 0 +2%") end), -awful.key({ cmdkey }, "Prior", function () awful.spawn("pactl set-sink-volume 0 +2%") end), -awful.key(nil, "XF86AudioMicMute", function () awful.spawn("pactl set-source-mute 1 toggle") end), -awful.key({ cmdkey }, "Home", function () awful.spawn("pactl set-source-mute 1 toggle") end), +awful.key(nil, "XF86AudioMute", function () awful.spawn("pactl set-sink-mute @DEFAULT_SINK@ toggle") end), +awful.key({ cmdkey }, "End", function () awful.spawn("pactl set-sink-mute @DEFAULT_SINK@ toggle") end), +awful.key(nil, "XF86AudioLowerVolume", function () awful.spawn("pactl set-sink-volume @DEFAULT_SINK@ -2%") end), +awful.key({ cmdkey }, "Next", function () awful.spawn("pactl set-sink-volume @DEFAULT_SINK@ -2%") end), +awful.key(nil, "XF86AudioRaiseVolume", function () awful.spawn("pactl set-sink-volume @DEFAULT_SINK@ +2%") end), +awful.key({ cmdkey }, "Prior", function () awful.spawn("pactl set-sink-volume @DEFAULT_SINK@ +2%") end), +awful.key(nil, "XF86AudioMicMute", function () awful.spawn("pactl set-source-mute @DEFAULT_SOURCE@ toggle") end), +awful.key({ cmdkey }, "Home", function () awful.spawn("pactl set-source-mute @DEFAULT_SOURCE@ toggle") end), awful.key(nil, "XF86MonBrightnessDown", function () awful.spawn("xbacklight -dec 5%") end), awful.key(nil, "XF86MonBrightnessUp", function () awful.spawn("xbacklight -inc 5%") end), awful.key(nil, "XF86Display", function () awful.spawn("autorandr --change --force"); initialise_to_autorandr_profile() end), @@ -924,6 +927,7 @@ awful.key(nil, "XF86Tools", function () awful.spawn("") end), awful.key(nil, "XF86Search", function () awful.spawn("") end), awful.key(nil, "XF86LaunchA", function () awful.spawn("") end), awful.key(nil, "XF86Explorer", function () awful.spawn("") end), +awful.key(nil, "XF86Favorites", function () awful.spawn("systemctl suspend") end), awful.key({ cmdkey }, "Left", function () awful.spawn("xmms2 prev") end), awful.key({ cmdkey }, "Right", function () awful.spawn("xmms2 next") end), @@ -1016,8 +1020,17 @@ awful.rules.rules = { { rule = { class = "Thunderbird" }, callback = move_to_tag_by_name(nil, "cal"), }, + { rule = { instance = "mutt" }, + properties = { + new_tag = { + name = "mutt", + layout = awful.layout.suit.fair.horizontal, + volatile = true + }, + switchtotag = true, + }, + }, { rule_any = { class = { - "MuPDF", "Wicd-client.py", "Gxmessage", "Pinentry" @@ -1091,6 +1104,12 @@ 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 + local t = awful.screen.focused().selected_tag + if t.name == "xmutt" then + awful.client.setslave(c) + end + end if awesome.startup and not c.size_hints.user_position