Skip to content

Hyprland Keybindings ​

This is the lookup table for the bindings shipped with HyprFlux 1.5.0. Hyprland loads three binding layers in order:

  1. Base bindings: ~/.config/hypr/configs/keybinds.lua.
  2. User bindings: ~/.config/hypr/UserConfigs/user-keybinds.lua.
  3. Laptop bindings: ~/.config/hypr/UserConfigs/laptops.lua.

Because bindings are added, not replaced, use the live compositor as the final authority after your own changes:

bash
hyprctl binds

SUPER+SHIFT+K opens a searchable live list. SUPER+SHIFT+H opens a shorter, curated cheat sheet.

Known collisions ​

A later binding does not replace an earlier one automatically. Each of these combinations registers more than one action:

KeysRegistered actionsResult
SUPER+KMaster-layout cycleprev and launch KdenliveKdenlive launches on every press. The layout action also runs on a Master workspace.
SUPER+ODwindle togglesplit and launch ObsidianObsidian launches on every press. The layout action also runs on a Dwindle workspace.
SUPER+SHIFT+WWallpaper selector and wallpaper effectsBoth scripts run, in declaration order. This is a source defect, not an intentional menu sequence.

Session and menus ​

KeysAction
CTRL+ALT+DeleteExit Hyprland
SUPER+QAsk the active window to close
SUPER+SHIFT+QSend kill to the active window's process
CTRL+ALT+LLock the session through loginctl
CTRL+ALT+POpen Wlogout
SUPER+NToggle the SwayNC notification panel
SUPER+SHIFT+EOpen HyprFlux Quick Settings

Layout and window state ​

KeysActionCondition
SUPER+CTRL+DRemove a window from MasterMaster layout only
SUPER+IAdd a window to MasterMaster layout only
SUPER+KCycle backwardMaster layout only. Also launches Kdenlive
SUPER+CTRL+ReturnSwap with MasterMaster layout only
SUPER+OToggle the split directionDwindle only. Also launches Obsidian
SUPER+SHIFT+IRotate the splitDwindle only
SUPER+PToggle pseudotilingDwindle
SUPER+JCycle to the next windowAny layout
SUPER+SHIFT+LCycle Dwindle, Master, and Scrolling layoutsRequires jq
SUPER+SHIFT+OToggle between the shipped low and normal blur valuesRequires jq
SUPER+SHIFT+GToggle Game Mode and restore the captured visual stateState in $XDG_RUNTIME_DIR/gamemode.state
SUPER+SHIFT+FToggle fullscreenActive window
SUPER+CTRL+FToggle maximized (fake fullscreen)Active window
SUPER+SpaceToggle floatingActive window
SUPER+ALT+SpaceEnable or disable floating for all windows on the workspaceLua callback
SUPER+CTRL+OToggle active-window opacityActive window
SUPER+SHIFT+ReturnToggle the dropdown terminalUses the configured default terminal

Focus, move, resize, and mouse ​

KeysActionBehavior
SUPER+ArrowMove focus in that directionOne action per press
SUPER+CTRL+ArrowMove the active window in that directionOne action per press
SUPER+ALT+ArrowSwap with the window in that directionOne action per press
SUPER+SHIFT+ArrowResize by 50 pixels in that directionRepeats while held
SUPER+Left dragMove a windowInteractive mouse bind
SUPER+Right dragResize a windowInteractive mouse bind

Workspaces ​

The number-row shortcuts use keycodes, so they keep their physical positions on different keyboard layouts.

KeysAction
SUPER+Tab / SUPER+SHIFT+TabNext / previous workspace on the current monitor
SUPER+UToggle the nyx special workspace
SUPER+SHIFT+UMove the active window to special:nyx
SUPER+1 ... SUPER+0Focus workspace 1 ... 10
SUPER+SHIFT+1 ... SUPER+SHIFT+0Move the active window to workspace 1 ... 10 and follow it
SUPER+CTRL+1 ... SUPER+CTRL+0Move the active window silently to workspace 1 ... 10
SUPER+SHIFT+[ / SUPER+SHIFT+]Move the active window to the previous / next workspace
SUPER+CTRL+[ / SUPER+CTRL+]Move the active window silently to the previous / next workspace
SUPER+wheel down / SUPER+wheel upFocus the next / previous existing workspace
SUPER+. / SUPER+,Focus the next / previous existing workspace

Applications and utilities ​

