sisyphus/stow/sway/.config/sway/keybinds

195 lines
6 KiB
Text

set $notify ~/projects/sisyphus/scripts/notify.sh
# Focus
bindsym {
$flag+$up focus up
$flag+$right focus right
$flag+$down focus down
$flag+$left focus left
$flag+Up focus up
$flag+Right focus right
$flag+Down focus down
$flag+Left focus left
$flag+p focus parent
$flag+space focus mode_toggle
}
# Move windows
bindsym {
$flag+Shift+$up move up
$flag+Shift+$right move right
$flag+Shift+$down move down
$flag+Shift+$left move left
$flag+Shift+Up move up
$flag+Shift+Right move right
$flag+Shift+Down move down
$flag+Shift+Left move left
$flag+Next move scratchpad
$flag+KP_Next move scratchpad
$flag+Prior scratchpad show
$flag+KP_Prior scratchpad show
}
# Layouts
bindsym {
$flag+z layout toggle split
$flag+x layout tabbed
$flag+c split h
$flag+v split v
$flag+f floating enable, border normal 1
$flag+Shift+f floating disable, border pixel 1
$flag+s sticky toggle
$flag+F11 fullscreen
$alt+Next border pixel 1 # Show window title
$alt+KP_Next border pixel 1
$alt+Prior border normal 1 # Hide window title
$alt+KP_Prior border normal 1
}
# Workspaces
set {
$ws1 "1:1"
$ws2 "2:2"
$ws3 "3:3"
$ws4 "4:4"
$ws5 "5:5"
$ws6 "6:6"
$ws7 "7:7"
$ws8 "8:8"
$ws9 "9:9"
$ws10 "10:10"
$ws11 "11:Soc"
$ws12 "12:Ent"
}
bindsym {
$flag+1 workspace $ws1
$flag+2 workspace $ws2
$flag+3 workspace $ws3
$flag+4 workspace $ws4
$flag+5 workspace $ws5
$flag+6 workspace $ws6
$flag+7 workspace $ws7
$flag+8 workspace $ws8
$flag+9 workspace $ws9
$flag+0 workspace $ws10
$flag+minus workspace $ws11
$flag+equal workspace $ws12
$flag+Shift+1 move container to workspace $ws1, workspace $ws1
$flag+Shift+2 move container to workspace $ws2, workspace $ws2
$flag+Shift+3 move container to workspace $ws3, workspace $ws3
$flag+Shift+4 move container to workspace $ws4, workspace $ws4
$flag+Shift+5 move container to workspace $ws5, workspace $ws5
$flag+Shift+6 move container to workspace $ws6, workspace $ws6
$flag+Shift+7 move container to workspace $ws7, workspace $ws7
$flag+Shift+8 move container to workspace $ws8, workspace $ws8
$flag+Shift+9 move container to workspace $ws9, workspace $ws9
$flag+Shift+0 move container to workspace $ws10, workspace $ws10
$flag+Shift+minus move container to workspace $ws11, workspace $ws11
$flag+Shift+equal move container to workspace $ws12, workspace $ws12
$flag+Control+$left workspace prev_on_output
$flag+Control+$right workspace next_on_output
$flag+Control+Left workspace prev_on_output
$flag+Control+Right workspace next_on_output
--whole-window $flag+$scrollUp workspace prev_on_output
--whole-window $flag+$scrollDown workspace next_on_output
$flag+Control+Shift+$left move container to workspace prev_on_output, workspace prev_on_output
$flag+Control+Shift+$right move container to workspace next_on_output, workspace next_on_output
$flag+Control+Shift+Left move container to workspace prev_on_output, workspace prev_on_output
$flag+Control+Shift+Right move container to workspace next_on_output, workspace next_on_output
}
bindgesture {
swipe:3:right workspace prev_on_output
swipe:3:left workspace next_on_output
}
# Outputs
bindsym {
$flag+Control+$up focus output up
$flag+Control+$down focus output down
$flag+Control+Up focus output up
$flag+Control+Down focus output down
$flag+Control+Shift+$up move container to output up, focus output up
$flag+Control+Shift+$down move container to output down, focus output down
$flag+Control+Shift+Up move container to output up, focus output up
$flag+Control+Shift+Down move container to output down, focus output down
}
# System
bindsym --locked {
# Brightness
XF86MonBrightnessDown exec brightnessctl -e s 5%- && $notify -b
XF86MonBrightnessUp exec brightnessctl -e s +5% && $notify -b
# Audio
XF86AudioRaiseVolume exec wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 2%+ && $notify -v
XF86AudioLowerVolume exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%- && $notify -v
XF86AudioMute exec wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && $notify -v
XF86AudioMicMute exec wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
# Media
XF86AudioPlay exec playerctl play-pause
XF86AudioPrev exec playerctl previous
XF86AudioNext exec playerctl next
Shift+XF86AudioMute exec playerctl play-pause
Shift+XF86AudioLowerVolume exec playerctl previous
Shift+XF86AudioRaiseVolume exec playerctl next
# Other special keys
XF86Calculator exec qalculate-gtk
}
bindgesture hold:3 exec playerctl play-pause
# Shortcuts
bindsym {
# Reload sway
$alt+Shift+r reload
# Dialog to exit sway
$alt+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'
# Kill focused window
$flag+q kill
# Start a terminal
$flag+Return exec $term
$alt+space exec $menu
$alt+Tab focus prev
$flag+Tab exec $window_switcher
# Lock the screen
$flag+Delete exec $lock
# File explorer
$flag+e exec $term -e vifm
# Internet browser
$flag+i exec firefox
}
bindgesture {
swipe:3:up exec $window_switcher
swipe:4:up exec $menu
# Cancel
swipe:down exec pkill rofi
}