atagen

monolith

public
Star0
Watch0
140b53f6ef8471eeb8b42353c198c3f41283dc7c
1
ssh://brewery@pls.lobotomise.me:33/atagen/monolith.git
crates/config/default.tomlToml163 lines5.0 KB
1
# monolith's built-in config, used when ~/.config/monolith/config.toml is
2
# missing. Copy it there to change anything.
3
4
# Programs started with the compositor, each an argv list.
5
startup = []
6
7
[general]
8
# What Mod means in binds. Use alt when nesting inside a compositor that
9
# keeps super for itself.
10
mod = "super"
11
gaps = { inner = 8, outer = 8 }
12
# What a window move does when it meets a neighbour. swap trades places,
13
# merge joins its lane. invert-move does the other one for the next move.
14
move = "swap"
15
# Focus whatever window the pointer moves onto.
16
focus_follows_mouse = false
17
# Put the pointer in the middle of a window focused from the keyboard, a
18
# rule or a new map. Bare metal only, a nested pointer belongs to the host.
19
mouse_follows_focus = false
20
# A window landing on, or moved to, a tag or output where its tag is empty and
21
# not in view brings the tag into view there, alongside the tags already shown.
22
view_tag_on_first_window = true
23
24
[decoration]
25
# Borders sit in the gap around each window, so keep them under half the inner gap.
26
border = 2
27
# Corner radius, one number or [top left, top right, bottom right, bottom left].
28
# Fullscreen windows stay square.
29
radius = 0
30
focused = "#88bfd1"
31
unfocused = "#3b4252"
32
33
[output]
34
# Variable refresh rate on outputs that support it, off, on, or fullscreen.
35
vrr = "fullscreen"
36
37
# Per connector. transform and position follow a reload, mode needs a replug.
38
# transform is normal, 90, 180, 270, flipped, flipped-90, flipped-180 or
39
# flipped-270. Outputs without a position line up left to right.
40
# [output.DP-1]
41
# transform = "90"
42
# position = [2560, 0]
43
# mode = "1920x1080@60"
44
45
[animation]
46
enabled = true
47
# orthogonal moves each window along one axis per phase, direct allows both.
48
style = "orthogonal"
49
phase_ms = 160
50
curve = [0.45, 0.0, 0.2, 1.0]
51
52
[idle]
53
# Seconds without input before every output is switched off, any input
54
# switches them back on. 0 never blanks. Windows holding an idle inhibitor
55
# keep the screen on while they are shown.
56
blank_after = 0
57
58
[keyboard]
59
layout = ""
60
repeat_delay = 200
61
repeat_rate = 25
62
63
# libinput settings, bare metal only. Anything left out keeps the device's
64
# own default, and options a device lacks are skipped. Touchpads are devices
65
# that can tap, every other pointing device takes [input.pointer].
66
#
67
# accel_profile    flat, adaptive or custom
68
# accel_speed      -1 to 1
69
# accel_points     the custom profile's curve, pointer speed at 0, accel_step,
70
# accel_step       2 * accel_step and so on, in device units per millisecond
71
# natural_scroll, left_handed, tap, tap_drag, tap_drag_lock, dwt (disable
72
# while typing), middle_emulation   true or false
73
# scroll_method    none, two-finger, edge or on-button-down
74
# scroll_button    the evdev code of the on-button-down button, 274 for middle
75
# click_method     button-areas or clickfinger
76
# scroll_factor    multiplies scroll distance, applied by monolith
77
[input.pointer]
78
79
[input.touchpad]
80
# tap = true
81
# natural_scroll = true
82
83
# Per device, by the name `libinput list-devices` shows, over its kind's settings.
84
# Later entries win.
85
# [[input.device]]
86
# name = "Logitech G502"
87
# accel_profile = "flat"
88
# accel_speed = -0.3
89
90
# Each value is a command in word form, or an argv-style list.
91
[binds]
92
"Mod+Return" = "spawn beer"
93
"Mod+q" = "close"
94
"Mod+Shift+e" = "quit"
95
"Mod+Shift+r" = "reload"
96
97
"Mod+h" = "focus left"
98
"Mod+j" = "focus down"
99
"Mod+k" = "focus up"
100
"Mod+l" = "focus right"
101
"Mod+Shift+h" = "move left"
102
"Mod+Shift+j" = "move down"
103
"Mod+Shift+k" = "move up"
104
"Mod+Shift+l" = "move right"
105
"Mod+Ctrl+h" = "move-container left"
106
"Mod+Ctrl+j" = "move-container down"
107
"Mod+Ctrl+k" = "move-container up"
108
"Mod+Ctrl+l" = "move-container right"
109
"Mod+m" = "invert-move"
110
"Mod+Alt+h" = "resize horizontal -0.05"
111
"Mod+Alt+l" = "resize horizontal 0.05"
112
"Mod+Alt+k" = "resize vertical -0.05"
113
"Mod+Alt+j" = "resize vertical 0.05"
114
115
"Mod+e" = "expand window"
116
"Mod+Shift+w" = "expand container"
117
"Mod+w" = "maximize"
118
"Mod+o" = "flip"
119
"Mod+f" = "fullscreen"
120
"Mod+Shift+space" = "float"
121
"Mod+s" = "sticky"
122
123
"Mod+comma" = "focus-output left"
124
"Mod+period" = "focus-output right"
125
"Mod+Shift+comma" = "send-to-output left"
126
"Mod+Shift+period" = "send-to-output right"
127
128
"Mod+grave" = "summon term"
129
"Mod+Shift+grave" = "scratchpad term"
130
"Mod+Escape" = "dismiss"
131
132
"Mod+1" = "view 1"
133
"Mod+2" = "view 2"
134
"Mod+3" = "view 3"
135
"Mod+4" = "view 4"
136
"Mod+5" = "view 5"
137
"Mod+6" = "view 6"
138
"Mod+7" = "view 7"
139
"Mod+8" = "view 8"
140
"Mod+9" = "view 9"
141
"Mod+Ctrl+1" = "toggle-view 1"
142
"Mod+Ctrl+2" = "toggle-view 2"
143
"Mod+Ctrl+3" = "toggle-view 3"
144
"Mod+Ctrl+4" = "toggle-view 4"
145
"Mod+Ctrl+5" = "toggle-view 5"
146
"Mod+Ctrl+6" = "toggle-view 6"
147
"Mod+Ctrl+7" = "toggle-view 7"
148
"Mod+Ctrl+8" = "toggle-view 8"
149
"Mod+Ctrl+9" = "toggle-view 9"
150
"Mod+Shift+1" = "tag 1"
151
"Mod+Shift+2" = "tag 2"
152
"Mod+Shift+3" = "tag 3"
153
"Mod+Shift+4" = "tag 4"
154
"Mod+Shift+5" = "tag 5"
155
"Mod+Shift+6" = "tag 6"
156
"Mod+Shift+7" = "tag 7"
157
"Mod+Shift+8" = "tag 8"
158
"Mod+Shift+9" = "tag 9"
159
160
# Rules match app_id and title by regex, later rules overriding earlier ones.
161
# [[rules]]
162
# app_id = "^pavucontrol$"
163
# floating = true