540 lines
11 KiB
Text
540 lines
11 KiB
Text
input {
|
|
keyboard {
|
|
xkb {
|
|
layout "us"
|
|
options "compose:paus"
|
|
}
|
|
repeat-delay 250
|
|
repeat-rate 30
|
|
}
|
|
// touchpad {
|
|
// off
|
|
// }
|
|
mouse {
|
|
accel-speed 0.1
|
|
accel-profile "flat"
|
|
}
|
|
// trackpoint {
|
|
// on
|
|
// }
|
|
focus-follows-mouse
|
|
}
|
|
overview {
|
|
workspace-shadow {
|
|
off
|
|
}
|
|
}
|
|
layout {
|
|
background-color "transparent"
|
|
gaps 16
|
|
struts {
|
|
top -16
|
|
bottom -16
|
|
}
|
|
always-center-single-column
|
|
preset-column-widths {
|
|
proportion 0.33333
|
|
proportion 0.5
|
|
proportion 0.66667
|
|
}
|
|
default-column-width {
|
|
proportion 0.5
|
|
}
|
|
focus-ring {
|
|
off
|
|
width 1
|
|
active-color "#B14242"
|
|
inactive-color "#121212"
|
|
}
|
|
border {
|
|
// off
|
|
width 1
|
|
active-color "#B14242"
|
|
inactive-color "#121212"
|
|
}
|
|
shadow {
|
|
on
|
|
softness 30
|
|
spread 5
|
|
offset x=0 y=5
|
|
color "#0007"
|
|
}
|
|
}
|
|
spawn-at-startup "dunst" "&"
|
|
spawn-at-startup "xwayland-satellite"
|
|
prefer-no-csd
|
|
screenshot-path "~/Pictures/niris/niri-%Y-%m-%d%H-%M-%S.png"
|
|
animations {
|
|
slowdown 0.7
|
|
}
|
|
window-rule {
|
|
match app-id="^spotify$"
|
|
open-on-workspace "music"
|
|
}
|
|
window-rule {
|
|
match app-id="footfloat"
|
|
open-floating true
|
|
}
|
|
window-rule {
|
|
match app-id="^org\\.wezfurlong\\.wezterm$"
|
|
default-column-width {
|
|
|
|
}
|
|
}
|
|
window-rule {
|
|
match app-id="thunderbird$|Betterbird$"
|
|
default-column-width {
|
|
proportion 0.75
|
|
}
|
|
}
|
|
window-rule {
|
|
match app-id="vesktop$"
|
|
}
|
|
window-rule {
|
|
match app-id="firefox$"
|
|
default-column-width {
|
|
proportion 0.8
|
|
}
|
|
clip-to-geometry true
|
|
}
|
|
window-rule {
|
|
match app-id="Bitwarden"
|
|
default-column-width {
|
|
proportion 0.33337
|
|
}
|
|
open-floating true
|
|
}
|
|
window-rule {
|
|
match app-id="^org\\.keepassxc\\.KeePassXC$"
|
|
match app-id="^org\\.gnome\\.World\\.Secrets$"
|
|
match app-id="^Bitwarden$"
|
|
block-out-from "screen-capture"
|
|
}
|
|
// Steam notifications
|
|
window-rule {
|
|
match app-id="steam" title="notificationtoasts"
|
|
open-focused false
|
|
open-floating true
|
|
default-floating-position x=100 y=100 relative-to="bottom-right"
|
|
}
|
|
// makes swaybg stationary
|
|
layer-rule {
|
|
match namespace="^wallpaper$"
|
|
place-within-backdrop true
|
|
}
|
|
layer-rule {
|
|
match namespace="^launcher$"
|
|
shadow {
|
|
on
|
|
}
|
|
}
|
|
environment {
|
|
QT_QPA_PLATFORM "wayland"
|
|
DISPLAY ":0"
|
|
ELECTRON_OZONE_PLATFORM_HINT "auto"
|
|
OZONE_PLATFORM "wayland"
|
|
QT_QPA_PLATFORM "wayland"
|
|
QT_QPA_PLATFORMTHEME "qt5ct"
|
|
QT_WAYLAND_DISABLE_WINDOWDECORATION "1"
|
|
QT_AUTO_SCREEN_SCALE_FACTOR "1"
|
|
// GTK_IM_MODULE "fcitx"
|
|
// QT_IM_MODULE "fcitx"
|
|
// XMODIFIERS "@im=fcitx"
|
|
}
|
|
cursor {
|
|
hide-when-typing
|
|
}
|
|
hotkey-overlay {
|
|
skip-at-startup
|
|
}
|
|
binds {
|
|
Mod+Shift+Slash {
|
|
show-hotkey-overlay
|
|
}
|
|
Mod+Return {
|
|
spawn "footclient"
|
|
}
|
|
Mod+Space {
|
|
spawn "footclient"
|
|
}
|
|
Mod+D {
|
|
spawn "fuzzel" "--placeholder=Select an application:"
|
|
}
|
|
Mod+Ctrl+semicolon {
|
|
spawn "swaylock" "-c" "121212" "-e" "-f" "-F"
|
|
}
|
|
XF86AudioRaiseVolume allow-when-locked=true {
|
|
spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.05+"
|
|
}
|
|
XF86AudioLowerVolume allow-when-locked=true {
|
|
spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.05-"
|
|
}
|
|
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"
|
|
}
|
|
XF86AudioPlay allow-when-locked=true {
|
|
spawn "playerctl" "--player=spotify" "play-pause"
|
|
}
|
|
XF86AudioStop allow-when-locked=true {
|
|
spawn "playerctl" "--all-players" "play-pause" "--ignore-player=spotify"
|
|
}
|
|
XF86MonBrightnessDown allow-when-locked=true {
|
|
spawn "brightnessctl" "set" "5%-"
|
|
}
|
|
XF86MonBrightnessUp allow-when-locked=true {
|
|
spawn "brightnessctl" "set" "5%+"
|
|
}
|
|
Mod+Q {
|
|
close-window
|
|
}
|
|
// Colemak-DH bindings
|
|
Mod+Left {
|
|
focus-column-left
|
|
}
|
|
Mod+Down {
|
|
focus-window-down
|
|
}
|
|
Mod+Up {
|
|
focus-window-up
|
|
}
|
|
Mod+Right {
|
|
focus-column-right
|
|
}
|
|
Mod+M {
|
|
focus-column-or-monitor-left
|
|
}
|
|
// Mod+N { focus-window-down; }
|
|
// Mod+E { focus-window-up; }
|
|
Mod+I {
|
|
focus-column-or-monitor-right
|
|
}
|
|
Mod+Shift+Left {
|
|
move-column-left
|
|
}
|
|
Mod+Shift+Down {
|
|
move-window-down
|
|
}
|
|
Mod+Shift+Up {
|
|
move-window-up
|
|
}
|
|
Mod+Shift+Right {
|
|
move-column-right
|
|
}
|
|
Mod+Shift+M {
|
|
move-column-left-or-to-monitor-left
|
|
}
|
|
// Mod+Shift+N { move-window-down; }
|
|
// Mod+Shift+E { move-window-up; }
|
|
Mod+Shift+I {
|
|
move-column-right-or-to-monitor-right
|
|
}
|
|
Mod+N {
|
|
focus-window-or-workspace-down
|
|
}
|
|
Mod+E {
|
|
focus-window-or-workspace-up
|
|
}
|
|
Mod+Shift+N {
|
|
move-window-down-or-to-workspace-down
|
|
}
|
|
Mod+Shift+E {
|
|
move-window-up-or-to-workspace-up
|
|
}
|
|
Mod+A {
|
|
focus-column-first
|
|
}
|
|
Mod+O {
|
|
focus-column-last
|
|
}
|
|
Mod+Shift+A {
|
|
move-column-to-first
|
|
}
|
|
Mod+Shift+O {
|
|
move-column-to-last
|
|
}
|
|
// don't love these honestly
|
|
// TODO: Change smart-mouse to LGUI on keyboard?
|
|
Mod+Period {
|
|
focus-monitor-left
|
|
}
|
|
Mod+Slash {
|
|
focus-monitor-right
|
|
}
|
|
Mod+Ctrl+Up {
|
|
focus-monitor-up
|
|
}
|
|
Mod+Ctrl+Right {
|
|
focus-monitor-right
|
|
}
|
|
Mod+Ctrl+M {
|
|
focus-monitor-left
|
|
}
|
|
Mod+Ctrl+N {
|
|
focus-monitor-down
|
|
}
|
|
Mod+Ctrl+E {
|
|
focus-monitor-up
|
|
}
|
|
Mod+Ctrl+I {
|
|
focus-monitor-right
|
|
}
|
|
Mod+Shift+Ctrl+Left {
|
|
move-column-to-monitor-left
|
|
}
|
|
Mod+Shift+Ctrl+Down {
|
|
move-column-to-monitor-down
|
|
}
|
|
Mod+Shift+Ctrl+Up {
|
|
move-column-to-monitor-up
|
|
}
|
|
Mod+Shift+Period {
|
|
move-column-to-monitor-right
|
|
}
|
|
Mod+Shift+Comma {
|
|
move-column-to-monitor-left
|
|
}
|
|
Mod+Shift+Ctrl+N {
|
|
move-column-to-monitor-down
|
|
}
|
|
Mod+Shift+Ctrl+E {
|
|
move-column-to-monitor-up
|
|
}
|
|
Mod+Shift+Ctrl+I {
|
|
move-column-to-monitor-right
|
|
}
|
|
Mod+H {
|
|
focus-workspace-down
|
|
}
|
|
Mod+Comma {
|
|
focus-workspace-up
|
|
}
|
|
Mod+L {
|
|
move-workspace-down
|
|
}
|
|
Mod+U {
|
|
move-workspace-up
|
|
}
|
|
Mod+J {
|
|
move-workspace-to-monitor-left
|
|
}
|
|
Mod+Y {
|
|
move-workspace-to-monitor-right
|
|
}
|
|
Mod+Ctrl+Page_Down {
|
|
move-column-to-workspace-down
|
|
}
|
|
Mod+Ctrl+Page_Up {
|
|
move-column-to-workspace-up
|
|
}
|
|
Mod+Shift+L {
|
|
move-column-to-workspace-down
|
|
}
|
|
Mod+Shift+U {
|
|
move-column-to-workspace-up
|
|
}
|
|
Mod+Shift+Page_Down {
|
|
move-workspace-down
|
|
}
|
|
Mod+Shift+Page_Up {
|
|
move-workspace-up
|
|
}
|
|
Mod+Ctrl+L {
|
|
move-workspace-down
|
|
}
|
|
Mod+Ctrl+U {
|
|
move-workspace-up
|
|
}
|
|
Mod+MouseForward {
|
|
focus-column-right
|
|
}
|
|
Mod+MouseBack {
|
|
focus-column-left
|
|
}
|
|
Mod+WheelScrollDown cooldown-ms=150 {
|
|
focus-workspace-down
|
|
}
|
|
Mod+WheelScrollUp cooldown-ms=150 {
|
|
focus-workspace-up
|
|
}
|
|
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+Shift+WheelScrollDown {
|
|
focus-column-right
|
|
}
|
|
Mod+Shift+WheelScrollUp {
|
|
focus-column-left
|
|
}
|
|
Mod+Ctrl+Shift+WheelScrollDown {
|
|
move-column-right
|
|
}
|
|
Mod+Ctrl+Shift+WheelScrollUp {
|
|
move-column-left
|
|
}
|
|
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-column-to-workspace 1
|
|
}
|
|
Mod+Shift+2 {
|
|
move-column-to-workspace 2
|
|
}
|
|
Mod+Shift+3 {
|
|
move-column-to-workspace 3
|
|
}
|
|
Mod+Shift+4 {
|
|
move-column-to-workspace 4
|
|
}
|
|
Mod+Shift+5 {
|
|
move-column-to-workspace 5
|
|
}
|
|
Mod+Shift+6 {
|
|
move-column-to-workspace 6
|
|
}
|
|
Mod+Shift+7 {
|
|
move-column-to-workspace 7
|
|
}
|
|
Mod+Shift+8 {
|
|
move-column-to-workspace 8
|
|
}
|
|
Mod+Shift+9 {
|
|
move-column-to-workspace 9
|
|
}
|
|
Mod+Tab {
|
|
focus-workspace-previous
|
|
}
|
|
Mod+Alt+C {
|
|
consume-or-expel-window-left
|
|
}
|
|
Mod+Alt+D {
|
|
consume-or-expel-window-right
|
|
}
|
|
Mod+Alt+F {
|
|
consume-window-into-column
|
|
}
|
|
Mod+Alt+P {
|
|
expel-window-from-column
|
|
}
|
|
Mod+R {
|
|
switch-preset-column-width
|
|
}
|
|
Mod+F {
|
|
maximize-column
|
|
}
|
|
Mod+Shift+F {
|
|
fullscreen-window
|
|
}
|
|
Mod+Ctrl+F {
|
|
expand-column-to-available-width
|
|
}
|
|
Mod+C {
|
|
center-column
|
|
}
|
|
Mod+Minus {
|
|
set-column-width "-10%"
|
|
}
|
|
Mod+Equal {
|
|
set-column-width "+10%"
|
|
}
|
|
Mod+Shift+Minus {
|
|
set-window-height "-10%"
|
|
}
|
|
Mod+Shift+Equal {
|
|
set-window-height "+10%"
|
|
}
|
|
Mod+Shift+T {
|
|
toggle-window-floating
|
|
}
|
|
Mod+T {
|
|
switch-focus-between-floating-and-tiling
|
|
}
|
|
Mod+W {
|
|
toggle-column-tabbed-display
|
|
}
|
|
Mod+Shift+W {
|
|
spawn "systemctl" "--user" "restart" "waybar"
|
|
}
|
|
Mod+S {
|
|
screenshot
|
|
}
|
|
Mod+Ctrl+S {
|
|
screenshot-screen
|
|
}
|
|
Mod+Shift+S {
|
|
screenshot-window
|
|
}
|
|
Mod+Alt+S {
|
|
spawn "~/dev/wayland-utils/recorder/recorder.sh" "screen"
|
|
}
|
|
Mod+Shift+Alt+S {
|
|
spawn "~/dev/wayland-utils/recorder/recorder.sh" "region"
|
|
}
|
|
Mod+Escape {
|
|
spawn "~/dev/wayland-utils/niri-switcher/window-picker.py"
|
|
}
|
|
Mod+semicolon {
|
|
spawn "~/dev/wayland-utils/foot/foot-command.py"
|
|
}
|
|
Mod+P {
|
|
spawn "clipcat-menu"
|
|
}
|
|
Mod+B {
|
|
spawn "~/.config/niri/scripts/rbw-fuzzel.fish"
|
|
}
|
|
Mod+Ctrl+Escape allow-inhibiting=false {
|
|
toggle-keyboard-shortcuts-inhibit
|
|
}
|
|
Mod+Shift+semicolon {
|
|
spawn "~/dev/utils/waymoji/waymoji.fish"
|
|
}
|
|
Mod+Shift+P {
|
|
power-off-monitors
|
|
}
|
|
Mod+Ctrl+o {
|
|
toggle-overview
|
|
}
|
|
}
|
|
|