// This config is in the KDL format: https://kdl.dev // "/-" comments out the following node. // Check the wiki for a full description of the configuration: // https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction // Ask clients to omit their client-side decorations prefer-no-csd workspace "ndrop" spawn-at-startup "xwayland-satellite" environment { DISPLAY ":1" // Steam and Wayland support - only affects niri session SDL_VIDEODRIVER "wayland" NIXOS_OZONE_WL "1" } gestures { hot-corners { off } } input { keyboard { xkb { // You can set rules, model, layout, variant and options. // For more information, see xkeyboard-config(7). } numlock } touchpad { tap // natural-scroll scroll-factor 0.35 } mouse { } trackpoint { } } output "eDP-1" { scale 1.5 } layout { gaps 16 center-focused-column "never" preset-column-widths { proportion 0.33333 proportion 0.5 proportion 0.66667 } default-column-width { proportion 0.5; } focus-ring { width 2 active-color "#00ff00" inactive-color "#505050" } border { off } shadow { softness 30 spread 5 offset x=0 y=5 color "#0007" } struts { } } screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png" animations { } window-rule { match app-id=r#"^org\.wezfurlong\.wezterm$"# default-column-width { proportion 0.5; } } window-rule { match app-id=r#"firefox$"# title="^Picture-in-Picture$" open-floating true } binds { Super+Shift+Slash { show-hotkey-overlay; } Super+T hotkey-overlay-title="Open a Terminal: wezterm" { spawn "wezterm"; } Super+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; } // Super+E { spawn "ndrop" "--class" "Emacs" "emacsclient -c"; } Super+E { spawn "ndrop" "-i" "--class" "task" "wezterm start --always-new-process -- vit"; } XF86AudioRaiseVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"; } XF86AudioLowerVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"; } XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; } XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; } Super+O repeat=false { toggle-overview; } Super+Q { close-window; } Super+Left { focus-column-left; } Super+Down { focus-window-down; } Super+Up { focus-window-up; } Super+Right { focus-column-right; } Super+H { focus-column-left; } Super+J { focus-window-down; } Super+K { focus-window-up; } Super+L { focus-column-right; } Super+Shift+Left { move-column-left; } Super+Shift+Down { move-window-down; } Super+Shift+Up { move-window-up; } Super+Shift+Right { move-column-right; } Super+Shift+H { move-column-left; } Super+Shift+J { move-window-down; } Super+Shift+K { move-window-up; } Super+Shift+L { move-column-right; } Super+Home { focus-column-first; } Super+End { focus-column-last; } Super+Ctrl+Home { move-column-to-first; } Super+Ctrl+End { move-column-to-last; } // Super+Shift+Left { focus-monitor-left; } // Super+Shift+Down { focus-monitor-down; } // Super+Shift+Up { focus-monitor-up; } // Super+Shift+Right { focus-monitor-right; } // Super+Shift+H { focus-monitor-left; } // Super+Shift+J { focus-monitor-down; } // Super+Shift+K { focus-monitor-up; } // Super+Shift+L { focus-monitor-right; } // Alt+Shift+Ctrl+Left { move-column-to-monitor-left; } // Alt+Shift+Ctrl+Down { move-column-to-monitor-down; } // Alt+Shift+Ctrl+Up { move-column-to-monitor-up; } // Alt+Shift+Ctrl+Right { move-column-to-monitor-right; } // Alt+Shift+Ctrl+H { move-column-to-monitor-left; } // Alt+Shift+Ctrl+J { move-column-to-monitor-down; } // Alt+Shift+Ctrl+K { move-column-to-monitor-up; } // Alt+Shift+Ctrl+L { move-column-to-monitor-right; } Super+Page_Down { focus-workspace-down; } Super+Page_Up { focus-workspace-up; } Super+N { focus-workspace-down; } Super+P { focus-workspace-up; } Super+Ctrl+Page_Down { move-column-to-workspace-down; } Super+Ctrl+Page_Up { move-column-to-workspace-up; } Super+Ctrl+U { move-column-to-workspace-down; } Super+Ctrl+I { move-column-to-workspace-up; } Super+Shift+Page_Down { move-workspace-down; } Super+Shift+Page_Up { move-workspace-up; } Super+Shift+U { move-workspace-down; } Super+Shift+I { move-workspace-up; } Super+WheelScrollDown cooldown-ms=150 { focus-workspace-down; } Super+WheelScrollUp cooldown-ms=150 { focus-workspace-up; } Super+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; } Super+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; } Super+WheelScrollRight { focus-column-right; } Super+WheelScrollLeft { focus-column-left; } Super+Ctrl+WheelScrollRight { move-column-right; } Super+Ctrl+WheelScrollLeft { move-column-left; } Super+Shift+WheelScrollDown { focus-column-right; } Super+Shift+WheelScrollUp { focus-column-left; } Super+Ctrl+Shift+WheelScrollDown { move-column-right; } Super+Ctrl+Shift+WheelScrollUp { move-column-left; } Super+1 { focus-workspace 1; } Super+2 { focus-workspace 2; } Super+3 { focus-workspace 3; } Super+4 { focus-workspace 4; } Super+5 { focus-workspace 5; } Super+6 { focus-workspace 6; } Super+7 { focus-workspace 7; } Super+8 { focus-workspace 8; } Super+9 { focus-workspace 9; } Super+Ctrl+1 { move-column-to-workspace 1; } Super+Ctrl+2 { move-column-to-workspace 2; } Super+Ctrl+3 { move-column-to-workspace 3; } Super+Ctrl+4 { move-column-to-workspace 4; } Super+Ctrl+5 { move-column-to-workspace 5; } Super+Ctrl+6 { move-column-to-workspace 6; } Super+Ctrl+7 { move-column-to-workspace 7; } Super+Ctrl+8 { move-column-to-workspace 8; } Super+Ctrl+9 { move-column-to-workspace 9; } Super+Ctrl+H { consume-or-expel-window-left; } Super+Ctrl+L { consume-or-expel-window-right; } Super+Comma { consume-window-into-column; } Super+Period { expel-window-from-column; } Super+R { switch-preset-column-width; } Super+Shift+R { switch-preset-window-height; } Super+Ctrl+R { reset-window-height; } Super+F { maximize-column; } Super+Shift+F { fullscreen-window; } Super+Ctrl+F { expand-column-to-available-width; } Super+C { center-column; } Super+Ctrl+C { center-visible-columns; } Super+Minus { set-column-width "-10%"; } Super+Equal { set-column-width "+10%"; } Super+Shift+Minus { set-window-height "-10%"; } Super+Shift+Equal { set-window-height "+10%"; } Super+V { toggle-window-floating; } Super+Shift+V { switch-focus-between-floating-and-tiling; } Super+W { toggle-column-tabbed-display; } Super+S { screenshot; } Ctrl+Print { screenshot-screen; } Super+Print { screenshot-window; } Super+Escape allow-inhibiting=false { toggle-keyboard-shortcuts-inhibit; } Super+Shift+E { quit; } Ctrl+Alt+Delete { quit; } Super+Shift+P { power-off-monitors; } }