hyprland is a dynamic tiling Wayland compositor.
Application Launch
- Super+Return - Launch terminal
- Super+Shift+Return - Launch floating terminal
- Super+D - Application launcher (rofi/dmenu)
- Super+B - Launch browser
- Super+E - Launch file manager
- Super+Q - Close active window
Window Management
- Super+Q - Close focused window
- Super+F - Toggle fullscreen
- Super+Shift+F - Toggle floating
- Super+T - Toggle tiling/floating
- Super+P - Toggle pin (keep on top)
- Super+S - Toggle split (horizontal/vertical)
- Super+Shift+S - Swap windows
- Super+R - Resize mode
Window Navigation
- Super+H/J/K/L - Move focus (vim-style)
- Super+Shift+H/J/K/L - Move window
- Super+Arrow - Move focus
- Super+Shift+Arrow - Move window
- Super+Tab - Switch to last window
- Super+Shift+Tab - Switch windows (reverse)
Workspaces
- Super+1-9 - Switch to workspace
- Super+Shift+1-9 - Move window to workspace
- Super+Ctrl+Left/Right - Switch workspace
- Super+Ctrl+Shift+Left/Right - Move window to workspace
- Super+Mouse1 - Move window (drag)
- Super+Mouse2 - Resize window (drag)
Layout and Resize
- Super+Plus - Increase window size
- Super+Minus - Decrease window size
- Super+Shift+Plus - Increase gap
- Super+Shift+Minus - Decrease gap
- Super+R - Enter resize mode
- Super+Escape - Exit resize mode
System
- Super+Shift+Q - Quit hyprland
- Super+Shift+E - Exit session
- Super+L - Lock screen
- Print - Screenshot
- Super+Print - Screenshot (area)
- Super+Shift+Print - Screenshot (window)
Configuration
Config File Location
- ~/.config/hypr/hyprland.conf (main config)
- ~/.config/hypr/config.d/*.conf (split config files)
Example Key Bindings
Customize in hyprland.conf:
# Application launch
bind = SUPER, RETURN, exec, kitty
bind = SUPER, B, exec, firefox
bind = SUPER, D, exec, rofi -show drun
# Window management
bind = SUPER, Q, killactive
bind = SUPER, F, fullscreen
bind = SUPER, SHIFT, F, togglefloating
# Window navigation
bind = SUPER, H, movefocus, l
bind = SUPER, L, movefocus, r
bind = SUPER, J, movefocus, d
bind = SUPER, K, movefocus, u
# Workspaces
bind = SUPER, 1, workspace, 1
bind = SUPER, 2, workspace, 2
bind = SUPER SHIFT, 1, movetoworkspace, 1
bind = SUPER SHIFT, 2, movetoworkspace, 2
# System
bind = SUPER SHIFT, Q, exit
bind = , Print, exec, grim
Mouse Bindings
# Mouse bindings
bindm = SUPER, mouse:272, movewindow
bindm = SUPER, mouse:273, resizewindow
Tips
- Bind syntax: bind = MODS, KEY, dispatcher, params
- Supports flags: r (release), l (locked), e (repeat)
- Use pass dispatcher for global keybinds
- Window rules allow matching by class for app-specific behavior
- Supports multiple keyboard layouts
- Use bindsym for symbolic key names
- Split config files for organization
- Use exec-once for startup commands