Skip to main content
This page documents all keybindings configured in ~/.config/hypr/modules/binds.conf.

Modifier Keys

The configuration uses these modifier key variables defined in vars.conf:
VariableKeyDefault
$mainModPrimary modifierSUPER (Windows key)
$ctrlModControl modifierControl_L
$altModAlt modifierALT_L

Program Launchers

Launch your essential applications:
KeybindingActionApplication
Super + ReturnOpen terminalKitty
Super + EOpen file managerNemo
Super + SpaceApplication launcherRofi

Application Variables

These programs are defined in vars.conf and can be customized:
$terminal = kitty
$fileManager = nemo
$menu = rofi -show drun
$browser = brave
$lock = hyprlock

System Controls

KeybindingAction
Super + Shift + RReload Hyprland configuration
Super + MOpen logout menu (wlogout)
Super + Shift + QLock screen
Super + F11Toggle fullscreen

Window Management

Basic Window Operations

KeybindingAction
Super + QClose active window
Super + VToggle floating mode
Super + FSwap window with master
Super + Shift + FFocus master window

Focus Movement (Vim-style)

Move focus between windows using Vim keybindings:
KeybindingDirection
Super + HFocus left
Super + LFocus right
Super + KFocus up
Super + JFocus down
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, movefocus, d

Move Windows

Move windows in the layout using Shift + Vim keys:
KeybindingDirection
Super + Shift + HMove window left
Super + Shift + LMove window right
Super + Shift + KMove window up
Super + Shift + JMove window down
bind = $mainMod Shift, H, movewindow, l
bind = $mainMod Shift, J, movewindow, d
bind = $mainMod Shift, K, movewindow, u
bind = $mainMod Shift, L, movewindow, r

Resize Windows

Resize the active window using Control + Vim keys:
KeybindingResize Action
Control + HDecrease width by 30px
Control + LIncrease width by 30px
Control + KDecrease height by 30px
Control + JIncrease height by 30px
binde = $ctrlMod, h, resizeactive, -30 0
binde = $ctrlMod, l, resizeactive,  30 0
binde = $ctrlMod, k, resizeactive,  0 -30
binde = $ctrlMod, j, resizeactive,  0  30
The binde binding type allows you to hold the key for continuous resizing.

Workspace Navigation

Switch to Workspace

Switch between workspaces 1-10:
KeybindingWorkspace
Super + 1Workspace 1
Super + 2Workspace 2
Super + 3Workspace 3
Super + 4Workspace 4
Super + 5Workspace 5
Super + 6Workspace 6
Super + 7Workspace 7
Super + 8Workspace 8
Super + 9Workspace 9
Super + 0Workspace 10
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
# ... through 0

Move Window to Workspace

Move the active window to a specific workspace:
KeybindingAction
Super + Shift + 1Move to workspace 1
Super + Shift + 2Move to workspace 2
Super + Shift + 3Move to workspace 3
Super + Shift + 4Move to workspace 4
Super + Shift + 5Move to workspace 5
Super + Shift + 6Move to workspace 6
Super + Shift + 7Move to workspace 7
Super + Shift + 8Move to workspace 8
Super + Shift + 9Move to workspace 9
Super + Shift + 0Move to workspace 10
bind = $mainMod Shift, 1, movetoworkspace, 1
bind = $mainMod Shift, 2, movetoworkspace, 2
# ... through 0

Special Workspace (Scratchpad)

The “magic” workspace acts as a scratchpad for temporary windows:
KeybindingAction
Super + TabToggle special workspace visibility
Super + Shift + TabMove active window to special workspace
bind = $mainMod, TAB, togglespecialworkspace, magic
bind = $mainMod SHIFT, TAB, movetoworkspace, special:magic
Use the special workspace to hide windows you need quick access to, like a music player or chat application.

Mouse Bindings

Scroll Between Workspaces

Mouse ActionResult
Super + Scroll UpNext workspace
Super + Scroll DownPrevious workspace
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

Window Manipulation

Mouse ActionResult
Super + Left Click + DragMove window
Super + Right Click + DragResize window
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

Audio Controls

Media keys for volume control:
KeybindingAction
XF86AudioRaiseVolumeIncrease volume by 5%
XF86AudioLowerVolumeDecrease volume by 5%
XF86AudioMuteToggle mute
bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindel = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
The -l 1 flag limits volume to 100% to prevent audio distortion.

Screenshots

Take screenshots using Hyprshot and Satty:
KeybindingAction
PrintCapture entire output, edit in Satty
Super + PrintSelect region, copy to clipboard
Super + F12Select region, edit in Satty
# Full screen with editor
bind = , Print, exec, hyprshot -m output --raw | satty --filename - --output-filename ~/Pictures/Screenshots/$(date '+%Y%m%d-%H%M%S').png

# Region to clipboard
bind = $mainMod, Print,  exec, hyprshot -m region --clipboard-only

# Region with editor
bind = $mainMod, F12, exec, hyprshot -m region --raw | satty --filename - --output-filename ~/Pictures/Screenshots/$(date '+%Y%m%d-%H%M%S').png --copy-command wl-copy
Screenshots are saved to ~/Pictures/Screenshots/ with timestamp filenames.

Customizing Keybindings

To add or modify keybindings, edit ~/.config/hypr/modules/binds.conf:
# Basic syntax
bind = MODIFIERS, KEY, DISPATCHER, PARAMS

# Examples
bind = SUPER, B, exec, brave                    # Launch browser
bind = SUPER SHIFT, X, exec, ~/.local/bin/script.sh  # Run script
bind = SUPER, P, togglesplit,                   # Toggle split direction

Common Dispatchers

  • exec - Execute a command
  • killactive - Close the active window
  • workspace - Switch to a workspace
  • movetoworkspace - Move window to workspace
  • togglefloating - Toggle floating/tiled mode
  • fullscreen - Toggle fullscreen
  • movefocus - Move focus (params: l, r, u, d)
  • movewindow - Move window in layout
  • resizeactive - Resize active window

Binding Types

  • bind - Standard one-time activation
  • binde - Repeats when held
  • bindm - Mouse binding
  • bindel - Repeats and works on lock screen
For the complete list of dispatchers and binding options, see the Hyprland documentation.
After modifying keybindings, reload the configuration with Super + Shift + R.

Quick Reference Card

Most Used Keybindings

Programs:
  Super + Return        Terminal
  Super + Space         App Launcher
  Super + E             File Manager

Window:
  Super + Q             Close
  Super + V             Float
  Super + F11           Fullscreen
  Super + H/J/K/L       Move Focus
  Ctrl + H/J/K/L        Resize

Workspaces:
  Super + [1-9,0]       Switch
  Super + Tab           Scratchpad
  Super + Scroll        Next/Prev

System:
  Super + Shift + R     Reload
  Super + Shift + Q     Lock
  Super + M             Logout Menu

See Also

Build docs developers (and LLMs) love