Files
dotfiles/hypr/hyprland/bind.conf
dichgrem f1b669563e add:hypr
2025-07-09 11:17:01 +08:00

179 lines
5.2 KiB
Plaintext

## bind settings
binds {
workspace_back_and_forth = 1
allow_workspace_cycles = 1
}
## App Launcher
bindr = ALT, SPACE, exec, fuzzel
## Restart some programs
### Input Tool
bind = Ctrl_ALT, I, exec, pkill fcitx5 -9;sleep 1;fcitx5 -d --replace; sleep 1;fcitx5-remote -r
### Notification Manager
bind = Ctrl_ALT, N, exec, swaync-client -rs
### Status Bar
bind = Ctrl_ALT, B, exec, pkill waybar;sleep 1;waybar # Status Bar
## Shortcuts
### File Explorer
bind = SUPER, E, exec, nemo
### Logout Menu
bind = CTRL_SUPER, Q, exec, wlogout
### Terminal Emulator
bind = SUPER, T, exec, alacritty
### Screenshot (Area Mod)
bind = SUPER, S, exec, sh ~/.config/waybar/scripts/Screenshot-Area.sh
### Screenshot (Fullscreen Mod)
bind = SUPER_ALT, S, exec, sh ~/.config/waybar/scripts/Screenshot-Fullscreen.sh
### Screenshot (Window Mod)
bind = SUPER_CTRL, S, exec, sh ~/.config/waybar/scripts/Screenshot-Hyprland-Window.sh
### Screenshot (OCR Mod)
bind = SUPER_CTRL_ALT, S, exec, sh ~/.config/waybar/scripts/Screenshot-OCR.sh
## Window actions
bind = SUPER, F, fullscreen
bind = SUPER, Q, hy3:killactive
## Window actions (bonus)
bind = SUPER_SHIFT, F, togglefloating
## Workspace jumping
bind = SUPER,1,workspace,1
bind = SUPER,2,workspace,2
bind = SUPER,3,workspace,3
bind = SUPER,4,workspace,4
bind = SUPER,5,workspace,5
bind = SUPER,6,workspace,6
bind = SUPER,7,workspace,7
bind = SUPER,8,workspace,8
bind = SUPER,9,workspace,9
bind = SUPER,0,workspace,10
## Window movement between Workspace
### without switching to the Workspace
bind = SUPER_CTRL, 1, movetoworkspacesilent, 1
bind = SUPER_CTRL, 2, movetoworkspacesilent, 2
bind = SUPER_CTRL, 3, movetoworkspacesilent, 3
bind = SUPER_CTRL, 4, movetoworkspacesilent, 4
bind = SUPER_CTRL, 5, movetoworkspacesilent, 5
bind = SUPER_CTRL, 6, movetoworkspacesilent, 6
bind = SUPER_CTRL, 7, movetoworkspacesilent, 7
bind = SUPER_CTRL, 8, movetoworkspacesilent, 8
bind = SUPER_CTRL, 9, movetoworkspacesilent, 9
bind = SUPER_CTRL, 0, movetoworkspacesilent, 10
### also switching to the Workspace
bind = SUPER_SHIFT, 1, movetoworkspace, 1
bind = SUPER_SHIFT, 2, movetoworkspace, 2
bind = SUPER_SHIFT, 3, movetoworkspace, 3
bind = SUPER_SHIFT, 4, movetoworkspace, 4
bind = SUPER_SHIFT, 5, movetoworkspace, 5
bind = SUPER_SHIFT, 6, movetoworkspace, 6
bind = SUPER_SHIFT, 7, movetoworkspace, 7
bind = SUPER_SHIFT, 8, movetoworkspace, 8
bind = SUPER_SHIFT, 9, movetoworkspace, 9
bind = SUPER_SHIFT, 0, movetoworkspace, 10
bind = SUPER_SHIFT, mouse_down, movetoworkspace, -1
bind = SUPER_SHIFT, mouse_up, movetoworkspace, +1
bind = SUPER_SHIFT, mouse:275, movetoworkspace, e+1
bind = SUPER_SHIFT, mouse:276, movetoworkspace, e-1
### Special Workspace
bind = SUPER, Grave, togglespecialworkspace
bind = SUPER_CTRL, Grave, movetoworkspacesilent, special
bind = SUPER_SHIFT, Grave, movetoworkspace, special
## Workspace movement
bind = SUPER_CTRL, left, workspace, -1
bind = SUPER_CTRL, right, workspace, +1
### Using Vim-like keys
bind = SUPER_CTRL, H, workspace, -1
bind = SUPER_CTRL, L, workspace, +1
## Window focus movement
### Using Alt+Tab
bind = ALT, Tab, hy3:movefocus, r
bind = ALT_SHIFT, Tab, hy3:movefocus, l
### Using Arrow keys
bind = SUPER, left, hy3:movefocus,l
bind = SUPER, right, hy3:movefocus,r
bind = SUPER, up, hy3:movefocus,u
bind = SUPER, down, hy3:movefocus,d
### Using Vim-like keys
bind = SUPER_Alt, H, hy3:movefocus, l
bind = SUPER_Alt, L, hy3:movefocus, r
bind = SUPER_Alt, K, hy3:movefocus, u
bind = SUPER_Alt, J, hy3:movefocus, d
## Window direction movement
### Using Arrow keys
bind = SUPER_SHIFT, left, hy3:movewindow,l
bind = SUPER_SHIFT, right, hy3:movewindow,r
bind = SUPER_SHIFT, up, hy3:movewindow,u
bind = SUPER_SHIFT, down, hy3:movewindow,d
### Using Vim-like keys
bind = SUPER_SHIFT, H, hy3:movefocus, l
bind = SUPER_SHIFT, L, hy3:movefocus, r
bind = SUPER_SHIFT, K, hy3:movefocus, u
bind = SUPER_SHIFT, J, hy3:movefocus, d
## Some smart actions with Mouse
bindm = SUPER, mouse:272, movewindow
bindm = SUPER, mouse:273, resizewindow
bind = SUPER, mouse_down, workspace, -1
bind = SUPER, mouse_up, workspace, +1
bind = SUPER, mouse:275, workspace, e+1
bind = SUPER, mouse:276, workspace, e-1
### hy3 bonus
bindn = , mouse:272, hy3:focustab, mouse
bindn = , mouse_down, hy3:focustab, l, require_hovered
bindn = , mouse_up, hy3:focustab, r, require_hovered
## Brightness control
bindel = , XF86MonBrightnessUp, exec, swayosd-client --brightness +5
bindel = , XF86MonBrightnessDown, exec, swayosd-client --brightness -5
## Playback control
bindl = ,XF86AudioPlay,exec, playerctl play-pause
bindl = ,XF86AudioNext,exec, playerctl next
bindl = ,XF86AudioPrev,exec, playerctl previous
### Playback control (bonus)
bindl = CONTROL_ALT, Return, exec, playerctl play-pause
bindl = CONTROL_ALT, right, exec, playerctl next
bindl = CONTROL_ALT, left, exec, playerctl previous
## Volume control
bindel = ,XF86AudioRaiseVolume, exec, swayosd-client --output-volume +2
bindel = ,XF86AudioLowerVolume, exec, swayosd-client --output-volume -2
bindl = ,XF86AudioMicMute, exec, swayosd-client --input-volume mute-toggle
bindl = ,XF86AudioMute, exec, swayosd-client --output-volume mute-toggle
## Volume control (bonus)
bindel = CONTROL_ALT, up, exec, swayosd-client --output-volume +2
bindel = CONTROL_ALT, down, exec, swayosd-client --output-volume -2