81 lines
2.8 KiB
Nix
81 lines
2.8 KiB
Nix
{
|
|
bind =
|
|
[
|
|
"$mainMod, T, exec, $terminal"
|
|
"$mainMod, X, killactive,"
|
|
"$mainMod, ESCAPE, exit,"
|
|
"$mainMod, E, exec, $fileManager"
|
|
"$mainMod, F, togglefloating,"
|
|
"$mainMod, R, exec, $menu"
|
|
"$mainMod, P, pseudo," # dwindle
|
|
"$mainMod, V, togglesplit," # dwindle
|
|
"$mainMod, L, exec, $lockScreen" # hyprlock
|
|
"$mainMod, period, exec, emote"
|
|
"$mainMod, B, exec, firefox"
|
|
"$mainMod CTRL, F, fullscreen"
|
|
", PRINT, exec, grim -g \"$(slurp)\" - | swappy -f -"
|
|
|
|
# Move focus with mainMod + arrow keys
|
|
"$mainMod, left, movefocus, l"
|
|
"$mainMod, right, movefocus, r"
|
|
"$mainMod, up, movefocus, u"
|
|
"$mainMod, down, movefocus, d"
|
|
|
|
###############################################################################
|
|
# Special workspaces
|
|
###############################################################################
|
|
# Scratchpad
|
|
"CTRL SHIFT, S, togglespecialworkspace, magic"
|
|
"CTRL $mainMod, S, movetoworkspace, special:magic"
|
|
# Terminal
|
|
"CTRL SHIFT, T, togglespecialworkspace, terminal"
|
|
"CTRL $mainMod, T, movetoworkspace, special:terminal"
|
|
# Music
|
|
"CTRL SHIFT, M, togglespecialworkspace, music"
|
|
"CTRL $mainMod, M, movetoworkspace, special:music"
|
|
|
|
# Scroll through existing workspaces with mainMod + scroll
|
|
"$mainMod, mouse_down, workspace, e+1"
|
|
"$mainMod, mouse_up, workspace, e-1"
|
|
|
|
# Switch workspaces
|
|
"CTRL ALT, right, workspace, e+1"
|
|
"CTRL ALT, left, workspace, e-1"
|
|
|
|
# Audio keybinds
|
|
", XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+"
|
|
", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-"
|
|
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
|
", XF86AudioPlay, exec, playerctl play-pause"
|
|
", XF86AudioStop, exec,"
|
|
", XF86AudioPrev, exec, playerctl previous"
|
|
", XF86AudioNext, exec, playerctl next"
|
|
]
|
|
++ (
|
|
# workspaces
|
|
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
|
|
builtins.concatLists (
|
|
builtins.genList (
|
|
x:
|
|
let
|
|
ws =
|
|
let
|
|
c = (x + 1) / 10;
|
|
in
|
|
builtins.toString (x + 1 - (c * 10));
|
|
in
|
|
[
|
|
# Switch workspaces with mainMod + [0-9]
|
|
"$mainMod, ${ws}, workspace, ${toString (x + 1)}"
|
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
|
"$mainMod SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
|
|
]
|
|
) 10
|
|
)
|
|
);
|
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
|
bindm = [
|
|
"$mainMod, mouse:272, movewindow"
|
|
"$mainMod, mouse:273, resizewindow"
|
|
];
|
|
}
|