-
Notifications
You must be signed in to change notification settings - Fork 0
/
kwmrc
171 lines (133 loc) · 3.97 KB
/
kwmrc
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
# This is a sample config for Kwm
# The commands listed here can be of
# two types.
#
# Commands prefixed with 'kwmc' will call
# local functions corresponding to the
# kwmc syntax.
#
# To run a system command, use the prefix
# 'sys' and then the requested command
# e.g 'sys mvim' would open macvim
# Set default values for screen padding
kwmc config padding top 20
kwmc config padding bottom 20
kwmc config padding left 10
kwmc config padding right 10
# Set default values for container gaps
kwmc config gap vertical 5
kwmc config gap horizontal 10
# Enable green border.
# The first two numbers are the opacity, the rest is the hex
kwmc config focused-border enable
kwmc config focused-border size 9
kwmc config focused-border color 991C86EE
kwmc config marked-border enable
kwmc config marked-border size 5
kwmc config marked-border color 75ff7122
kwmc config prefix-border enable
kwmc config prefix-border size 9
kwmc config prefix-border color 99FFFF00
# Let Kwm listen for hotkeys
kwmc config hotkeys enable
# Set prefix for Kwms hotkeys
kwmc config prefix cmd+ctrl-k
kwmc config prefix-timeout 0.50
# Set focus-follows-mouse-mode to autoraise
kwmc config focus autoraise
# Enable mouse-follows-focus
kwmc config focus mouse-follows enable
# Cycle focus through all screens
kwmc config cycle-focus all
# Window can be made floating through drag&drop
kwmc config dragndrop enable
# Allow Kwm to tile windows
kwmc config tiling enable
# New splits should become the left leaf-node
kwmc config spawn left
# Default tiling mode for new spaces
kwmc config space bsp
# Override default tiling mode for given monitors
# kwmc config screen 0 bsp
# kwmc config screen 1 monocle
# Set default split ratio
kwmc config split-ratio 0.75
# Add custom tiling rules for applications that
# does not get tiled by Kwm by default.
# This is because some applications do not have the
# AXWindowRole and AXStandardWindowSubRole
kwmc config add-role AXDialog iTerm2
kwmc config add-role AXStandardWindow Emacs
kwmc config add-role AXWindow Karabiner
# Automatically float non-resizable windows
kwmc config float-non-resizable enable
# The following command captures an application to the
# given screen, if the screen exists. By doing this
# the application can no longer be moved to other screens
# kwmc config capture 1 iTunes
#### Defaulto Keybindings For Interacting With Kwm
kwmc bind prefix-t config focus toggle
kwmc bind prefix-e window -c refresh
kwmc bind ctrl+alt-1 screen -m 0
kwmc bind ctrl+alt-2 screen -m 1
kwmc bind ctrl+alt-3 screen -m 2
kwmc bind cmd+alt-s space -t bsp
kwmc bind cmd+alt-f space -t monocle
kwmc bind cmd+alt-d space -t float
kwmc bind prefix-p window -t parent
# Swap With Marked Window
kwmc bind prefix-m mark -w focused
kwmc bind prefix-w window -s mark
# R
kwmc bind prefix-r tree -r 90
# Set temporary window container
#
# W
kwmc bind prefix-g window -t float
# F
kwmc bind prefix-f window -t fullscreen
# Give focus to window
#
# h
kwmc bind prefix-h window -f west
# j
kwmc bind prefix-j window -f south
# k
kwmc bind prefix-k window -f north
# l
kwmc bind prefix-l window -f east
# l
kwmc bind prefix-b window -f prev
# Move focused window
#
# H
kwmc bind prefix+shift-h window -s west
# J
kwmc bind prefix+shift-j window -s south
# K
kwmc bind prefix+shift-k window -s north
# L
kwmc bind prefix+shift-l window -s east
# B
kwmc bind prefix+shift-b window -s east
# y
kwmc bind prefix-q quit
# s
kwmc bind prefix-s window -c split
# Resize windows
# Down
kwmc bind prefix-up window -c reduce 0.025
# Up
kwmc bind prefix-down window -c expand 0.025
# LEFT
kwmc bind prefix-left window -c reduce 0.025
# RIGHT
kwmc bind prefix-right window -c expand 0.025
kwmc bind prefix-2 tree restore development
kwmc bind prefix-1 tree restore chatting
kwmc bind prefix-3 tree restore threeverticalsplits
kwmc bind prefix-i sys open -a /Applications/iTerm.app
kwmc bind prefix-u sys open -a /Applications/iTunes.app
kwmc bind prefix-v sys open -a /Applications/slack.app
# Restart
kwmc bind prefix-q kwmc quit