-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsway_config
306 lines (262 loc) · 8.98 KB
/
sway_config
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
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
input * xkb_layout "ie"
set $base00 #181818
set $base01 #282828
set $base02 #383838
set $base03 #585858
set $base04 #b8b8b8
set $base05 #d8d8d8
set $base06 #e8e8e8
set $base07 #f8f8f8
set $base08 #ab4642
set $base09 #dc9656
set $base0A #f7ca88
set $base0B #a1b56c
set $base0C #86c1b9
set $base0D #7cafc2
set $base0E #ba8baf
set $base0F #a16946
client.focused $base05 $base0D $base00 $base0D $base0D
client.focused_inactive $base01 $base01 $base05 $base03 $base01
client.unfocused $base01 $base00 $base05 $base01 $base01
client.urgent $base08 $base08 $base00 $base08 $base08
client.placeholder $base00 $base00 $base05 $base00 $base00
client.background $base07
exec kanshi
exec mkfifo $SWAYSOCK.wob && tail -f $SWAYSOCK.wob | wob -a bottom
exec udiskie
exec mako
exec wlsunset -l 53.3 -L -6.5
### Variables
#set $font 'Noto Sans Mono 12'
set $font 'NotoSansMono Nerd Font 12'
font $font
set $mod Mod4
set $left h
set $down j
set $up k
set $right l
#set $term termite
set $term alacritty
bindsym $mod+numbersign exec MOZ_ENABLE_WAYLAND=1 firefox
#set $menu BEMENU_BACKEND="wayland" bemenu-run -i -p 'exec:' --fn $font | xargs swaymsg exec --
#set $menu j4-dmenu-desktop --term='termite -e' --dmenu='bemenu -i -p "apps:" --fn $font"'
set $menu wofi --show drun -f -i
### Output configuration
#
output * bg /home/john/.config/sway/jack.jpg fill
#output DP-3 bg blah.jpg fill
#output eDP-1 pos 0 640 res 1920x1080
#output DP-3 pos 1920 0 res 2560x1440
#output DP-4 pos 4480 0 res 2560x1440
#
# Example configuration:
# output HDMI-A-1 resolution 1920x1080 position 1920,0
# You can get the names of your outputs by running: swaymsg -t get_outputs
### Idle configuration
#
# Example configuration:
#
# exec swayidle -w \
# timeout 300 'swaylock -f -c 000000' \
# timeout 600 'swaymsg "output * dpms off"' \
# resume 'swaymsg "output * dpms on"' \
# before-sleep 'swaylock -f -c 000000'
#
# This will lock your screen after 300 seconds of inactivity, then turn off
# your displays after another 300 seconds, and turn your screens back on when
# resumed. It will also lock your screen before your computer goes to sleep.
### Input configuration
#
# Example configuration:
#
# input "2:14:SynPS/2_Synaptics_TouchPad" {
# dwt enabled
# tap enabled
# natural_scroll enabled
# middle_emulation enabled
# }
#
# You can get the names of your inputs by running: swaymsg -t get_inputs
# Read `man 5 sway-input` for more information about this section.
### Key bindings
#
# Basics:
#
# Start a terminal
bindsym $mod+Return exec $term
bindsym $mod+Shift+Return exec $term -t termfloat
# Kill focused window
bindsym $mod+Shift+q kill
# Start your launcher
bindsym $mod+d exec $menu
floating_modifier $mod normal
# Reload the configuration file
bindsym $mod+Shift+c reload
bindsym $mod+Shift+r restart
# Exit sway (logs you out of your Wayland session)
bindsym $mod+Shift+e exec swaynag -t warning -m 'Exit Sway?' -b 'Yes, exit sway' 'swaymsg exit'
#
# Moving around:
#
# Move your focus around
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# Or use $mod+[up|down|left|right]
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Move the focused window with the same, but add Shift
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# Ditto, with arrow keys
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
#
# Workspaces:
#
# Switch to workspace
bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10
# Move focused container to workspace
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
bindsym $mod+Shift+0 move container to workspace 10
bindsym $mod+u workspace prev_on_output
bindsym $mod+i workspace next_on_output
workspace 1 output DP-3
workspace 2 output DP-3
workspace 3 output DP-3
workspace 4 output DP-3
workspace 5 output DP-5
workspace 6 output DP-5
workspace 7 output DP-5
workspace 8 output DP-5
workspace 9 output DP-5
#
# Layout stuff:
#
# You can "split" the current object of your focus with
# $mod+b or $mod+v, for horizontal and vertical splits
# respectively.
bindsym $mod+b splith
bindsym $mod+v splitv
# Switch the current container between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# Make the current focus fullscreen
bindsym $mod+f fullscreen
# Toggle the current focus between tiling and floating mode
bindsym $mod+Shift+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+space focus mode_toggle
# Move focus to the parent container
bindsym $mod+a focus parent
#
# Scratchpad:
#
bindsym $mod+Shift+Backspace move scratchpad
bindsym $mod+Backspace scratchpad show
#
# Resizing containers:
#
mode "resize" {
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
bindsym $mod+Ctrl+Right resize shrink width 4 px or 4 ppt
bindsym $mod+Ctrl+Up resize grow height 4 px or 4 ppt
bindsym $mod+Ctrl+Down resize shrink height 4 px or 4 ppt
bindsym $mod+Ctrl+Left resize grow width 4 px or 4 ppt
#
# Status Bar:
#
bar {
position bottom
pango_markup enabled
# When the status_command prints a new line to stdout, swaybar updates.
# The default just shows the current date and time.
#status_command while date +'%Y-%m-%d %l:%M:%S %p'; do sleep 1; done
status_command while ~/.config/sway/sway_bar.sh; do sleep 2; done
#status_command /sbin/bumblebee-status -m cpu memory battery time \
# pasink pasource -p time.format="%H:%M" -t solarized
colors {
statusline #ffffff
#background #323232
#inactive_workspace #32323200 #32323200 #5c5c5c
background #00000050
inactive_workspace #323232AA #323232AA #5c5c5cAA
}
}
#
# Custom stuff
#
#Audio and brightness controls
#bindsym XF86AudioRaiseVolume exec "amixer -q sset Master,0 1+ unmute"
#bindsym XF86AudioLowerVolume exec "amixer -q sset Master,0 1- unmute"
#bindsym XF86AudioMute exec "amixer -q sset Master,0 toggle"
#bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
#bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
#bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
#bindsym XF86AudioRaiseVolume exec pamixer -ui 5
#bindsym XF86AudioLowerVolume exec pamixer -ud 5
#bindsym XF86AudioMute exec pamixer -m
bindsym XF86AudioRaiseVolume exec pamixer -ui 5 && pamixer --get-volume > $SWAYSOCK.wob
bindsym XF86AudioLowerVolume exec pamixer -ud 5 && pamixer --get-volume > $SWAYSOCK.wob
bindsym XF86AudioMute exec pamixer -m && echo 0 > $SWAYSOCK.wob
bindsym XF86MonBrightnessUp exec "light -A 10"
bindsym XF86MonBrightnessDown exec "light -U 10"
#for_window [class="^.*"] border pixel 0
default_border pixel 1
default_floating_border normal
#for_window [app_id="firefox"] border pixel 0
for_window [title="termfloat"] floating enable
for_window [app_id="mpv"] {
border pixel 0
floating enable
}
for_window [class="Git-gui"] floating enable
for_window [class="Signal"] floating enable
#for_window [title="Firefox - Sharing Indicator"] kill
#for_window [title="Slack Call Minipanel"] floating enable sticky enable move position center move right 1000px move down 800px
#for_window [title="Slack call.*"] resize shrink left 400 px
#smart_borders on
#smart_gaps on
#gaps inner 2
#gaps outer 2
hide_edge_borders --i3 smart
bindsym $mod+p exec grim -g "$(slurp)" - | wl-copy
bindsym $mod+Shift+p exec grim - | wl-copy
bindsym $mod+z exec swaylock -f -c 000000
include /etc/sway/config.d/*