KeysActionDependency or scope
SUPER+DRofi application launcherRofi
SUPER+ReturnDefault terminaluser-defaults.lua
SUPER+FDefault file manageruser-defaults.lua
SUPER+KKdenliveCollides with the Master action
SUPER+BFirefoxFirefox
SUPER+RFoliateFoliate
SUPER+VClipboard historyRofi, cliphist, and wl-copy
SUPER+CVisual Studio Code using X11/Ozonecode
SUPER+OObsidian using X11/OzoneCollides with the Dwindle action
SUPER+SSpotify web app in ChromiumChromium
SUPER+XVesktopVesktop
SUPER+TTelegram launcherShipped command is (64gram-desktop|telegram-desktop). Verify it locally
SUPER+MFree Download Managerfdm
SUPER+ETmuxifier project menuMaintainer-oriented UserScripts workflow
SUPER+GGitHub repository clone menuGitHub CLI login and a chosen clone directory
SUPER+ALT+EOpen the emoji menu and copy the selectionRofi and wl-copy
SUPER+CTRL+CCalculator menuRofi and Qalculate
SUPER+SHIFT+KSearch live bindingsRofi, Python, and a running Hyprland session
SUPER+SHIFT+HOpen the curated cheat sheetYad
SUPER+SHIFT+ASelect an animation presetRofi. See the refresh defect in Scripts and Utilities
SUPER+CTRL+ALT+BToggle Waybar visibility with SIGUSR1Running Waybar process
SUPER+ALT+wheel down / SUPER+ALT+wheel upZoom out / inChanges cursor.zoom_factor in memory
SUPER+SHIFT+PRun the color-picker commandThe current command contains a slash and a typographic dash, so treat it as a source defect

Maintainer-oriented workflows ​

These bindings are active in the distributed user module, but the scripts behind them contain personal paths, services, station lists, or publishing assumptions. Read the script before you use it.

KeysShipped workflow
SUPER+SHIFT+TToggle the tuned daemon
SUPER+SHIFT+DSync the maintainer's dotfiles checkout
SUPER+SHIFT+BSync and publish the maintainer's blog
SUPER+SHIFT+NRun the maintainer's Obsidian note generator
SUPER+SHIFT+MOpen the configured Rofi music menu
SUPER+SHIFT+WLaunch both wallpaper selection and wallpaper effects
CTRL+ALT+WChoose a random wallpaper

Media and system keys ​

Bindings marked locked also work while an input inhibitor or the lock screen is active. Bindings marked repeat repeat while held.

KeyActionFlags
XF86AudioRaiseVolume / XF86AudioLowerVolumeIncrease / decrease output volume by 5%Locked, repeat
XF86AudioMicMuteToggle default-source muteLocked
XF86AudioMuteToggle output muteLocked
XF86SleepRun systemctl suspendLocked
XF86RfkillBlock or unblock Wi-Fi with rfkill. Bluetooth is not changedLocked
keycode 164, XF86AudioPause, or XF86AudioPlayToggle play/pause with playerctlLocked
XF86AudioNext / XF86AudioPrevNext / previous media itemLocked
XF86AudioStopStop playbackLocked

Screenshots ​

Standard keysLaptop alternativeAction
SUPER+PrintSUPER+F6Capture all outputs now
SUPER+SHIFT+PrintSUPER+SHIFT+F6Select an area
SUPER+CTRL+PrintSUPER+CTRL+F6Capture all outputs after five seconds
SUPER+CTRL+SHIFT+PrintSUPER+ALT+F6Capture all outputs after ten seconds
ALT+PrintALT+F6Capture the active window
SUPER+SHIFT+SNoneSelect an area, save it, and copy it to the clipboard

Screenshots are saved under $(xdg-user-dir PICTURES)/Screenshots and copied to the Wayland clipboard. The script uses grim, slurp, jq, and wl-copy, and it can open a capture in Swappy from the notification.

Laptop and ASUS keys ​

The laptop module loads on every machine, so the generic keys stay registered. The ASUS launch keys register only when their command is installed.

KeyActionCondition
XF86KbdBrightnessDown / XF86KbdBrightnessUpDecrease / increase keyboard backlight by 30%A matching *::kbd_backlight device. Repeats while held
XF86MonBrightnessDown / XF86MonBrightnessUpDecrease / increase display backlight by 10%, clamped to 5% to 95%brightnessctl. Repeats while held
XF86TouchpadToggleToggle the configured touchpadThe device name must match both laptops.lua and TouchPad.sh
XF86Launch1Open ROG Control CenterRegistered only if rog-control-center exists
XF86Launch3Select the next ASUS keyboard RGB modeRegistered only if asusctl exists
XF86Launch4Select the next ASUS performance profileRegistered only if asusctl exists

The lid-switch declarations in laptops.lua are disabled examples. See Hardware and Generated State before you enable them.

Customize safely ​

Add personal bindings in user-keybinds.lua, not in the managed base file. Then validate:

bash
luac -p ~/.config/hypr/UserConfigs/user-keybinds.lua
Hyprland --config ~/.config/hypr/hyprland.lua --verify-config
hyprctl reload
hyprctl configerrors

Released under the MIT License.