Files
dotfiles/.config/hypr/binds.conf
2025-06-26 21:40:43 +03:00

557 lines
21 KiB
Plaintext

# vim:foldmethod=marker
# https://wiki.hyprland.org/Configuring/Binds/
# bind{l -> locked, r -> release, e -> repeat, n -> non-consuming, m -> mouse, t -> transparent}
# Mods: SHIFT CAPS CTRL/CONTROL ALT MOD2 MOD3 SUPER/WIN/LOGO/MOD4 MOD5
$mod = SUPER
$slurp_cmd = slurp -o -d -w 2 -B 00000000 -b 00000000 -s 00000000 -c
# Used with mod: aBcdEFGhIjkLmNOPQrStUvwxyz Tab1234567890-=Return
# General binds {{{
# bind = ALT, Space, exec, hyprctl keyword input:kb_variant = ""
bind = $mod, Q, killactive
bind = $mod, F, fullscreen
bind = $mod SHIFT, F, fullscreenstate, 0 3 # fool the window
bind = $mod CTRL, F, fullscreen, 1 # keep gaps and bars
bind = $mod SHIFT, Space, togglefloating
bind = $mod SHIFT, Space, centerwindow
bind = $mod, P, pin # show floating on all workspaces
bind = $mod, U, focusurgentorlast
bind = $mod, B, focuscurrentorlast
bind = $mod, S, togglespecialworkspace
bind = $mod, Tab, movecurrentworkspacetomonitor, +1
bind = $mod CTRL SHIFT ALT, x, exit
bind = $mod CTRL SHIFT ALT, x, exec, killall xdg-desktop-portal-hyprland
bind = $mod ALT, R, forcerendererreload
bind = $mod CTRL, R, exec, hyprctl reload
bind = $mod SHIFT, T, alterzorder, top
#bind = $mod, T, togglesplit # dwindle
#bind = $mod, V, layoutmsg, preselect, l
#bind = $mod, H, layoutmsg, preselect, r
bind = $mod, T, layoutmsg, orientationnext # master
#bind = $mod, M, layoutmsg, swapwithmaster auto
bind = $mod, A, layoutmsg, addmaster
bind = $mod SHIFT, A, layoutmsg, removemaster
bindm = $mod, mouse:272, movewindow
bindm = $mod, mouse:273, resizewindow
bind = $mod, Return, exec, kitty
bind = $mod, KP_Enter, exec, kitty
# works like shit with submaps
#bindit = $mod, SUPER_L, exec, pkill -USR1 waybar
#binditr = $mod, SUPER_L, exec, pkill -USR1 waybar
# }}}
# Media keys {{{
binde = $mod, F1, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
binde = SHIFT, F1, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-
binde = CTRL, F1, exec, playerctl volume 0.05-
binde = $mod CTRL, F1, exec, playerctl volume 0.01-
binde = $mod, F2, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+
binde = SHIFT, F2, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%+
binde = CTRL, F2, exec, playerctl volume 0.05+
binde = $mod CTRL, F2, exec, playerctl volume 0.01+
bind = $mod, F3, exec, playerctl play-pause
bind = SHIFT, F3, exec, playerctl -a play-pause
# bind = $mod, F4, pass, class:^(com\.obsproject\.Studio)$
bind = $mod, F4, sendshortcut, , F4, class:^(com\.obsproject\.Studio)$
bind = $mod SHIFT, F4, sendshortcut, SHIFT, F4, class:^(com\.obsproject\.Studio)$
# toggles
bindl = $mod, F5, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 1
bind = SHIFT, F5, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 0
bindl = $mod, F6, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 1 ; killall waybar -s 35
bind = SHIFT, F6, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 0 ; killall waybar -s 35
bindl = $mod, F7, exec, nmcli radio wifi off
bind = SHIFT, F7, exec, nmcli radio wifi on
bindl = $mod, F8, exec, bluetoothctl power off
bind = SHIFT, F8, exec, bluetoothctl power on
bind = $mod, F9, exec, playerctl previous
bind = $mod, F10, exec, playerctl next
bindle = $mod, F11, exec, brightnessctl s 5%-
binde = CTRL, F11, exec, brightnessctl s 1%-
binde = SHIFT, F11, exec, brightnessctl s 15%-
bindle = $mod, F12, exec, brightnessctl s 5%+
binde = CTRL, F12, exec, brightnessctl s 1%+
binde = SHIFT, F12, exec, brightnessctl s 15%+
bindle =, XF86MonBrightnessUP, exec, brightnessctl s 5%+
bindle =, XF86MonBrightnessDown, exec, brightnessctl s 5%-
binde = CTRL, XF86MonBrightnessUP, exec, brightnessctl s 1%+
binde = CTRL, XF86MonBrightnessDown, exec, brightnessctl s 1%-
binde = SHIFT, XF86MonBrightnessUP, exec, brightnessctl s 15%+
binde = SHIFT, XF86MonBrightnessDown, exec, brightnessctl s 15%-
binde =, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+
binde =, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
binde = SHIFT, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%+
binde = SHIFT, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-
bindl =, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 1
bind = SHIFT, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 0
# bindl =, XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 1 ; killall waybar -s 35
# bind = SHIFT, XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 0 ; killall waybar -s 35
bind =, XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle ; killall waybar -s 35
bind =, XF86AudioPlay, exec, playerctl play-pause
bind =, XF86AudioPrev, exec, playerctl previous
bind =, XF86AudioNext, exec, playerctl next
# instant region not saved
bind =, Print, exec, wl-copy -c; grim -g "$($slurp_cmd ff0000 && sleep 0.1)" -t png -l 6 - | wl-copy -t image/png
# delayed region not saved
bind = CTRL, Print, exec, grim -g "$($slurp_cmd 00ffff && sleep 3)" -t png -l 6 - | wl-copy -t image/png
# instant fullscreen not saved
bind = SHIFT, Print, exec, grim -o $(hyprctl activeworkspace | grep -Po '(?<=\d\) on monitor ).*?(?=:)') -t png -l 6 - | wl-copy -t image/png
# delayed fullscreen not saved
bind = SHIFT CTRL, Print, exec, sleep 3; grim -o $(hyprctl monitors | grep -Po '(?<=Monitor ).*?(?= \(ID \d*\):)') -t png -l 6 - | wl-copy -t image/png
# instant region saved
bind = $mod, Print, exec, grim -g "$($slurp_cmd 00ff00 && sleep 0.1)" -t png -l 6 - | tee $SCREENSHOT_DIR/$(date +'%-d.%m.%y-%H:%M:%S').png | wl-copy -t image/png
#TODO learn sed to screenshot active window
# bind = ALT, Print, exec, hyprpicker -rz &!; slurp; grim -g "$($slurp_cmd ffffff && sleep 0.1)" -t png -l 6 - | wl-copy -t image/png; kill $!
# }}}
# Submaps {{{
#TODO send print on alt+f4
bind = $mod, L, submap, launch
$media = NI󰝞 EO󰝝 P󰐎 - A󰝟 M󰍭 W󰣽 B󰂲 .󰳞 ,󰳠 K J M+W󰒎 R
bindl = $mod, M, submap, $media #mod+`
bindl = $mod, grave, submap, $media #mod+`
bind = $mod, G, submap, group
bind = $mod, R, submap, resize
bind = $mod SHIFT, W, submap, wallpaper
bind = $mod SHIFT, M, submap, mako
bind = $mod SHIFT, S, submap, system
bind = $mod SHIFT, D, submap, displays
bind = $mod CTRL, M, submap, move
# launch {{{
submap = launch
# apps
bind =, F, exec, librewolf
bind =, F, submap, reset
bind = SHIFT, F, exec, firefox
bind = SHIFT, F, submap, reset
bind = CTRL, F, exec, torbrowser-launcher
bind = CTRL, F, submap, reset
bind =, T, exec, killall Telegram || Telegram
bind =, T, submap, reset
bind =, S, exec, killall signal-desktop || signal-desktop
bind =, S, submap, reset
bind =, M, exec, QT_SCALE_FACTOR=1.25 fjordlauncher
bind =, M, submap, reset
bind =, E, exec, element-desktop
bind =, E, submap, reset
#bind =, N, exec, nemo
bind =, N, submap, reset
bind =, Y, exec, kitty yazi
bind =, Y, submap, reset
bind =, L, exec, logseq
bind =, L, submap, reset
bind =, O, exec, QT_SCALE_FACTOR=1.25 obs
bind =, O, submap, reset
bind =, K, exec, klavaro
bind =, K, submap, reset
bind = SHIFT, S, exec, gamemoderun steam-native
bind = SHIFT, S, submap, reset
bind =, D, exec, discord --enable-features=UseOzonePlatform --ozone-platform=wayland
bind =, D, submap, reset
bind = SHIFT, V, exec, QT_SCALE_FACTOR=1.5 virtualbox
bind = SHIFT, V, submap, reset
bind =, V, exec, bitwarden-desktop
bind =, V, submap, reset
bind = SHIFT, B, exec, flatpak run com.usebottles.bottles
bind = SHIFT, B, submap, reset
bind =, Q, exec, qbittorrent
bind =, Q, submap, reset
bind = SHIFT, D, exec, drawing
bind = SHIFT, D, submap, reset
bind =, A, exec, anki
bind =, A, submap, reset
# utilities
bind =, P, exec, pavucontrol
bind =, P, submap, reset
bind = SHIFT, P, exec, easyeffects
bind = SHIFT, P, submap, reset
bind =, B, exec, blueman-manager
bind =, B, submap, reset
bind =, C, exec, nm-connection-editor
bind =, C, submap, reset
bind = SHIFT, E, exec, killall nm-applet || nm-applet
bind = SHIFT, E, submap, reset
#bind =, G, exec, nwg-look
#bind =, G, submap, reset
#bind =, Q, exec, qt5ct
#bind =, Q, submap, reset
bind = SHIFT, A, exec, wdisplays # a for arandr
bind = SHIFT, A, submap, reset
# makes life easier
bind =, X, exec, ~/.config/hypr/scripts/xdph.sh
bind =, X, submap, reset
bind =, G, exec, killall gammastep || gammastep -m wayland -PO 4000
bind =, G, submap, reset
bind = SHIFT, L, exec, swaylock -C ~/.config/hypr/other/swaylock.conf
bind = SHIFT, L, submap, reset
bind =, H, exec, killall hyprpaper || hyprpaper
bind =, H, submap, reset
bind =, W, exec, pkill -USR1 waybar
#bind =, W, exec, hyprctl keyword general:gaps_out 0, 0, $(hyprctl getoption general:gaps_out | rg -q '0 0 0 0' && echo 10 || echo 0 ), 0
bind =, W, submap, reset
#bind =, , exec,
#bind =, , submap, reset
bind = $mod, L, submap, reset
bind =, Space, submap, reset
bind =, Return, submap, reset
bind =, Escape, submap, reset
# }}}
# mako {{{
submap = mako
bind =, D, exec, makoctl mode -a dnd; hyprctl notify 1 2000 "rgb(ff0000)" " DND"
bind =, D, submap, reset
bind =, A, exec, makoctl mode -a away
bind =, A, submap, reset
bind =, G, exec, makoctl dismiss -g
bind =, G, submap, reset
bind =, R, exec, makoctl restore
bind =, R, submap, reset
bind = SHIFT, A, exec, makoctl mode -r away
bind = SHIFT, A, submap, reset
bind = SHIFT, G, exec, makoctl dismiss -a
bind = SHIFT, G, submap, reset
bind = SHIFT, R, exec, makoctl reload; notify-send -t 2000 "reloaded"
bind = SHIFT, R, submap, reset
bind = SHIFT, D, exec, makoctl mode -r dnd; notify-send -t 2000 "dnd is off"
bind = SHIFT, D, submap, reset
bind = $mod, M, submap, reset
bind =, Space, submap, reset
bind =, Return, submap, reset
bind =, Escape, submap, reset
# }}}
# media {{{
submap = $media
binde =, 1, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
binde = SHIFT, 1, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-
binde = $mod, 1, exec, playerctl volume 0.05-
binde = CTRL, 1, exec, playerctl volume 0.01-
binde =, 2, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+
binde = SHIFT, 2, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%+
binde = $mod, 2, exec, playerctl volume 0.05+
binde = CTRL, 2, exec, playerctl volume 0.01+
bind =, 3, exec, playerctl play-pause
bind = SHIFT, 3, exec, playerctl -a play-pause
#toggles
bindl =, 5, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 1
bind = SHIFT, 5, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 0
bindl =, 6, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 1 ; killall waybar -s 35
bind = SHIFT, 6, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 0 ; killall waybar -s 35
bindl =, 7, exec, nmcli radio wifi off
bind = SHIFT, 7, exec, nmcli radio wifi on
bindl =, 8, exec, bluetoothctl power off
bind = SHIFT, 8, exec, bluetoothctl power on
bind =, 9, exec, playerctl previous
bind =, 0, exec, playerctl next
bindle =, minus, exec, brightnessctl s 5%-
binde = CTRL, minus, exec, brightnessctl s 1%-
binde = SHIFT, minus, exec, brightnessctl s 15%-
bindle =, equal, exec, brightnessctl s 5%+
binde = CTRL, equal, exec, brightnessctl s 1%+
binde = SHIFT, equal, exec, brightnessctl s 15%+
binde = SHIFT, N, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
binde =, N, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-
binde = SHIFT, E, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+
binde =, E, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 1%+
binde = SHIFT, I, exec, playerctl volume 0.05-
binde =, I, exec, playerctl volume 0.01-
binde = SHIFT, O, exec, playerctl volume 0.05+
binde =, O, exec, playerctl volume 0.01+
bind =, P, exec, playerctl play-pause
bind = SHIFT, P, exec, playerctl -a play-pause
bind =, comma, exec, playerctl previous
bind =, period, exec, playerctl next
#toggles
bindl =, A, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 1
bind = SHIFT, A, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ 0
bindl =, M, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 1 ; killall waybar -s 35
bind = SHIFT, M, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 0 ; killall waybar -s 35
bindl = $mod, W, exec, nmcli networking off
bindl = $mod, W, exec, bluetoothctl power off
bind = $mod SHIFT, W, exec, nmcli networking on
bindl =, W, exec, nmcli radio wifi off
bind = SHIFT, W, exec, nmcli radio wifi on
bindl =, B, exec, bluetoothctl power off
bind = SHIFT, B, exec, bluetoothctl power on
bindle =, K, exec, brightnessctl s 5%-
binde = CTRL, K, exec, brightnessctl s 1%-
binde = SHIFT, K, exec, brightnessctl s 15%-
bindle =, J, exec, brightnessctl s 5%+
binde = CTRL, J, exec, brightnessctl s 1%+
binde = SHIFT, J, exec, brightnessctl s 15%+
# bind =, R, exec, wl-screenrec --codec hevc -b '1 MB' --audio --audio-device $(pactl list short sinks | grep $(pactl get-default-sink) | head -c2) -f $SCREENRECORD_DIR/$(date +'%-d.%m.%y-%H:%M:%S').mkv
# bind =, R, exec, sleep 0.5; killall waybar -s 36
# bind =, R, submap, reset
# bind = SHIFT, R, exec, wl-screenrec --codec hevc -b '1 MB' --audio -f $SCREENRECORD_DIR/$(date +'%-d.%m.%y-%H:%M:%S').mkv
# bind = SHIFT, R, exec, sleep 0.5; killall waybar -s 36
# bind = SHIFT, R, submap, reset
# bind = CTRL, R, exec, wl-screenrec --codec hevc -b '0.5 MB' -g "$($slurp_cmd ff00ff)" -f $SCREENRECORD_DIR/$(date +'%-d.%m.%y-%H:%M:%S').mkv
# bind = CTRL, R, exec, sleep 0.5; killall waybar -s 36
# bind = CTRL, R, submap, reset
# bind = $mod, R, exec, killall -INT wl-screenrec ; sleep 1; killall waybar -s 36
# bind = $mod, R, submap, reset
bindl = $mod, M, submap, reset
bindl = $mod, grave, submap, reset
bindl =, Space, submap, reset
bindl =, Return, submap, reset
bindl =, Escape, submap, reset
# }}}
# wallpaper {{{
submap = wallpaper # more wallpapers, lmao
bind =, H, exec, killall hyprpaper || hyprpaper
bind =, 1, exec, sed -i 's/wall.$/wall1/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 2, exec, sed -i 's/wall.$/wall2/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 3, exec, sed -i 's/wall.$/wall3/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 4, exec, sed -i 's/wall.$/wall4/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 5, exec, sed -i 's/wall.$/wall5/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 6, exec, sed -i 's/wall.$/wall6/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 7, exec, sed -i 's/wall.$/wall7/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 8, exec, sed -i 's/wall.$/wall8/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 9, exec, sed -i 's/wall.$/wall9/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 0, exec, sed -i 's/wall.$/wall0/g' ~/.config/hypr/hyprpaper.conf; killall hyprpaper; hyprpaper
bind =, 1, submap, reset
bind =, 2, submap, reset
bind =, 3, submap, reset
bind =, 4, submap, reset
bind =, 5, submap, reset
bind =, 6, submap, reset
bind =, 7, submap, reset
bind =, 8, submap, reset
bind =, 9, submap, reset
bind =, 0, submap, reset
bind = $mod SHIFT, W, submap, reset
bind =, Space, submap, reset
bind =, Return, submap, reset
bind =, Escape, submap, reset
# }}}
# group {{{
submap = group
bind =, G, togglegroup
bind =, G, submap, reset
bind =, L, lockactivegroup, toggle
bind =, L, submap, reset
bind =, A, lockgroups, lock
bind =, A, submap, reset
bind = SHIFT, A, lockgroups, unlock
bind = SHIFT, A, submap, reset
bind =, D, moveoutofgroup
bind =, D, submap, reset
binde =, E, movegroupwindow, b
binde =, I, movegroupwindow, f
binde =, N, changegroupactive, b
binde =, O, changegroupactive, f
binde =, down, movegroupwindow, b
binde =, up, movegroupwindow, f
binde =, left, changegroupactive, b
binde =, right, changegroupactive, f
binde = SHIFT, E, moveintogroup, d
binde = SHIFT, I, moveintogroup, u
binde = SHIFT, N, moveintogroup, l
binde = SHIFT, O, moveintogroup, r
binde = SHIFT, down, moveintogroup, d
binde = SHIFT, up, moveintogroup, u
binde = SHIFT, left, moveintogroup, l
binde = SHIFT, right, moveintogroup, r
bind = $mod SHIFT, G, submap, reset
bind =, Space, submap, reset
bind =, Return, submap, reset
bind =, Escape, submap, reset
# }}}
# system {{{
submap = system
bind =, S, exec, shutdown now
bind =, R, exec, systemctl reboot
bind =, Z, exec, systemctl suspend
bind =, Z, submap, reset
bind = $mod SHIFT, S, submap, reset
bind =, Space, submap, reset
bind =, Return, submap, reset
bind =, Escape, submap, reset
# }}}
# displays {{{
submap = displays
bind =, L, exec, ~/.config/hypr/scripts/displays.sh eDP-1 -
bind =, L, submap, reset
bind =, H, exec, ~/.config/hypr/scripts/displays.sh HDMI-A-1 -
bind =, H, submap, reset
bind =, A, exec, ~/.config/hypr/scripts/displays.sh eDP-1 ''
bind =, A, submap, reset
bind =, O, exec, ~/.config/hypr/scripts/displays.sh '' -eDP-1
bind =, O, submap, reset
bind =, D, exec, hyprctl keyword monitor eDP-1,preferred,auto,1
bind =, D, submap, reset
bind = SHIFT, D, exec, hyprctl keyword monitor eDP-1,disable
bind = SHIFT, D, submap, reset
bind = $mod SHIFT, D, submap, reset
bind =, Space, submap, reset
bind =, Return, submap, reset
bind =, Escape, submap, reset
# }}}
# resize {{{
submap = resize
bind = SHIFT, H, resizeactive, exact 720 480
bind = SHIFT, V, resizeactive, exact 480 720
binde =, E, resizeactive, 0 10
binde =, I, resizeactive, 0 -10
binde =, N, resizeactive, -10 0
binde =, O, resizeactive, 10 0
binde =, down, resizeactive, 0 10
binde =, up, resizeactive, 0 -10
binde =, left, resizeactive, -10 0
binde =, right, resizeactive, 10 0
binde = SHIFT, E, resizeactive, 0 50
binde = SHIFT, I, resizeactive, 0 -50
binde = SHIFT, N, resizeactive, -50 0
binde = SHIFT, O, resizeactive, 50 0
binde = SHIFT, down, resizeactive, 0 50
binde = SHIFT, up, resizeactive, 0 -50
binde = SHIFT, left, resizeactive, -50 0
binde = SHIFT, right, resizeactive, 50 0
bind = $mod SHIFT, R, submap, reset
bind =, Space, submap, reset
bind =, Return, submap, reset
bind =, Escape, submap, reset
# }}}
# move {{{
submap = move
bind =, C, centerwindow # for floating
bind =, C, submap, reset
binde =, E, moveactive, 0 10
binde =, I, moveactive, 0 -10
binde =, N, moveactive, -10 0
binde =, O, moveactive, 10 0
binde =, down, moveactive, 0 10
binde =, up, moveactive, 0 -10
binde =, left, moveactive, -10 0
binde =, right, moveactive, 10 0
binde = SHIFT, E, moveactive, 0 50
binde = SHIFT, I, moveactive, 0 -50
binde = SHIFT, N, moveactive, -50 0
binde = SHIFT, O, moveactive, 50 0
binde = SHIFT, down, moveactive, 0 50
binde = SHIFT, up, moveactive, 0 -50
binde = SHIFT, left, moveactive, -50 0
binde = SHIFT, right, moveactive, 50 0
bind = $mod SHIFT, M, submap, reset
bind =, Space, submap, reset
bind =, Return, submap, reset
bind =, Escape, submap, reset
# }}}
# back to default mode
submap = reset
# }}}
# Moving windows {{{
# TRUE scratchpad
bind = $mod, minus, movetoworkspacesilent, special
bind = $mod, equal, togglespecialworkspace
bind = $mod, equal, cyclenext, prev # first in first out
bind = $mod, equal, movetoworkspace, +0
# bind = $mod, equal, togglespecialworkspace
bind = $mod, E, movefocus, d
bind = $mod, I, movefocus, u
bind = $mod, N, movefocus, l
bind = $mod, O, movefocus, r
bind = $mod, down, movefocus, d
bind = $mod, up, movefocus, u
bind = $mod, left, movefocus, l
bind = $mod, right, movefocus, r
bind = $mod SHIFT, E, movewindow, d
bind = $mod SHIFT, I, movewindow, u
bind = $mod SHIFT, N, movewindow, l
bind = $mod SHIFT, O, movewindow, r
bind = $mod SHIFT, down, movewindow, d
bind = $mod SHIFT, up, movewindow, u
bind = $mod SHIFT, left, movewindow, l
bind = $mod SHIFT, right, movewindow, r
bind = $mod CTRL, E, cyclenext
bind = $mod CTRL, I, cyclenext, prev
bind = $mod CTRL, N, movetoworkspace, r-1 # r for current monitor
bind = $mod CTRL, O, movetoworkspace, r+1
bind = $mod CTRL, left, movetoworkspace, -1
bind = $mod CTRL, right, movetoworkspace, +1
bind = $mod, 1, workspace, 1
bind = $mod, 2, workspace, 2
bind = $mod, 3, workspace, 3
bind = $mod, 4, workspace, 4
bind = $mod, 5, workspace, 5
bind = $mod, 6, workspace, 6
bind = $mod, 7, workspace, 7
bind = $mod, 8, workspace, 8
bind = $mod, 9, workspace, 9
bind = $mod, 0, workspace, 10
bind = $mod SHIFT, 1, movetoworkspace, 1
bind = $mod SHIFT, 2, movetoworkspace, 2
bind = $mod SHIFT, 3, movetoworkspace, 3
bind = $mod SHIFT, 4, movetoworkspace, 4
bind = $mod SHIFT, 5, movetoworkspace, 5
bind = $mod SHIFT, 6, movetoworkspace, 6
bind = $mod SHIFT, 7, movetoworkspace, 7
bind = $mod SHIFT, 8, movetoworkspace, 8
bind = $mod SHIFT, 9, movetoworkspace, 9
bind = $mod SHIFT, 0, movetoworkspace, 10
bind = $mod CTRL, 1, movetoworkspacesilent, 1
bind = $mod CTRL, 2, movetoworkspacesilent, 2
bind = $mod CTRL, 3, movetoworkspacesilent, 3
bind = $mod CTRL, 4, movetoworkspacesilent, 4
bind = $mod CTRL, 5, movetoworkspacesilent, 5
bind = $mod CTRL, 6, movetoworkspacesilent, 6
bind = $mod CTRL, 7, movetoworkspacesilent, 7
bind = $mod CTRL, 8, movetoworkspacesilent, 8
bind = $mod CTRL, 9, movetoworkspacesilent, 9
bind = $mod CTRL, 0, movetoworkspacesilent, 10
# }}}
# TODO (to work on) {{{
# bindl=, switch:on:Lid Switch, exec, hyprctl keyword monitor eDP-1, disable
# bindl=, switch:off:Lid Switch, exec, hyprctl keyword monitor eDP-1, preferred, auto, 1
#bindl=, switch:Lid Switch, exec, swaylock -C ~/.config/hypr/other/swaylock.conf
# }}}