summaryrefslogtreecommitdiff
path: root/modules/examples
diff options
context:
space:
mode:
authorDaiderd Jordan <daiderd@gmail.com>2018-07-08 11:39:03 +0200
committerDaiderd Jordan <daiderd@gmail.com>2018-07-08 11:53:55 +0200
commit4e36591b0772a43ff33957262c3dd704bd1b3e94 (patch)
tree5443fc0bdd21ba082e6e37ed30c3ae4de1e8893c /modules/examples
parent2726b44842abf3b6776141f2887206682caf381b (diff)
lnl: khd -> skhd
Diffstat (limited to 'modules/examples')
-rw-r--r--modules/examples/lnl.nix312
1 files changed, 81 insertions, 231 deletions
diff --git a/modules/examples/lnl.nix b/modules/examples/lnl.nix
index f830853..7e2572f 100644
--- a/modules/examples/lnl.nix
+++ b/modules/examples/lnl.nix
@@ -50,6 +50,7 @@
services.khd.enable = true;
services.kwm.enable = true;
+ services.skhd.enable = true;
launchd.user.agents.fetch-nixpkgs = {
command = "${pkgs.git}/bin/git -C ~/.nix-defexpr/nixpkgs fetch origin master";
@@ -437,215 +438,11 @@
'';
services.khd.khdConfig = ''
- # remap left-control h/j/k/l -> arrow keys
- lctrl - h [Safari] : qes -k "left"
- lctrl - j [Safari] : qes -k "down"
- lctrl - k [Safari] : qes -k "up"
- lctrl - l [Safari] : qes -k "right"
-
- shift + lctrl - h [Safari] : qes -k "shift - left"
- shift + lctrl - j [Safari] : qes -k "shift - down"
- shift + lctrl - k [Safari] : qes -k "shift - up"
- shift + lctrl - l [Safari] : qes -k "shift - right"
-
- # remap left-control a / e -> start / end of line
- lctrl - a [Safari] : qes -k "cmd - left"
- lctrl - e [Safari] : qes -k "cmd - right"
-
- shift + lctrl - e [Safari] : qes -k "shift + cmd - left"
- shift + lctrl - e [Safari] : qes -k "shift + cmd - right"
-
- # remap left-control b / w -> start / end of word
- lctrl - b [Safari] : qes -k "alt - left"
- lctrl - w [Safari] : qes -k "alt - right"
-
- shift + lctrl - b [Safari] : qes -k "shift + alt - left"
- shift + lctrl - w [Safari] : qes -k "shift + alt - right"
-
- # remap left-control u / d -> page up / page down
- lctrl - u [Safari] : qes -k "alt - up"
- lctrl - d [Safari] : qes -k "alt - down"
-
- shift + lctrl - u [Safari] : qes -k "shift + alt - up"
- shift + lctrl - d [Safari] : qes -k "shift + alt - down"
-
- # remap left-control x -> forward delete
- lctrl - x [Safari] : qes -k "delete"
-
- # remap left-control g -> escape
- lctrl - g [Safari] : qes -k "0x35"
-
-
# modifier only mappings
khd mod_trigger_timeout 0.2
- lctrl : qes -k "escape"
- lshift : qes -t "("
- rshift : qes -t ")"
-
-
- # set border color for different modes
- khd mode default on_enter kwmc config border focused color 0x00000000
- khd mode switcher on_enter kwmc config border focused color 0xddbdd322
- khd mode scratchpad on_enter kwmc config border focused color 0xddd75f5f
- khd mode swap on_enter kwmc config border focused color 0xdd458588
- khd mode tree on_enter kwmc config border focused color 0xddfabd2f
- khd mode space on_enter kwmc config border focused color 0xddb16286
- khd mode info on_enter kwmc config border focused color 0xddcd950c
-
-
- # toggle between modes
- alt - f : khd -e "mode activate switcher"
- switcher + alt - f : khd -e "mode activate default"
- swap + alt - f : khd -e "mode activate switcher"
- space + alt - f : khd -e "mode activate switcher"
- tree + alt - f : khd -e "mode activate switcher"
- info + alt - f : khd -e "mode activate switcher"
- scratchpad + alt - f : khd -e "mode activate switcher"
-
- switcher + alt - g : khd -e "mode activate default"
- swap + alt - g : khd -e "mode activate default"
- space + alt - g : khd -e "mode activate default"
- tree + alt - g : khd -e "mode activate default"
- info + alt - g : khd -e "mode activate default"
- scratchpad + alt - g : khd -e "mode activate default"
- switcher + ctrl - g : khd -e "mode activate default"
- swap + ctrl - g : khd -e "mode activate default"
- space + ctrl - g : khd -e "mode activate default"
- tree + ctrl - g : khd -e "mode activate default"
- info + ctrl - g : khd -e "mode activate default"
- scratchpad + ctrl - g : khd -e "mode activate default"
- switcher - 0x35 : khd -e "mode activate default"
- swap - 0x35 : khd -e "mode activate default"
- space - 0x35 : khd -e "mode activate default"
- tree - 0x35 : khd -e "mode activate default"
- info - 0x35 : khd -e "mode activate default"
- scratchpad - 0x35 : khd -e "mode activate default"
-
- switcher - w : khd -e "mode activate scratchpad"
- switcher - a : khd -e "mode activate swap"
- switcher - s : khd -e "mode activate space"
- switcher - d : khd -e "mode activate tree"
- switcher - q : khd -e "mode activate info"
-
-
- # switcher mode
- switcher + shift - r : killall kwm;\
- khd -e "reload";\
- khd -e "mode activate default"
-
- switcher - return : open -na /Applications/iTerm2.app;\
- khd -e "mode activate default"
-
- switcher - h : kwmc window -f west
- switcher - l : kwmc window -f east
- switcher - j : kwmc window -f south
- switcher - k : kwmc window -f north
- switcher - n : kwmc window -fm prev
- switcher - m : kwmc window -fm next
-
- switcher - 1 : kwmc space -fExperimental 1
- switcher - 2 : kwmc space -fExperimental 2
- switcher - 3 : kwmc space -fExperimental 3
- switcher - 4 : kwmc space -fExperimental 4
- switcher - 5 : kwmc space -fExperimental 5
- switcher - 6 : kwmc space -fExperimental 6
-
- switcher + shift - 1 : kwmc display -f 0
- switcher + shift - 2 : kwmc display -f 1
- switcher + shift - 3 : kwmc display -f 2
-
-
- scratchpad - a : kwmc scratchpad add
- scratchpad - s : kwmc scratchpad toggle 0
- scratchpad - d : kwmc scratchpad remove
-
- scratchpad - 1 : kwmc scratchpad toggle 1
- scratchpad - 2 : kwmc scratchpad toggle 2
- scratchpad - 3 : kwmc scratchpad toggle 3
- scratchpad - 4 : kwmc scratchpad toggle 4
- scratchpad - 5 : kwmc scratchpad toggle 5
- scratchpad - 6 : kwmc scratchpad toggle 6
-
-
- # swap mode
- swap - h : kwmc window -s west
- swap - j : kwmc window -s south
- swap - k : kwmc window -s north
- swap - l : kwmc window -s east
- swap - m : kwmc window -s mark
-
- swap + shift - k : kwmc window -m north
- swap + shift - l : kwmc window -m east
- swap + shift - j : kwmc window -m south
- swap + shift - h : kwmc window -m west
- swap + shift - m : kwmc window -m mark
-
- swap - 1 : kwmc window -m space 1
- swap - 2 : kwmc window -m space 2
- swap - 3 : kwmc window -m space 3
- swap - 4 : kwmc window -m space 4
- swap - 5 : kwmc window -m space 5
-
- swap - z : kwmc window -m space left
- swap - c : kwmc window -m space right
-
- swap + shift - 1 : kwmc window -m display 0
- swap + shift - 2 : kwmc window -m display 1
- swap + shift - 3 : kwmc window -m display 2
-
-
- # space mode
- space - a : kwmc space -t bsp
- space - s : kwmc space -t monocle
- space - d : kwmc space -t float
-
- space - x : kwmc space -g increase horizontal
- space - y : kwmc space -g increase vertical
-
- space + shift - x : kwmc space -g decrease horizontal
- space + shift - y : kwmc space -g decrease vertical
-
- space - left : kwmc space -p increase left
- space - right : kwmc space -p increase right
- space - up : kwmc space -p increase top
- space - down : kwmc space -p increase bottom
- space - p : kwmc space -p increase all
-
- space + shift - left : kwmc space -p decrease left
- space + shift - right : kwmc space -p decrease right
- space + shift - up : kwmc space -p decrease top
- space + shift - down : kwmc space -p decrease bottom
- space + shift - p : kwmc space -p decrease all
-
-
- # tree mode
- tree - a : kwmc window -c type bsp
- tree - s : kwmc window -c type monocle
- tree - f : kwmc window -z fullscreen
- tree - d : kwmc window -z parent
- tree - w : kwmc window -t focused
- tree - r : kwmc tree rotate 90
-
- tree - q : kwmc window -c split - mode toggle;\
- khd -e "mode activate default"
-
- tree - c : kwmc window -c type toggle;\
- khd -e "mode activate default"
-
- tree - h : kwmc window -c expand 0.05 west
- tree - j : kwmc window -c expand 0.05 south
- tree - k : kwmc window -c expand 0.05 north
- tree - l : kwmc window -c expand 0.05 east
- tree + shift - h : kwmc window -c reduce 0.05 west
- tree + shift - j : kwmc window -c reduce 0.05 south
- tree + shift - k : kwmc window -c reduce 0.05 north
- tree + shift - l : kwmc window -c reduce 0.05 east
-
- tree - p : kwmc tree -pseudo create
- tree + shift - p : kwmc tree -pseudo destroy
-
- tree - o : kwmc window -s prev
- tree + shift - o : kwmc window -s next
+ lctrl : qes -k "escape"
+ lshift : qes -t "("
+ rshift : qes -t ")"
'';
services.kwm.kwmConfig = ''
@@ -653,50 +450,103 @@
kwmc config split-ratio 0.5
kwmc config spawn left
+ kwmc config padding 40 15 15 15
+ kwmc config gap 15 15
- kwmc config padding 28 0 2 0
- kwmc config gap 4 4
- kwmc config display 1 padding 40 20 20 20
- kwmc config display 1 gap 10 10
- kwmc config display 2 padding 40 20 20 20
- kwmc config display 2 gap 10 10
+ kwmc config space 0 3 padding 125 125 125 125
+ kwmc config display 1 padding 75 70 70 70
+ kwmc config display 2 padding 75 70 70 70
kwmc config space 0 1 name main
- kwmc config space 0 2 name rnd
kwmc config space 0 2 mode monocle
- kwmc config space 0 3 name web
- kwmc config space 1 1 name dev
- kwmc config space 1 1 mode monocle
+ kwmc config space 0 2 name rnd
+ kwmc config space 0 3 name dev
+ kwmc config space 1 1 name web
kwmc config space 2 1 name var
kwmc config focus-follows-mouse on
kwmc config mouse-follows-focus on
- kwmc config standby-on-float on
- kwmc config center-on-float on
+ kwmc config standby-on-float on
+ kwmc config center-on-float on
kwmc config float-non-resizable on
- kwmc config lock-to-container on
- kwmc config cycle-focus on
- kwmc config optimal-ratio 1.605
-
- kwmc config border focused on
- kwmc config border focused size 2
- kwmc config border focused color 0x00000000
- kwmc config border focused radius 6
+ kwmc config lock-to-container on
+ kwmc config cycle-focus on
+ kwmc config optimal-ratio 1.605
- kwmc config border marked on
- kwmc config border marked size 2
- kwmc config border marked color 0xDD7f7f7f
- kwmc config border marked radius 6
kwmc rule owner="Airmail" properties={float="true"}
kwmc rule owner="Apple Store" properties={float="true"}
+ kwmc rule owner="Finder" properties={role="AXDialog"}
+ kwmc rule owner="Finder" role="AXDialog" properties={float="true"}
kwmc rule owner="Info" properties={float="true"}
kwmc rule owner="System Preferences" properties={float="true"}
kwmc rule owner="iTerm2" properties={role="AXDialog"}
kwmc rule owner="iTunes" properties={float="true"}
'';
+ services.skhd.package = pkgs.skhd;
+
+ services.skhd.skhdConfig = ''
+ # focus window
+ alt - h : kwmc window -f west
+ alt - j : kwmc window -f south
+ alt - k : kwmc window -f north
+ alt - l : kwmc window -f east
+
+ # swap window
+ shift + alt - h : kwmc window -s west
+ shift + alt - j : kwmc window -s south
+ shift + alt - k : kwmc window -s north
+ shift + alt - l : kwmc window -s east
+
+ # move window
+ ctrl + alt - h : kwmc window -m west
+ ctrl + alt - j : kwmc window -m south
+ ctrl + alt - k : kwmc window -m north
+ ctrl + alt - l : kwmc window -m east
+
+ # send window to desktop
+ ctrl + alt - 0x12 : kwmc window -m space 1
+ ctrl + alt - 0x13 : kwmc window -m space 2
+ ctrl + alt - 0x14 : kwmc window -m space 3
+
+ # focus monitor
+ alt - 0x12 : kwmc display -f 0
+ alt - 0x13 : kwmc display -f 1
+ alt - 0x14 : kwmc display -f 2
+
+ # send window to monitor
+ shift + alt - 0x12 : kwmc window -m display 0
+ shift + alt - 0x13 : kwmc window -m display 1
+ shift + alt - 0x14 : kwmc window -m display 2
+
+ # toggle window fullscreen
+ shift + alt - f : kwmc window -z fullscreen
+
+ # toggle window parent zoom
+ shift + alt - d : kwmc window -z parent
+
+ # float / unfloat window and center on screen
+ shift + alt - w : kwmc window -t focused
+
+ # toggle sticky, float and resize to picture-in-picture size
+ # shift + alt - s : chunkc tiling::window --toggle sticky;\
+ # chunkc tiling::window --grid-layout 5:5:4:0:1:1
+
+ # rotate tree
+ ctrl + alt - r : kwmc tree rotate 90
+
+ # change layout of desktop
+ ctrl + alt - a : kwmc space -t bsp
+ ctrl + alt - s : kwmc space -t monocle
+ ctrl + alt - d : kwmc space -t float
+
+ # quit/reload daemons
+ ctrl + alt - q : kwmc quit;\
+ khd -e "reload"
+ '';
+
# You should generally set this to the total number of logical cores in your system.
# $ sysctl -n hw.ncpu
nix.maxJobs = 1;