diff options
Diffstat (limited to '.config/niri/layout.kdl')
| -rw-r--r-- | .config/niri/layout.kdl | 156 |
1 files changed, 156 insertions, 0 deletions
diff --git a/.config/niri/layout.kdl b/.config/niri/layout.kdl new file mode 100644 index 0000000..646ee56 --- /dev/null +++ b/.config/niri/layout.kdl | |||
| @@ -0,0 +1,156 @@ | |||
| 1 | // Settings that influence how windows are positioned and sized. | ||
| 2 | // Find more information on the wiki: | ||
| 3 | // https://yalter.github.io/niri/Configuration:-Layout | ||
| 4 | layout { | ||
| 5 | // Set gaps around windows in logical pixels. | ||
| 6 | gaps 16 | ||
| 7 | |||
| 8 | // When to center a column when changing focus, options are: | ||
| 9 | // - "never", default behavior, focusing an off-screen column will keep at the left | ||
| 10 | // or right edge of the screen. | ||
| 11 | // - "always", the focused column will always be centered. | ||
| 12 | // - "on-overflow", focusing a column will center it if it doesn't fit | ||
| 13 | // together with the previously focused column. | ||
| 14 | center-focused-column "never" | ||
| 15 | |||
| 16 | // You can customize the widths that "switch-preset-column-width" (Mod+R) toggles between. | ||
| 17 | preset-column-widths { | ||
| 18 | // Proportion sets the width as a fraction of the output width, taking gaps into account. | ||
| 19 | // For example, you can perfectly fit four windows sized "proportion 0.25" on an output. | ||
| 20 | // The default preset widths are 1/3, 1/2 and 2/3 of the output. | ||
| 21 | proportion 0.33333 | ||
| 22 | proportion 0.5 | ||
| 23 | proportion 0.66667 | ||
| 24 | |||
| 25 | // Fixed sets the width in logical pixels exactly. | ||
| 26 | // fixed 1920 | ||
| 27 | } | ||
| 28 | |||
| 29 | // You can also customize the heights that "switch-preset-window-height" (Mod+Shift+R) toggles between. | ||
| 30 | // preset-window-heights { } | ||
| 31 | |||
| 32 | // You can change the default width of the new windows. | ||
| 33 | default-column-width { proportion 0.5; } | ||
| 34 | // If you leave the brackets empty, the windows themselves will decide their initial width. | ||
| 35 | // default-column-width {} | ||
| 36 | |||
| 37 | // By default focus ring and border are rendered as a solid background rectangle | ||
| 38 | // behind windows. That is, they will show up through semitransparent windows. | ||
| 39 | // This is because windows using client-side decorations can have an arbitrary shape. | ||
| 40 | // | ||
| 41 | // If you don't like that, you should uncomment `prefer-no-csd` below. | ||
| 42 | // Niri will draw focus ring and border *around* windows that agree to omit their | ||
| 43 | // client-side decorations. | ||
| 44 | // | ||
| 45 | // Alternatively, you can override it with a window rule called | ||
| 46 | // `draw-border-with-background`. | ||
| 47 | |||
| 48 | // You can change how the focus ring looks. | ||
| 49 | focus-ring { | ||
| 50 | // Uncomment this line to disable the focus ring. | ||
| 51 | // off | ||
| 52 | |||
| 53 | // How many logical pixels the ring extends out from the windows. | ||
| 54 | width 4 | ||
| 55 | |||
| 56 | // Colors can be set in a variety of ways: | ||
| 57 | // - CSS named colors: "red" | ||
| 58 | // - RGB hex: "#rgb", "#rgba", "#rrggbb", "#rrggbbaa" | ||
| 59 | // - CSS-like notation: "rgb(255, 127, 0)", rgba(), hsl() and a few others. | ||
| 60 | |||
| 61 | // Color of the ring on the active monitor. | ||
| 62 | active-color "#7fc8ff" | ||
| 63 | |||
| 64 | // Color of the ring on inactive monitors. | ||
| 65 | // | ||
| 66 | // The focus ring only draws around the active window, so the only place | ||
| 67 | // where you can see its inactive-color is on other monitors. | ||
| 68 | inactive-color "#505050" | ||
| 69 | |||
| 70 | // You can also use gradients. They take precedence over solid colors. | ||
| 71 | // Gradients are rendered the same as CSS linear-gradient(angle, from, to). | ||
| 72 | // The angle is the same as in linear-gradient, and is optional, | ||
| 73 | // defaulting to 180 (top-to-bottom gradient). | ||
| 74 | // You can use any CSS linear-gradient tool on the web to set these up. | ||
| 75 | // Changing the color space is also supported, check the wiki for more info. | ||
| 76 | // | ||
| 77 | // active-gradient from="#80c8ff" to="#c7ff7f" angle=45 | ||
| 78 | |||
| 79 | // You can also color the gradient relative to the entire view | ||
| 80 | // of the workspace, rather than relative to just the window itself. | ||
| 81 | // To do that, set relative-to="workspace-view". | ||
| 82 | // | ||
| 83 | // inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view" | ||
| 84 | } | ||
| 85 | |||
| 86 | // You can also add a border. It's similar to the focus ring, but always visible. | ||
| 87 | border { | ||
| 88 | // The settings are the same as for the focus ring. | ||
| 89 | // If you enable the border, you probably want to disable the focus ring. | ||
| 90 | off | ||
| 91 | |||
| 92 | width 4 | ||
| 93 | active-color "#ffc87f" | ||
| 94 | inactive-color "#505050" | ||
| 95 | |||
| 96 | // Color of the border around windows that request your attention. | ||
| 97 | urgent-color "#9b0000" | ||
| 98 | |||
| 99 | // Gradients can use a few different interpolation color spaces. | ||
| 100 | // For example, this is a pastel rainbow gradient via in="oklch longer hue". | ||
| 101 | // | ||
| 102 | // active-gradient from="#e5989b" to="#ffb4a2" angle=45 relative-to="workspace-view" in="oklch longer hue" | ||
| 103 | |||
| 104 | // inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view" | ||
| 105 | } | ||
| 106 | |||
| 107 | // You can enable drop shadows for windows. | ||
| 108 | shadow { | ||
| 109 | // Uncomment the next line to enable shadows. | ||
| 110 | // on | ||
| 111 | |||
| 112 | // By default, the shadow draws only around its window, and not behind it. | ||
| 113 | // Uncomment this setting to make the shadow draw behind its window. | ||
| 114 | // | ||
| 115 | // Note that niri has no way of knowing about the CSD window corner | ||
| 116 | // radius. It has to assume that windows have square corners, leading to | ||
| 117 | // shadow artifacts inside the CSD rounded corners. This setting fixes | ||
| 118 | // those artifacts. | ||
| 119 | // | ||
| 120 | // However, instead you may want to set prefer-no-csd and/or | ||
| 121 | // geometry-corner-radius. Then, niri will know the corner radius and | ||
| 122 | // draw the shadow correctly, without having to draw it behind the | ||
| 123 | // window. These will also remove client-side shadows if the window | ||
| 124 | // draws any. | ||
| 125 | // | ||
| 126 | // draw-behind-window true | ||
| 127 | |||
| 128 | // You can change how shadows look. The values below are in logical | ||
| 129 | // pixels and match the CSS box-shadow properties. | ||
| 130 | |||
| 131 | // Softness controls the shadow blur radius. | ||
| 132 | softness 30 | ||
| 133 | |||
| 134 | // Spread expands the shadow. | ||
| 135 | spread 5 | ||
| 136 | |||
| 137 | // Offset moves the shadow relative to the window. | ||
| 138 | offset x=0 y=5 | ||
| 139 | |||
| 140 | // You can also change the shadow color and opacity. | ||
| 141 | color "#0007" | ||
| 142 | } | ||
| 143 | |||
| 144 | // Struts shrink the area occupied by windows, similarly to layer-shell panels. | ||
| 145 | // You can think of them as a kind of outer gaps. They are set in logical pixels. | ||
| 146 | // Left and right struts will cause the next window to the side to always be visible. | ||
| 147 | // Top and bottom struts will simply add outer gaps in addition to the area occupied by | ||
| 148 | // layer-shell panels and regular gaps. | ||
| 149 | struts { | ||
| 150 | // left 64 | ||
| 151 | // right 64 | ||
| 152 | // top 64 | ||
| 153 | // bottom 64 | ||
| 154 | } | ||
| 155 | } | ||
| 156 | |||
