summaryrefslogtreecommitdiffstats
path: root/.config/tofi/config
blob: af25bad5810ef26f30c56d2ed2f32cd63a253726 (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
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
#
### Fonts
#
# Font to use, either a path to a font file or a name.
#
# If a path is given, tofi will startup much quicker, but any
# characters not in the chosen font will fail to render.
#
# Otherwise, fonts are interpreted in Pango format.
font = "/usr/share/fonts/TTF/iosevka-regular.ttc"

# Point size of text.
font-size = 24

# Comma separated list of OpenType font feature settings to apply,
# if supported by the chosen font. The format is similar to the CSS
# "font-feature-settings" property.
#
# Examples:
#
# font-features = "smcp, c2sc" (all small caps)
# font-features = "liga 0" (disable ligatures)
font-features = ""

# Comma separated list of OpenType font variation settings to apply
# to variable fonts. The format is similar to the CSS
# "font-variation-settings" property.
#
# Examples:
#
# font-variations = "wght 900" (Extra bold)
# font-variations = "wdth 25, slnt -10" (Narrow and slanted)
font-variations = ""

# Perform font hinting. Only applies when a path to a font has been
# specified via `font`. Disabling font hinting speeds up text
# rendering appreciably, but will likely look poor at small font pixel
# sizes.
hint-font = true

#
### Text theming
#
# Default text color
#
# All text defaults to this color if not otherwise specified.
# text-color = #FFFFFF

# mocha
text-color = #cdd6f4
prompt-color = #f38ba8
background-color = #1e1e2e

# All pieces of text have the same theming attributes available:
#
# *-color
#     Foreground color
#
# *-background
#     Background color
#
# *-background-padding
#     Background padding in pixels (comma-delimited, CSS-style list).
#     See "DIRECTIONAL VALUES" under `man 5 tofi` for more info.
#
# *-background-corner-radius
#     Radius of background box corners in pixels

# Prompt text theme
# prompt-color = #FFFFFF
prompt-background = #00000000
prompt-background-padding = 0
prompt-background-corner-radius = 0

# Placeholder text theme
placeholder-color = #FFFFFFA8
placeholder-background = #00000000
placeholder-background-padding = 0
placeholder-background-corner-radius = 0

# Input text theme
# input-color = #FFFFFF
input-background = #00000000
input-background-padding = 0
input-background-corner-radius = 0

# Default result text theme
# default-result-color = #FFFFFF
default-result-background = #00000000
default-result-background-padding = 0
default-result-background-corner-radius = 0

# Alternate (even-numbered) result text theme
#
# If unspecified, these all default to the corresponding
# default-result-* attribute.
#
# alternate-result-color = #FFFFFF
# alternate-result-background = #00000000
# alternate-result-background-padding = 0
# alternate-result-background-corner-radius = 0

# Selection text
selection-color = #1e1e2e
selection-background = #f38ba8
selection-background-padding = 4
selection-background-corner-radius = 0

# Matching portion of selection text
selection-match-color = #45475a

#
### Text cursor theme
#
# Style of the optional text cursor.
#
# Supported values: bar, block, underscore
text-cursor-style = bar

# Color of the text cursor
#
# If unspecified, defaults to the same as input-color
# text-cursor-color = #FFFFFF

# Color of text behind the text cursor when text-cursor-style = block
#
# If unspecified, defaults to the same as background-color
# text-cursor-background = #000000

# Corner radius of the text cursor
text-cursor-corner-radius = 0

# Thickness of the bar and underscore text cursors.
#
# If unspecified, defaults to a font-dependent value when
# text-cursor-style = underscore, or to 2 otherwise.
# text-cursor-thickness = 2

#
### Text layout
#
# Prompt to display.
prompt-text = "run: "

# Extra horizontal padding between prompt and input.
prompt-padding = 0

# Placeholder input text.
placeholder-text = ""

# Maximum number of results to display.
# If 0, tofi will draw as many results as it can fit in the window.
num-results = 0

# Spacing between results in pixels. Can be negative.
result-spacing = 0

# List results horizontally.
horizontal = false

# Minimum width of input in horizontal mode.
min-input-width = 0

#
### Window theming
#
# Width and height of the window. Can be pixels or a percentage.
width = 1280
height = 720

# Window background color
# background-color = #1B1D1E

# Width of the border outlines in pixels.
outline-width = 2

# Border outline color
outline-color = #fab387

# Width of the border in pixels.
border-width = 4

# Border color
border-color = #f38ba8

# Radius of window corners in pixels.
corner-radius = 0

# Padding between borders and text. Can be pixels or a percentage.
padding-top = 8
padding-bottom = 8
padding-left = 8
padding-right = 8

# Whether to clip text drawing to be within the specified padding. This
# is mostly important for allowing text to be inset from the border,
# while still allowing text backgrounds to reach right to the edge.
clip-to-padding = true

# Whether to scale the window by the output's scale factor.
scale = true

#
### Window positioning
#
# The name of the output to appear on. An empty string will use the
# default output chosen by the compositor.
output = ""

# Location on screen to anchor the window to.
#
# Supported values: top-left, top, top-right, right, bottom-right,
# bottom, bottom-left, left, center.
anchor = top

# Set the size of the exclusive zone.
#
# A value of -1 means ignore exclusive zones completely.
# A value of 0 will move tofi out of the way of other windows' zones.
# A value greater than 0 will set that much space as an exclusive zone.
#
# Values greater than 0 are only meaningful when tofi is anchored to a
# single edge.
exclusive-zone = -1

# Window offset from edge of screen. Only has an effect when anchored
# to the relevant edge. Can be pixels or a percentage.
margin-top = 5%
margin-bottom = 0
margin-left = 0
margin-right = 0

#
### Behaviour
#
# Hide the mouse cursor.
hide-cursor = false

# Show a text cursor in the input field.
text-cursor = false

# Sort results by number of usages in run and drun modes.
history = true

# Specify an alternate file to read and store history information
# from / to. This shouldn't normally be needed, and is intended to
# facilitate the creation of custom modes.
# history-file = /path/to/histfile

# Select the matching algorithm used. If normal, substring matching is
# used, weighted to favour matches closer to the beginning of the
# string. If prefix, only substrings at the beginning of the string are
# matched. If fuzzy, searching is performed via a simple fuzzy matching
# algorithm.
#
# Supported values: normal, prefix, fuzzy
fuzzy-match = false

# If true, require a match to allow a selection to be made. If false,
# making a selection with no matches will print input to stdout.
# In drun mode, this is always true.
require-match = true

# If true, automatically accept a result if it is the only one
# remaining. If there's only one result on startup, window creation is
# skipped altogether.
auto-accept-single = false

# If true, typed input will be hidden, and what is displayed (if
# anything) is determined by the hidden-character option.
hide-input = false

# Replace displayed input characters with a character. If the empty
# string is given, input will be completely hidden.
# This option only has an effect when hide-input is set to true.
hidden-character = "*"

# Instead of printing the selected entry, print the 1-based index of
# the selection. This option has no effect in run or drun mode. If
# require-match is set to false, non-matching input will still result
# in the input being printed.
# print-index = false

# If true, directly launch applications on selection when in drun mode.
# Otherwise, just print the command line to stdout.
drun-launch = false

# The terminal to run terminal programs in when in drun mode.
# This option has no effect if drun-launch is set to true.
# Defaults to the value of the TERMINAL environment variable.
# terminal = foot

# Delay keyboard initialisation until after the first draw to screen.
# This option is experimental, and will cause tofi to miss keypresses
# for a short time after launch. The only reason to use this option is
# performance on slow systems.
late-keyboard-init = false

# If true, allow multiple simultaneous processes.
# If false, create a lock file on startup to prevent multiple instances
# from running simultaneously.
multi-instance = false

# Assume input is plain ASCII, and disable some Unicode handling
# functions. This is faster, but means e.g. a search for "e" will not
# match "é".
ascii-input = false

#
### Inclusion
#
# Configs can be split between multiple files, and then included
# within each other.
# include = /path/to/config