aboutsummaryrefslogtreecommitdiff
path: root/config.dot/awesome.link/keys.lua
blob: b8f78681ed4d7cce96debacb532cc62e2967f36f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
-- Key bindings
globalkeys = awful.util.table.join(root.keys(),
    --awful.key({ modkey, }, "a", function () awful.spawn("thunar")                           end, {description = "thunar",           group = "client"}),
    awful.key({ modkey, }, "a", function () awful.spawn("terminal ranger load")             end, {description = "ranger",             group = "client"}),
    --awful.key({ modkey, }, "b", function () awful.spawn("firefox-profile default")          end, {description = "firefox",            group = "client"}),
    awful.key({ modkey, }, "b", function () awful.spawn("chromium-incognito")               end, {description = "chromium-incognito", group = "client"}),
    awful.key({ modkey, }, "c", function () awful.spawn("terminal xcalendar")               end, {description = "calendar",           group = "client"}),
    awful.key({ modkey, }, "d", function () awful.spawn("terminal shell local media")       end, {description = "media",              group = "client"}),
    awful.key({ modkey, }, "e", function () awful.spawn("screenshot")                       end, {description = "screenshot",         group = "client"}),
    awful.key({ modkey, }, "g", function () awful.spawn("vmg")                              end, {description = "vmg",                group = "client"}),
    awful.key({ modkey, }, "h", function () awful.spawn("terminal chat")                    end, {description = "chat",               group = "client"}),
    --awful.key({ modkey, }, "i", function () awful.spawn("geeqie load")                    end, {description = "geeqie",             group = "client"}),
    awful.key({ modkey, }, "i", function () awful.spawn("screenshot -s")                    end, {description = "region screenshot",  group = "client"}),
    awful.key({ modkey, }, "l", function () awful.spawn("gpick -s -p")                      end, {description = "gpick",              group = "client"}),
    awful.key({ modkey, }, "m", function () awful.spawn("terminal xmail")                   end, {description = "mail",               group = "client"}),
    awful.key({ modkey, }, "n", function () awful.spawn("terminal news")                    end, {description = "news",               group = "client"}),
    --awful.key({ modkey, }, "o", function () awful.spawn("chromium-browser --incognito")     end, {description = "chromium",         group = "client"}),
    awful.key({ modkey, }, "o", function () awful.spawn("terminal-session-chooser")         end, {description = "session-chooser",    group = "client"}),
    awful.key({ modkey, }, "p", function () awful.spawn("terminal keyringer default sclip") end, {description = "keyringer",          group = "client"}),
    awful.key({ modkey, }, "s", function () awful.spawn("spoolpaste")                       end, {description = "qrpaste",            group = "client"}),
    --awful.key({ modkey, }, "s", function () awful.spawn("xsuspend")                         end, {description = "suspend",            group = "client"}),
    awful.key({ modkey, }, "t", function () awful.spawn("tor-browser")                      end, {description = "tor-browser",        group = "client"}),
    awful.key({ modkey, }, "u", function () awful.spawn("qrpaste")                          end, {description = "qrpaste",            group = "client"}),
    awful.key({ modkey, }, "v", function () awful.spawn("terminal vim")                     end, {description = "editor",             group = "client"}),
    awful.key({ modkey, }, "x", function () awful.spawn("terminal wicd-curses")             end, {description = "network",            group = "client"}),
    awful.key({ modkey, }, "y", function () awful.spawn("xclip-clean")                      end, {description = "clear clipboard",    group = "client"}),
    awful.key({ modkey, }, "z", function () awful.spawn("terminal shell root")              end, {description = "root",               group = "client"}),

    -- Unused
    --awful.key({ modkey, }, "e", function () awful.spawn("command") end, {description = "", group = "client"}),
    --awful.key({ modkey, }, "u", function () awful.spawn("command") end, {description = "", group = "client"}),

    -- Xlock
    awful.key({ modkey, }, "Print", function () awful.spawn("xlock") end, {description = "", group = "client"}),

    -- Xrandr
    -- See https://awesomewm.org/recipes/xrandr/
    awful.key({ modkey, }, "F7",
        function ()
            xrandr.xrandr()

            -- See https://awesomewm.org/apidoc/classes/gears.timer.html
            --     https://www.reddit.com/r/linux/comments/6odeur/i3_automatically_resize_wallpaperconky_on/
            --     https://github.com/ritave/xeventbind
            -- Any idea why this timer runs before intended?
            --gears.timer {
            --  timeout     = 10,
            --  autostart   = true,
            --  single_shot = true,
            --  call_now    = false,
            --  callback    = awful.spawn("xconky refresh")
            --}
        end,
        {description = "toggle display", group = "client"}
    ),

    -- Volume keys
    awful.key({ }, "XF86AudioRaiseVolume", function () awful.spawn("amixer set Master 9%+",    false) end, {description = "volume up",   group = "client"}),
    awful.key({ }, "XF86AudioLowerVolume", function () awful.spawn("amixer set Master 9%-",    false) end, {description = "volume down", group = "client"}),
    awful.key({ }, "XF86AudioMute",        function () awful.spawn("amixer set Master toggle", false) end, {description = "mute",        group = "client"}),

    -- Hibernate
    awful.key({  }, "XF86Launch1", function () awful.spawn("xhibernate") end, {description = "", group = "client"}),

    -- Clipboard between virtual machines
    awful.key({ modkey, "" }, "Up",   function () awful.spawn("kvmx-spice-copy")           end, {description = "kvmx-copy",      group = "client"}),
    awful.key({ modkey, "" }, "Down", function () awful.spawn("kvmx-spice-paste")          end, {description = "kvmx-paste",     group = "client"}),
    --awful.key({ modkey, "" }, "Down", function () awful.spawn("terminal kvmx-clipboard") end, {description = "kvmx-clipboard", group = "client"}),

    -- Virtual environments
    awful.key({ modkey, "Control" }, "a", function () awful.spawn("kvmx up tails")               end, {description = "vm: tails",                group = "client"}),
    awful.key({ modkey, "Control" }, "b", function () awful.spawn("kvmx up bankline")            end, {description = "vm: bankline",             group = "client"}),
    awful.key({ modkey, "Control" }, "e", function () awful.spawn("kvmx up test")                end, {description = "vm: test",                 group = "client"}),
    awful.key({ modkey, "Control" }, "k", function () awful.spawn("kvmx up work")                end, {description = "vm: work",                 group = "client"}),
    awful.key({ modkey, "Control" }, "m", function () awful.spawn("kvmx up messenger")           end, {description = "vm: messenger",            group = "client"}),
    awful.key({ modkey, "Control" }, "s", function () awful.spawn("kvmx up sandbox")             end, {description = "vm: sadbox",               group = "client"}),
    awful.key({ modkey, "Control" }, "t", function () awful.spawn("kvmx up tor")                 end, {description = "vm: tor",                  group = "client"}),
    awful.key({ modkey, "Control" }, "v", function () awful.spawn("kvmx up vpn")                 end, {description = "vm: vpn",                  group = "client"}),
    awful.key({ modkey, "Control" }, "x", function () awful.spawn("kvmx up tor-expendable")      end, {description = "vm: tor-expendable",       group = "client"}),
    awful.key({ modkey, "Control" }, "w", function () awful.spawn("kvmx up web")                 end, {description = "vm: web",                  group = "client"}),
    awful.key({ modkey, "Shift"   }, "a", function () awful.spawn("kvmx suspend tails")          end, {description = "vm: down: tails",          group = "client"}),
    awful.key({ modkey, "Shift"   }, "b", function () awful.spawn("kvmx suspend bankline")       end, {description = "vm: down: bankline",       group = "client"}),
    awful.key({ modkey, "Shift"   }, "e", function () awful.spawn("kvmx suspend test")           end, {description = "vm: down: test",           group = "client"}),
    awful.key({ modkey, "Shift"   }, "k", function () awful.spawn("kvmx suspend work")           end, {description = "vm: down: work",           group = "client"}),
    awful.key({ modkey, "Shift"   }, "m", function () awful.spawn("kvmx suspend messenger")      end, {description = "vm: down: messenger",      group = "client"}),
    awful.key({ modkey, "Shift"   }, "s", function () awful.spawn("kvmx suspend sandbox")        end, {description = "vm: down: sandbox",        group = "client"}),
    awful.key({ modkey, "Shift"   }, "t", function () awful.spawn("kvmx suspend tor")            end, {description = "vm: down: tor",            group = "client"}),
    awful.key({ modkey, "Shift"   }, "v", function () awful.spawn("kvmx suspend vpn")            end, {description = "vm: down: vpn",            group = "client"}),
    awful.key({ modkey, "Shift"   }, "x", function () awful.spawn("kvmx suspend tor-expendable") end, {description = "vm: down: tor-expendable", group = "client"}),
    awful.key({ modkey, "Shift"   }, "w", function () awful.spawn("kvmx suspend web")            end, {description = "vm: down: web",            group = "client"})
)

-- Set keys
root.keys(globalkeys)