291 lines
8.1 KiB
Text
291 lines
8.1 KiB
Text
binds {
|
|
Mod+Shift+Slash {
|
|
show-hotkey-overlay
|
|
}
|
|
//
|
|
// ╭─────────────────────────────────────────────────────────╮
|
|
// │ Launchers │
|
|
// ╰─────────────────────────────────────────────────────────╯
|
|
//
|
|
Mod+Return hotkey-overlay-title="Open Terminal" {
|
|
spawn "kitty"
|
|
}
|
|
Mod+Shift+Return hotkey-overlay-title="Open Quick Terminal" {
|
|
spawn "kitten" "quick_access_terminal"
|
|
}
|
|
Mod+D hotkey-overlay-title="Launcher" {
|
|
spawn "qs" "ipc" "-c" "noctalia-shell" "call" "launcher" "toggle"
|
|
}
|
|
//
|
|
// ╭─────────────────────────────────────────────────────────╮
|
|
// │ Layout │
|
|
// ╰─────────────────────────────────────────────────────────╯
|
|
//
|
|
Mod+R {
|
|
switch-preset-column-width
|
|
}
|
|
Mod+Shift+R {
|
|
expand-column-to-available-width
|
|
}
|
|
Mod+F {
|
|
maximize-column
|
|
}
|
|
Mod+Shift+F {
|
|
fullscreen-window
|
|
}
|
|
Mod+C {
|
|
center-column
|
|
}
|
|
//
|
|
// ╭─────────────────────────────────────────────────────────╮
|
|
// │ Window Management │
|
|
// ╰─────────────────────────────────────────────────────────╯
|
|
//
|
|
Mod+W repeat=false {
|
|
toggle-overview
|
|
}
|
|
Mod+Shift+Q repeat=false {
|
|
close-window
|
|
}
|
|
//
|
|
// ── Change focus ────────────────────────────────────────────────────
|
|
//
|
|
Mod+Tab {
|
|
focus-column-right-or-first
|
|
}
|
|
Mod+shift+Tab {
|
|
focus-column-left-or-last
|
|
}
|
|
Mod+Left {
|
|
focus-column-left
|
|
}
|
|
Mod+Down {
|
|
focus-window-or-workspace-down
|
|
}
|
|
Mod+Up {
|
|
focus-window-or-workspace-up
|
|
}
|
|
Mod+Right {
|
|
focus-column-or-monitor-right
|
|
}
|
|
Mod+Ctrl+Left {
|
|
consume-or-expel-window-left
|
|
}
|
|
Mod+Ctrl+Right {
|
|
consume-or-expel-window-right
|
|
}
|
|
Mod+Alt+Left {
|
|
consume-window-into-column
|
|
}
|
|
Mod+Alt+Right {
|
|
expel-window-from-column
|
|
}
|
|
Mod+H {
|
|
focus-column-or-monitor-left
|
|
}
|
|
Mod+J {
|
|
focus-window-or-workspace-down
|
|
}
|
|
Mod+K {
|
|
focus-window-or-workspace-up
|
|
}
|
|
Mod+L {
|
|
focus-column-or-monitor-right
|
|
}
|
|
Mod+Ctrl+H {
|
|
consume-or-expel-window-left
|
|
}
|
|
Mod+Ctrl+L {
|
|
consume-or-expel-window-right
|
|
}
|
|
Mod+Alt+H {
|
|
consume-window-into-column
|
|
}
|
|
Mod+Alt+L {
|
|
expel-window-from-column
|
|
}
|
|
Mod+WheelScrollDown cooldown-ms=150 {
|
|
focus-column-right
|
|
}
|
|
Mod+WheelScrollUp cooldown-ms=150 {
|
|
focus-column-left
|
|
}
|
|
Mod+Space {
|
|
switch-focus-between-floating-and-tiling
|
|
}
|
|
//
|
|
// ── Move windows ────────────────────────────────────────────────────
|
|
//
|
|
Mod+Shift+Left {
|
|
move-column-left
|
|
}
|
|
Mod+Shift+Down {
|
|
move-window-down-or-to-workspace-down
|
|
}
|
|
Mod+Shift+Up {
|
|
move-window-up-or-to-workspace-up
|
|
}
|
|
Mod+Shift+Right {
|
|
move-column-right
|
|
}
|
|
Mod+Shift+H {
|
|
move-column-left
|
|
}
|
|
Mod+Shift+J {
|
|
move-window-down-or-to-workspace-down
|
|
}
|
|
Mod+Shift+K {
|
|
move-window-up-or-to-workspace-up
|
|
}
|
|
Mod+Shift+L {
|
|
move-column-right
|
|
}
|
|
Mod+Ctrl+WheelScrollDown cooldown-ms=150 {
|
|
move-column-to-workspace-down
|
|
}
|
|
Mod+Ctrl+WheelScrollUp cooldown-ms=150 {
|
|
move-column-to-workspace-up
|
|
}
|
|
Mod+WheelScrollRight {
|
|
focus-column-right
|
|
}
|
|
Mod+WheelScrollLeft {
|
|
focus-column-left
|
|
}
|
|
Mod+Ctrl+WheelScrollRight {
|
|
move-column-right
|
|
}
|
|
Mod+Ctrl+WheelScrollLeft {
|
|
move-column-left
|
|
}
|
|
Mod+Ctrl+Shift+WheelScrollDown {
|
|
move-column-right
|
|
}
|
|
Mod+Ctrl+Shift+WheelScrollUp {
|
|
move-column-left
|
|
}
|
|
Mod+Shift+Space {
|
|
toggle-window-floating
|
|
}
|
|
//
|
|
// ╭─────────────────────────────────────────────────────────╮
|
|
// │ Workspaces │
|
|
// ╰─────────────────────────────────────────────────────────╯
|
|
//
|
|
Mod+Bar {
|
|
// Switches focus between the current and the previous workspace.
|
|
focus-workspace-previous
|
|
}
|
|
Mod+1 {
|
|
focus-workspace 1
|
|
}
|
|
Mod+2 {
|
|
focus-workspace 2
|
|
}
|
|
Mod+3 {
|
|
focus-workspace 3
|
|
}
|
|
Mod+4 {
|
|
focus-workspace 4
|
|
}
|
|
Mod+5 {
|
|
focus-workspace 5
|
|
}
|
|
Mod+6 {
|
|
focus-workspace 6
|
|
}
|
|
Mod+7 {
|
|
focus-workspace 7
|
|
}
|
|
Mod+8 {
|
|
focus-workspace 8
|
|
}
|
|
Mod+9 {
|
|
focus-workspace 9
|
|
}
|
|
Mod+Shift+1 {
|
|
move-window-to-workspace 1
|
|
}
|
|
Mod+Shift+2 {
|
|
move-window-to-workspace 2
|
|
}
|
|
Mod+Shift+3 {
|
|
move-window-to-workspace 3
|
|
}
|
|
Mod+Shift+4 {
|
|
move-window-to-workspace 4
|
|
}
|
|
Mod+Shift+5 {
|
|
move-window-to-workspace 5
|
|
}
|
|
Mod+Shift+6 {
|
|
move-window-to-workspace 6
|
|
}
|
|
Mod+Shift+7 {
|
|
move-window-to-workspace 7
|
|
}
|
|
Mod+Shift+8 {
|
|
move-window-to-workspace 8
|
|
}
|
|
Mod+Shift+9 {
|
|
move-window-to-workspace 9
|
|
}
|
|
Mod+Shift+WheelScrollDown cooldown-ms=150 {
|
|
focus-workspace-down
|
|
}
|
|
Mod+Shift+WheelScrollUp cooldown-ms=150 {
|
|
focus-workspace-up
|
|
}
|
|
//
|
|
// ╭─────────────────────────────────────────────────────────╮
|
|
// │ Volume │
|
|
// ╰─────────────────────────────────────────────────────────╯
|
|
//
|
|
XF86AudioRaiseVolume allow-when-locked=true {
|
|
spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.025+"
|
|
}
|
|
XF86AudioLowerVolume allow-when-locked=true {
|
|
spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.025-"
|
|
}
|
|
XF86AudioMute allow-when-locked=true {
|
|
spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
|
}
|
|
XF86AudioMicMute allow-when-locked=true {
|
|
spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
|
|
}
|
|
//
|
|
// ╭─────────────────────────────────────────────────────────╮
|
|
// │ Brightness │
|
|
// ╰─────────────────────────────────────────────────────────╯
|
|
//
|
|
XF86MonBrightnessUp allow-when-locked=true {
|
|
spawn "brightnessctl" "--class=backlight" "set" "+10%"
|
|
}
|
|
XF86MonBrightnessDown allow-when-locked=true {
|
|
spawn "brightnessctl" "--class=backlight" "set" "10%-"
|
|
}
|
|
Print {
|
|
screenshot
|
|
}
|
|
Shift+Print {
|
|
screenshot-window
|
|
}
|
|
Shift+Ctrl+Print hotkey-overlay-title="Edit image in Clipboard" {
|
|
spawn-sh "wl-paste | swappy -f -"
|
|
}
|
|
// Applications such as remote-desktop clients and software KVM switches may
|
|
// request that niri stops processing the keyboard shortcuts defined here
|
|
// so they may, for example, forward the key presses as-is to a remote machine.
|
|
// It's a good idea to bind an escape hatch to toggle the inhibitor,
|
|
// so a buggy application can't hold your session hostage.
|
|
//
|
|
// The allow-inhibiting=false property can be applied to other binds as well,
|
|
// which ensures niri always processes them, even when an inhibitor is active.
|
|
Mod+Escape allow-inhibiting=false {
|
|
toggle-keyboard-shortcuts-inhibit
|
|
}
|
|
Ctrl+Alt+Delete {
|
|
quit
|
|
}
|
|
}
|
|
|