1 {% set host = grains['host'] %}
4 set $black_super #555555
10 set $green_super #9dc54b
13 set $yellow_super #d1ca89
16 set $blue_super #7accda
19 set $magenta_super #b392ef
22 set $cyan_super #c8f0f0
25 set $white_super #ffffff
27 client.focused $black $yellow_super $black $black $black
28 client.focused_inactive $black $black_super $white $black $black
30 # Slight gaps around windows
33 # Read `man 5 sway` for a complete reference.
37 # Logo key. Use Mod1 for Alt.
39 # Home row direction keys, like vim
44 # Your preferred terminal emulator
46 # Your preferred application launcher
47 # Note: pass the final command to swaymsg so that the resulting window can be opened
48 # on the original workspace that the command was run on.
49 set $menu rofi -show drun | xargs swaymsg exec --
51 include /etc/sway/config-vars.d/*
53 ### Output configuration
55 # Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
56 output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
58 # Example configuration:
60 # output HDMI-A-1 resolution 1920x1080 position 1920,0
62 # You can get the names of your outputs by running: swaymsg -t get_outputs
64 ### Idle configuration
66 # Example configuration:
69 # timeout 300 'swaylock -f -c 000000' \
70 # timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
71 # before-sleep 'swaylock -f -c 000000'
73 # This will lock your screen after 300 seconds of inactivity, then turn off
74 # your displays after another 300 seconds, and turn your screens back on when
75 # resumed. It will also lock your screen before your computer goes to sleep.
77 {% set lockcmd = "swaylock -e -f -i ~/Pictures/Backgrounds/DSC02113.jpg" %}
80 timeout 300 "{{lockcmd}}" \
81 timeout 600 'systemctl hybrid-sleep' \
82 before-sleep "{{lockcmd}}"
85 ### Input configuration
87 # Example configuration:
89 # input "2:14:SynPS/2_Synaptics_TouchPad" {
92 # natural_scroll enabled
93 # middle_emulation enabled
96 # You can get the names of your inputs by running: swaymsg -t get_inputs
97 # Read `man 5 sway-input` for more information about this section.
98 # This keyboard has this layout on all machines:
100 input 5426:133:Razer_Razer_Basilisk_V2 {
106 input 1267:12356:ELAN1200:00_04F3:3044_Touchpad {
110 natural_scroll enabled
113 input 2362:597:UNIW0001:00_093A:0255_Touchpad {
117 natural_scroll enabled
120 input 1241:36:HOLDCHIP_USB_Keyboard {
123 xkb_options ctrl:nocaps
126 input 16700:8455:DELL_Dell_USB_Entry_Keyboard {
129 xkb_options ctrl:nocaps
132 input 65261:4871:TMK/Cub_Ergodox {
136 input 9494:21:CM_Storm_Quickfire_Pro_Ultimate_6_key {
139 xkb_options ctrl:nocaps
142 input 1:1:AT_Translated_Set_2_keyboard {
145 xkb_options ctrl:nocaps
148 input 9610:4102:Gaming_KB__Gaming_KB {
151 xkb_options ctrl:nocaps
155 input 1133:49948:Logitech_USB_Keyboard {
158 xkb_options ctrl:nocaps
166 bindsym $mod+Return exec $term
168 # Kill focused window
169 bindsym $mod+Shift+q kill
171 # Start your launcher
172 bindsym $mod+d exec $menu
174 # Drag floating windows by holding down $mod and left mouse button.
175 # Resize them with right mouse button + $mod.
176 # Despite the name, also works for non-floating windows.
177 # Change normal to inverse to use left mouse button for resizing and right
178 # mouse button for dragging.
179 floating_modifier $mod normal
181 # Reload the configuration file
182 bindsym $mod+Shift+c reload
184 # Exit sway (logs you out of your Wayland session)
185 bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
189 # Move your focus around
190 bindsym $mod+$left focus left
191 bindsym $mod+$down focus down
192 bindsym $mod+$up focus up
193 bindsym $mod+$right focus right
194 # Or use $mod+[up|down|left|right]
195 bindsym $mod+Left focus left
196 bindsym $mod+Down focus down
197 bindsym $mod+Up focus up
198 bindsym $mod+Right focus right
200 # Move the focused window with the same, but add Shift
201 bindsym $mod+Shift+$left move left
202 bindsym $mod+Shift+$down move down
203 bindsym $mod+Shift+$up move up
204 bindsym $mod+Shift+$right move right
205 # Ditto, with arrow keys
206 bindsym $mod+Shift+Left move left
207 bindsym $mod+Shift+Down move down
208 bindsym $mod+Shift+Up move up
209 bindsym $mod+Shift+Right move right
213 # Switch to workspace
214 {% for i in range(10) %}
215 bindsym $mod+{{ i }} workspace number {{ i }}
217 # Move focused container to workspace
218 bindsym $mod+Shift+{{ i }} move container to workspace number {{ i }}
224 # You can "split" the current object of your focus with
225 # $mod+b or $mod+v, for horizontal and vertical splits
227 bindsym $mod+b splith
228 bindsym $mod+v splitv
230 # Switch the current container between different layout styles
231 bindsym $mod+s layout stacking
232 bindsym $mod+w layout tabbed
233 bindsym $mod+e layout toggle split
235 # Make the current focus fullscreen
236 bindsym $mod+f fullscreen
238 # Toggle the current focus between tiling and floating mode
239 bindsym $mod+Shift+space floating toggle
241 # Swap focus between the tiling area and the floating area
242 bindsym $mod+space focus mode_toggle
244 # Move focus to the parent container
245 bindsym $mod+a focus parent
249 # Sway has a "scratchpad", which is a bag of holding for windows.
250 # You can send windows there and get them back later.
252 # Move the currently focused window to the scratchpad
253 bindsym $mod+Shift+minus move scratchpad
255 # Show the next scratchpad window or hide the focused scratchpad window.
256 # If there are multiple scratchpad windows, this command cycles through them.
257 bindsym $mod+minus scratchpad show
259 # Resizing containers:
262 # left will shrink the containers width
263 # right will grow the containers width
264 # up will shrink the containers height
265 # down will grow the containers height
266 bindsym $left resize shrink width 10px
267 bindsym $down resize grow height 10px
268 bindsym $up resize shrink height 10px
269 bindsym $right resize grow width 10px
271 # Ditto, with arrow keys
272 bindsym Left resize shrink width 10px
273 bindsym Down resize grow height 10px
274 bindsym Up resize shrink height 10px
275 bindsym Right resize grow width 10px
277 # Return to default mode
278 bindsym Return mode "default"
279 bindsym Escape mode "default"
281 bindsym $mod+r mode "resize"
283 bindsym $mod+Alt+l exec '{{ lockcmd }}'
286 include /etc/sway/config.d/*
287 # host specific section
288 {%- do salt.log.error('sway/files/' + host) -%}
290 {% include 'sway/files/' + host %}
292 for_window [app_id="zoom" title="^zoom$"] border none, floating enable
293 for_window [app_id="zoom" title="^(Zoom|About)$"] border pixel, floating enable
294 for_window [app_id="zoom" title="Settings"] floating enable, floating_minimum_size 960 x 700
295 for_window [app_id="zoom" title="Zoom Meeting(.*)?"] floating disable, inhibit_idle open