-- {{{ Imports
+
-- Standard awesome library
local gears = require("gears")
local awful = require("awful")
name = "irc",
init = true,
exclusive = true,
- master_width_factor = 0.33,
layout = layouts.tiled,
selected = true,
exec_once = { terminal .. " -name irc -e env MOSH_TITLE_NOPREFIX=true mosh --family=all -- irc-host tmux new -As irc irssi" },
targets = { "gauting/eDP-?1", "lehel/DisplayPort-2" },
},
{
- name = "[m]",
+ name = "[]",
init = true,
exclusive = true,
- master_width_factor = 0.67,
+ master_count = 0,
+ column_count = 3,
layout = layouts.tiled,
selected = false,
exec_once = { "revolt" },
end
end
+local function move_tags_to_screen_relative(direction)
+ local s = awful.screen.focused()
+ for _,tag in ipairs(s.selected_tags) do
+ print("index: " .. s.index .. " count: " .. screen:count())
+ tag.screen = screen[(s.index + screen:count() + direction) % screen.count()]
+ end
+end
+
globalkeys = gears.table.join(
awful.key({ modkey, }, "s", hotkeys_popup.show_help,
{description="show help", group="awesome"}),
{description = "view previous", group = "tag"}),
awful.key({ modkey, }, "Right", awful.tag.viewnext,
{description = "view next", group = "tag"}),
- awful.key({ modkey, "Shift" }, "Left", function () awful.screen.focus_relative( 1) end,
- {description = "focus the next screen", group = "screen"}),
- awful.key({ modkey, "Shift" }, "Right", function () awful.screen.focus_relative(-1) end,
- {description = "focus the previous screen", group = "screen"}),
awful.key({ modkey, }, "Escape", awful.tag.history.restore,
{description = "go back", group = "tag"}),
),
-- Layout manipulation
- awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( 1) end,
+ awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( 1) end,
{description = "swap with next client by index", group = "client"}),
- awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( -1) end,
+ awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx(-1) end,
{description = "swap with previous client by index", group = "client"}),
awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative( 1) end,
{description = "focus the next screen", group = "screen"}),
awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative(-1) end,
{description = "focus the previous screen", group = "screen"}),
+ awful.key({ modkey, "Shift", "Control" }, "k", function () move_tags_to_screen_relative( 1) end,
+ {description = "move tags to the next screen", group = "screen"}),
+ awful.key({ modkey, "Shift", "Control" }, "j", function () move_tags_to_screen_relative(-1) end,
+ {description = "move tags to the previous screen", group = "screen"}),
awful.key({ modkey, "Shift" }, "Return", awful.client.urgent.jumpto,
{description = "jump to urgent client", group = "client"}),
awful.key({ modkey, }, "Tab",
{description = "view tag 'irc'", group = "tag"}),
awful.key({ modkey, "Control" }, "y", toggle_tag_by_name("irc"),
{description = "toggle tag 'irc'", group = "tag"}),
- awful.key({ modkey }, "u", toggle_tag_by_name("[m]", true),
- {description = "view tag '[m]'", group = "tag"}),
- awful.key({ modkey, "Control" }, "u", toggle_tag_by_name("[m]"),
- {description = "toggle tag '[m]'", group = "tag"}),
+ awful.key({ modkey }, "u", toggle_tag_by_name("[]", true),
+ {description = "view tag '[]'", group = "tag"}),
+ awful.key({ modkey, "Control" }, "u", toggle_tag_by_name("[]"),
+ {description = "toggle tag '[]'", group = "tag"}),
awful.key({ modkey }, "i", toggle_tag_by_name("cal", true),
{description = "view tag 'cal'", group = "tag"}),
awful.key({ modkey, "Control" }, "i", toggle_tag_by_name("cal"),
awful.key({ cmdkey }, "p", function () awful.spawn("pavucontrol") end),
awful.key({ cmdkey }, "i", function () awful.spawn(terminal .. " -name irc -e env MOSH_TITLE_NOPREFIX=true mosh --family=all -- irc-host tmux new -As irc irssi") end),
awful.key({ cmdkey }, "x", function ()
- awful.spawn("/usr/bin/xscreensaver -no-capture-stderr")
- os.execute("sleep 5")
- awful.spawn("xscreensaver-command -lock")
+ awful.spawn("xautolock -enable")
+ awful.spawn("xautolock -locknow")
end),
-awful.key({ cmdkey, "Shift" }, "x", function () awful.spawn("xscreensaver-command -exit") end),
+awful.key({ cmdkey, "Shift" }, "x", function () awful.spawn("xautolock -disable") end),
awful.key({ cmdkey }, "BackSpace", function () awful.spawn("pkill -USR1 offlineimap") end),
{ rule = { instance = "irc" },
callback = move_to_tag_by_name(nil, "irc"),
},
+ { rule = { class = "scrcpy" },
+ callback = move_to_tag_by_name(nil, "[]"),
+ },
{ rule_any = { class = { "Firefox", "firefox" } },
callback = move_to_tag_by_name(nil, "ffx"),
},
},
},
{ rule_any = { class = {
- "Gscan2pdf",
"Gimp",
"Inkscape",
"Pitivi",
--switchtotag = true,
focus = true,
},
- },
+ },
+ { rule_any = { class = {
+ "Gscan2pdf",
+ },
+ },
+ except_any = { type = { "dialog" } },
+ properties = { new_tag = {
+ layout = layouts.default,
+ volatile = true,
+ },
+ floating = true,
+ maximized = false,
+ focus = true,
+ placement = awful.placement.centered,
+ switchtotag = true,
+ focus = true,
+ },
+ },
--XX-- { rule = { class = "Gscan2pdf" },
--XX-- properties = {
--XX-- switchtotag = true
-- 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 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
and awful.client.focus.filter(c) then
client.focus = c
end
+--17 18:03 < psychon> madduck: yes. In the default config at the very end there is code that actives a client on mouse::enter. Just add if c.class == "whatever virt-viewer uses" then return end to that, or
+-- something like this
end)
client.connect_signal("focus", function(c)