430 lines
9.4 KiB
Text
430 lines
9.4 KiB
Text
input {
|
|
keyboard {
|
|
xkb {
|
|
layout "us,ru"
|
|
variant ",phonetic_winkeys"
|
|
options "grp:rctrl_rshift_toggle, compose:102"
|
|
}
|
|
repeat-rate 60
|
|
repeat-delay 200
|
|
numlock
|
|
}
|
|
touchpad {
|
|
tap
|
|
}
|
|
// focus-follows-mouse
|
|
focus-follows-mouse max-scroll-amount="0%"
|
|
}
|
|
// Laptop
|
|
output "eDP-1" {
|
|
mode "1920x1080@59.999"
|
|
scale 1
|
|
position x=0 y=0
|
|
}
|
|
// PC
|
|
output "DP-2" {
|
|
mode "1920x1080@59.999"
|
|
scale 1
|
|
position x=0 y=0
|
|
}
|
|
output "HDMI-A-1" {
|
|
mode "1920x1080@59.999"
|
|
scale 1
|
|
position x=1920 y=0
|
|
}
|
|
layout {
|
|
gaps 0
|
|
center-focused-column "on-overflow"
|
|
focus-ring {
|
|
width 2
|
|
active-color "#f9e2af"
|
|
inactive-color "transparent"
|
|
active-gradient from="#E5989B" to="#FFB4A2" angle=45 relative-to="workspace-view" in="oklch longer hue"
|
|
}
|
|
border {
|
|
off
|
|
}
|
|
tab-indicator {
|
|
width 2
|
|
gap 4
|
|
gaps-between-tabs 2
|
|
}
|
|
shadow {
|
|
on
|
|
}
|
|
insert-hint {
|
|
color "#ffc87f80"
|
|
gradient from="#f38ba880" to="#f9e2af80" angle=45 relative-to="workspace-view"
|
|
}
|
|
preset-column-widths {
|
|
proportion 0.33333
|
|
proportion 0.5
|
|
proportion 0.66667
|
|
}
|
|
default-column-width {
|
|
proportion 0.5
|
|
}
|
|
background-color "transparent"
|
|
}
|
|
spawn-at-startup "waybar"
|
|
spawn-at-startup "nu" "-c" "quickshell --path ~/repos/projects/nichts/main/modules/style/quickshell/shell"
|
|
environment {
|
|
DISPLAY ":0"
|
|
}
|
|
layer-rule {
|
|
match namespace="overview$"
|
|
place-within-backdrop true
|
|
}
|
|
// prefer no client side decorations
|
|
prefer-no-csd
|
|
switch-events {
|
|
lid-close {
|
|
spawn "swaylock"
|
|
}
|
|
}
|
|
overview {
|
|
zoom 0.6
|
|
backdrop-color "#777777"
|
|
}
|
|
animations {
|
|
window-close {
|
|
duration-ms 250
|
|
curve "linear"
|
|
custom-shader "\n vec4 fall_and_rotate(vec3 coords_geo, vec3 size_geo) {\n\n float progress = niri_clamped_progress * niri_clamped_progress;\n vec2 coords = (coords_geo.xy - vec2(0.5, 1.0)) * size_geo.xy;\n coords.y -= progress * 1440.0;\n float random = (niri_random_seed - 0.5) / 2.0;\n random = sign(random) - random;\n float max_angle = 0.5 * random;\n float angle = progress * max_angle;\n mat2 rotate = mat2(cos(angle), -sin(angle), sin(angle), cos(angle));\n coords = rotate * coords;\n coords_geo = vec3(coords / size_geo.xy + vec2(0.5, 1.0), 1.0);\n vec3 coords_tex = niri_geo_to_tex * coords_geo;\n vec4 color = texture2D(niri_tex, coords_tex.st);\n\n return color;\n }\n\n vec4 close_color(vec3 coords_geo, vec3 size_geo) {\n return fall_and_rotate(coords_geo, size_geo);\n }\n "
|
|
}
|
|
}
|
|
window-rule {
|
|
match app-id="unset"
|
|
open-floating true
|
|
}
|
|
window-rule {
|
|
match app-id="org.gnome.Nautilus"
|
|
open-floating true
|
|
}
|
|
window-rule {
|
|
match app-id="org.freedesktop.impl.portal.desktop.kde"
|
|
open-floating true
|
|
}
|
|
window-rule {
|
|
draw-border-with-background false
|
|
}
|
|
// Fix discord screencasting
|
|
debug {
|
|
wait-for-frame-completion-in-pipewire
|
|
}
|
|
hotkey-overlay {
|
|
skip-at-startup
|
|
}
|
|
cursor {
|
|
xcursor-theme "BreezeX-RosePine-Linux"
|
|
xcursor-size 32
|
|
hide-when-typing
|
|
}
|
|
binds {
|
|
Mod+Shift+Slash {
|
|
show-hotkey-overlay
|
|
}
|
|
Mod+Return {
|
|
spawn "ghostty"
|
|
}
|
|
Mod+B {
|
|
spawn "brave"
|
|
}
|
|
// Mod+D {
|
|
// spawn "nu" "-c" "quickshell --path ~/repos/projects/nichts/main/modules/style/quickshell/shell msg launcher open"
|
|
// }
|
|
Mod+D {
|
|
spawn "fuzzel"
|
|
}
|
|
Mod+Alt+L {
|
|
spawn "swaylock"
|
|
}
|
|
// Audio
|
|
XF86AudioRaiseVolume allow-when-locked=true {
|
|
spawn "volumectl" "-u" "up"
|
|
}
|
|
XF86AudioLowerVolume allow-when-locked=true {
|
|
spawn "volumectl" "-u" "down"
|
|
}
|
|
XF86AudioMute allow-when-locked=true {
|
|
spawn "volumectl" "toggle-mute"
|
|
}
|
|
XF86AudioMicMute allow-when-locked=true {
|
|
spawn "volumectl" "-m" "toggle-mute"
|
|
}
|
|
XF86AudioPlay allow-when-locked=true {
|
|
spawn "playerctl" "play-pause"
|
|
}
|
|
XF86AudioNext allow-when-locked=true {
|
|
spawn "playerctl" "next"
|
|
}
|
|
XF86AudioPrev allow-when-locked=true {
|
|
spawn "playerctl" "previous"
|
|
}
|
|
// Monitor brightness
|
|
XF86MonBrightnessUp allow-when-locked=true {
|
|
spawn "lightctl" "up"
|
|
}
|
|
XF86MonBrightnessDown allow-when-locked=true {
|
|
spawn "lightctl" "down"
|
|
}
|
|
Mod+Q {
|
|
close-window
|
|
}
|
|
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+Shift+H {
|
|
move-column-left-or-to-monitor-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-or-to-monitor-right
|
|
}
|
|
Mod+Home {
|
|
focus-column-first
|
|
}
|
|
Mod+End {
|
|
focus-column-last
|
|
}
|
|
Mod+Ctrl+Home {
|
|
move-column-to-first
|
|
}
|
|
Mod+Ctrl+End {
|
|
move-column-to-last
|
|
}
|
|
Mod+Ctrl+H {
|
|
focus-monitor-left
|
|
}
|
|
Mod+Ctrl+J {
|
|
focus-monitor-down
|
|
}
|
|
Mod+Ctrl+K {
|
|
focus-monitor-up
|
|
}
|
|
Mod+Ctrl+L {
|
|
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+Ctrl+Right {
|
|
move-column-to-monitor-right
|
|
}
|
|
Mod+Shift+Ctrl+H {
|
|
move-column-to-monitor-left
|
|
}
|
|
Mod+Shift+Ctrl+J {
|
|
move-column-to-monitor-down
|
|
}
|
|
Mod+Shift+Ctrl+K {
|
|
move-column-to-monitor-up
|
|
}
|
|
Mod+Shift+Ctrl+L {
|
|
move-column-to-monitor-right
|
|
}
|
|
Mod+Page_Down {
|
|
focus-workspace-down
|
|
}
|
|
Mod+Page_Up {
|
|
focus-workspace-up
|
|
}
|
|
Mod+Shift+Page_Down {
|
|
move-column-to-workspace-down
|
|
}
|
|
Mod+Shift+Page_Up {
|
|
move-column-to-workspace-up
|
|
}
|
|
Mod+U {
|
|
focus-workspace-down
|
|
}
|
|
Mod+I {
|
|
focus-workspace-up
|
|
}
|
|
Mod+Shift+U {
|
|
move-column-to-workspace-down
|
|
}
|
|
Mod+Shift+I {
|
|
move-column-to-workspace-up
|
|
}
|
|
Mod+WheelScrollDown cooldown-ms=150 {
|
|
focus-workspace-down
|
|
}
|
|
Mod+WheelScrollUp cooldown-ms=150 {
|
|
focus-workspace-up
|
|
}
|
|
Mod+Shift+WheelScrollDown cooldown-ms=150 {
|
|
move-column-to-workspace-down
|
|
}
|
|
Mod+Shift+WheelScrollUp cooldown-ms=150 {
|
|
move-column-to-workspace-up
|
|
}
|
|
Mod+WheelScrollRight {
|
|
focus-column-right
|
|
}
|
|
Mod+WheelScrollLeft {
|
|
focus-column-left
|
|
}
|
|
Mod+Shift+WheelScrollRight {
|
|
move-column-right
|
|
}
|
|
Mod+Shift+WheelScrollLeft {
|
|
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+BracketLeft {
|
|
consume-or-expel-window-left
|
|
}
|
|
Mod+BracketRight {
|
|
consume-or-expel-window-right
|
|
}
|
|
Mod+Comma {
|
|
consume-window-into-column
|
|
}
|
|
Mod+Period {
|
|
expel-window-from-column
|
|
}
|
|
Mod+R {
|
|
switch-preset-column-width
|
|
}
|
|
Mod+Shift+R {
|
|
switch-preset-window-height
|
|
}
|
|
Mod+Ctrl+R {
|
|
reset-window-height
|
|
}
|
|
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%"
|
|
}
|
|
// Finer height adjustments when in column with other windows.
|
|
Mod+Shift+Minus {
|
|
set-window-height "-10%"
|
|
}
|
|
Mod+Shift+Equal {
|
|
set-window-height "+10%"
|
|
}
|
|
// Move the focused window between the floating and the tiling layout.
|
|
Mod+V {
|
|
toggle-window-floating
|
|
}
|
|
Mod+Shift+V {
|
|
switch-focus-between-floating-and-tiling
|
|
}
|
|
Mod+W {
|
|
toggle-column-tabbed-display
|
|
}
|
|
Mod+O {
|
|
toggle-overview
|
|
}
|
|
Print {
|
|
screenshot
|
|
}
|
|
Ctrl+Print {
|
|
screenshot-screen
|
|
}
|
|
// Alt+Print {
|
|
// spawn "sh" "-c" ""
|
|
// }
|
|
Mod+T {
|
|
screenshot
|
|
}
|
|
// "$mainMod, T, exec, ${getExe pkgs.grimblast} save area - | ${getExe pkgs.tesseract} - - | ${getExe' pkgs.wl-clipboard "wl-copy"}"
|
|
Mod+Escape allow-inhibiting=false {
|
|
toggle-keyboard-shortcuts-inhibit
|
|
}
|
|
Mod+Shift+E {
|
|
quit
|
|
}
|
|
Mod+Shift+P {
|
|
power-off-monitors
|
|
}
|
|
}
|
|
|