aboutsummaryrefslogtreecommitdiff
path: root/resources/default-config.kdl
blob: 5ed8e7ce575ea144e1043307a158efa8bc8e2783 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
// This config is in the KDL format: https://kdl.dev
// "/-" comments out the following node.

input {
    keyboard {
        xkb {
            // You can set rules, model, layout, variant and options.
            // For more information, see xkeyboard-config(7).

            // For example:
            // layout "us,ru"
            // options "grp:win_space_toggle,compose:ralt,ctrl:nocaps"
        }

        // You can set the keyboard repeat parameters. The defaults match wlroots and sway.
        // Delay is in milliseconds before the repeat starts. Rate is in characters per second.
        // repeat-delay 600
        // repeat-rate 25
    }

    // Next sections contain libinput settings.
    // Omitting settings disables them, or leaves them at their default values.
    touchpad {
        tap
        natural-scroll
        // accel-speed 0.2
    }
}

// You can configure outputs by their name, which you can find with wayland-info(1).
// The built-in laptop monitor is usually called "eDP-1".
// Remember to uncommend the node by removing "/-"!
/-output "eDP-1" {
    // Scale is a floating-point number, but at the moment only integer values work.
    scale 2.0
}

// Add lines like this to spawn processes at startup.
// Note that running niri as a session supports xdg-desktop-autostart,
// which may be more convenient to use.
// spawn-at-startup "alacritty" "-e" "fish"

// You can change how the focus ring looks.
// Remember to uncommend the node by removing "/-"!
focus-ring {
    // Uncomment this line to disable the focus ring.
    // off

    // How many logical pixels the ring extends out from the windows.
    width 4

    // Color of the ring on the active monitor: red, green, blue, alpha.
    active-color 0.5 0.8 1.0 1.0

    // Color of the ring on inactive monitors: red, green, blue, alpha.
    inactive-color 0.3 0.3 0.3 1.0
}

// Uncomment this line to ask the clients to omit their client-side decorations if possible.
// If the client will specifically ask for CSD, the request will be honored.
// prefer-no-csd

binds {
    // Keys consist of modifiers separated by + signs, followed by an XKB key name
    // in the end. To find an XKB name for a particular key, you may use a program
    // like wev.
    //
    // "Mod" is a special modifier equal to Super when running on a TTY, and to Alt
    // when running as a winit window.

    Mod+T { spawn "alacritty"; }
    Mod+Q { close-window; }

    // Example volume keys mappings for PipeWire & WirePlumber.
    // Remember to uncomment the nodes by removing "/-"!
    /-XF86AudioRaiseVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"; }
    /-XF86AudioLowerVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"; }

    Mod+H     { focus-column-left; }
    Mod+J     { focus-window-down; }
    Mod+K     { focus-window-up; }
    Mod+L     { focus-column-right; }
    Mod+Left  { focus-column-left; }
    Mod+Down  { focus-window-down; }
    Mod+Up    { focus-window-up; }
    Mod+Right { focus-column-right; }

    Mod+Ctrl+H     { move-column-left; }
    Mod+Ctrl+J     { move-window-down; }
    Mod+Ctrl+K     { move-window-up; }
    Mod+Ctrl+L     { move-column-right; }
    Mod+Ctrl+Left  { move-column-left; }
    Mod+Ctrl+Down  { move-window-down; }
    Mod+Ctrl+Up    { move-window-up; }
    Mod+Ctrl+Right { move-column-right; }

    Mod+Shift+H     { focus-monitor-left; }
    Mod+Shift+J     { focus-monitor-down; }
    Mod+Shift+K     { focus-monitor-up; }
    Mod+Shift+L     { focus-monitor-right; }
    Mod+Shift+Left  { focus-monitor-left; }
    Mod+Shift+Down  { focus-monitor-down; }
    Mod+Shift+Up    { focus-monitor-up; }
    Mod+Shift+Right { focus-monitor-right; }

    Mod+Shift+Ctrl+H     { move-window-to-monitor-left; }
    Mod+Shift+Ctrl+J     { move-window-to-monitor-down; }
    Mod+Shift+Ctrl+K     { move-window-to-monitor-up; }
    Mod+Shift+Ctrl+L     { move-window-to-monitor-right; }
    Mod+Shift+Ctrl+Left  { move-window-to-monitor-left; }
    Mod+Shift+Ctrl+Down  { move-window-to-monitor-down; }
    Mod+Shift+Ctrl+Up    { move-window-to-monitor-up; }
    Mod+Shift+Ctrl+Right { move-window-to-monitor-right; }

    Mod+U              { focus-workspace-down; }
    Mod+I              { focus-workspace-up; }
    Mod+Page_Down      { focus-workspace-down; }
    Mod+Page_Up        { focus-workspace-up; }
    Mod+Ctrl+U         { move-window-to-workspace-down; }
    Mod+Ctrl+I         { move-window-to-workspace-up; }
    Mod+Ctrl+Page_Down { move-window-to-workspace-down; }
    Mod+Ctrl+Page_Up   { move-window-to-workspace-up; }

    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+Ctrl+1 { move-window-to-workspace 1; }
    Mod+Ctrl+2 { move-window-to-workspace 2; }
    Mod+Ctrl+3 { move-window-to-workspace 3; }
    Mod+Ctrl+4 { move-window-to-workspace 4; }
    Mod+Ctrl+5 { move-window-to-workspace 5; }
    Mod+Ctrl+6 { move-window-to-workspace 6; }
    Mod+Ctrl+7 { move-window-to-workspace 7; }
    Mod+Ctrl+8 { move-window-to-workspace 8; }
    Mod+Ctrl+9 { move-window-to-workspace 9; }

    Mod+Comma  { consume-window-into-column; }
    Mod+Period { expel-window-from-column; }

    Mod+R { switch-preset-column-width; }
    Mod+F { maximize-column; }
    Mod+Shift+F { fullscreen-window; }

    Print { screenshot; }
    Mod+Shift+E { quit; }

    Mod+Shift+Ctrl+T { toggle-debug-tint; }
}