ooknet/modules/home/workstation/hyprland/settings/binds.nix

117 lines
5 KiB
Nix

{config, ...}: let
inherit (config.ooknet) binds;
in {
wayland.windowManager.hyprland.settings = {
# TODO: build better binds interface
bind = [
# Program Launch
"SUPER, b, exec, ${binds.browser}"
"SUPER, return, exec, ${binds.terminal}"
"SUPERSHIFT, return, exec, ${binds.terminal} --title foot-dropdown"
"SUPER, e, exec, ${binds.terminalLaunch} $EDITOR"
"SUPERSHIFT, P, exec, ${binds.password}"
"SUPERCTRL, P, exec, ${binds.quickpass}"
"SUPER, d, exec, ${binds.discord}"
"SUPERSHIFT, e, exec, ${binds.fileManager}"
"SUPERSHIFT, S, exec, ${binds.steam}"
"SUPERSHIFT, n, exec, ${binds.notes}"
"SUPER, escape, exec, ${binds.terminalLaunch} --title=BTOP btop"
"SUPER CTRL, return, exec, ${binds.zellijMenu}"
"SUPER, delete, exec, ${binds.powerMenu}"
"SUPERSHIFT, F, exec, ${binds.factorio}"
# Spotify PLayer Controls
"SUPER, M, exec, ${binds.spotify.launch}"
"SUPER, bracketright, exec, ${binds.spotify.next}"
"SUPER, bracketleft, exec, ${binds.spotify.previous}"
"SUPER, backslash, exec, ${binds.spotify.play}"
# Brightness
",XF86MonBrightnessUp, exec, ${binds.brightness.up}"
",XF86MonBrightnessDown, exec, ${binds.brightness.down}"
# Volume
",XF86AudioRaiseVolume, exec, ${binds.volume.up}"
",XF86AudioLowerVolume, exec, ${binds.volume.down}"
",XF86AudioMute, exec, ${binds.volume.mute}"
# Window Management
"SUPER, Q, killactive"
"SUPER CTRL, backspace, killactive"
"SUPERSHIFT ALT, delete, exec, hyprkillsession"
"SUPER, F, fullscreen"
"SUPER CTRL, F, fullscreenstate"
"SUPER, Space, togglefloating"
"SUPER, P, pseudo" # dwindle
"SUPER, S, togglesplit" # dwindle
# Focus Arrows
"SUPER, left, movefocus,l"
"SUPER, right, movefocus,r"
"SUPER, up, movefocus,u"
"SUPER, down, movefocus,d"
# Focus Vim
"SUPER, h, movefocus,l"
"SUPER, l, movefocus,r"
"SUPER, k, movefocus,u"
"SUPER, j, movefocus,d"
# Move Arrows
"SUPERSHIFT, left, movewindow,l"
"SUPERSHIFT, right, movewindow,r"
"SUPERSHIFT, up, movewindow,u"
"SUPERSHIFT, down, movewindow,d"
# Move Vim
"SUPERSHIFT, h, movewindow,l"
"SUPERSHIFT, l, movewindow,r"
"SUPERSHIFT, k, movewindow,u"
"SUPERSHIFT, j, movewindow,d"
#Resize
"SUPER CTRL, left, resizeactive,-20 0"
"SUPERCTRL, right, resizeactive,20 0"
"SUPER CTRL, up, resizeactive,0 -20"
"SUPERCTRL, down, resizeactive,0 20"
# Switch workspace
"SUPER, 1, workspace,1"
"SUPER, 2, workspace,2"
"SUPER, 3, workspace,3"
"SUPER, 4, workspace,4"
"SUPER, 5, workspace,5"
"SUPER, 6, workspace,6"
"SUPER, 7, workspace,7"
"SUPER, 8, workspace,8"
"SUPER, 9, workspace,9"
"SUPER, 0, workspace,10"
"SUPER, period, workspace,e+1"
"SUPER, comma, workspace,e-1"
"SUPER, tab, focusCurrentOrLast"
# Move workspace
"SUPERSHIFT, 1, movetoworkspace,1"
"SUPERSHIFT, 2, movetoworkspace,2"
"SUPERSHIFT, 3, movetoworkspace,3"
"SUPERSHIFT, 4, movetoworkspace,4"
"SUPERSHIFT, 5, movetoworkspace,5"
"SUPERSHIFT, 6, movetoworkspace,6"
"SUPERSHIFT, 7, movetoworkspace,7"
"SUPERSHIFT, 8, movetoworkspace,8"
"SUPERSHIFT, 9, movetoworkspace,9"
"SUPERSHIFT, 0, movetoworkspace,10"
# Lock Screen
"SUPER, Backspace, exec, ${binds.lock}"
];
# Mouse
bindm = [
"SUPER, mouse:272, movewindow"
"SUPER, mouse:273, resizewindow"
];
# bindr = [
# "SUPER, SUPER_L, exec, killall rofi || rofi -show drun"
# ];
};
}