1wofi(5)                       File Formats Manual                      wofi(5)
2
3
4

NAME

6       wofi - configuration file and styling
7
8

DESCRIPTION

10       Wofi's  configuration  format  is  very simple, consisting of key value
11       pairs in snake case. The majority of the config options are the command
12       line  options, there are however a small handful of options only acces‐
13       sible via wofi's config.
14
15       Mode specific options for the built-in modes are documented in wofi(7).
16       They  are placed in the config file in the format mode-example_opt=val.
17       For example dmenu has an option  called  parse_action  which  would  be
18       placed in the config as dmenu-parse_action=true.
19
20       Anything  following  a  # is considered to be a comment unless the # is
21       prefixed with a \. For this reason in order to put a backslash  in  the
22       config it must be escaped as well giving \\.
23
24

CONFIG OPTIONS

26       Most  of  the options here are the command flags as found in wofi(1) in
27       snake case, however some are unique to the config.
28
29
30       style=PATH
31              Specifies the CSS file to use as the stylesheet.
32
33       stylesheet=PATH
34              Specifies the CSS file to use as the stylesheet. This option  is
35              NOT the same as style. Absolute paths are absolute however rela‐
36              tive paths are relative  to  the  wofi  config  folder  location
37              $XDG_CONFIG_HOME/wofi  and  NOT the current working directory as
38              they are with style. They are also NOT relative to the  path  as
39              specified by --conf. This option comes from rootbar and is prob‐
40              ably more confusing than it's worth.  You  should  probably  use
41              style unless you're sure this is what you want.
42
43       color=PATH
44              Specifies the colors file to use.
45
46       colors=PATH
47              Specifies the colors file to use. This option is NOT the same as
48              color. Absolute paths are absolute however  relative  paths  are
49              relative   to   the   wofi   config  folder  location  $XDG_CON‐
50              FIG_HOME/wofi and NOT the current working directory as they  are
51              with  color. They are also NOT relative to the path as specified
52              by --conf. This option comes from rootbar and is  probably  more
53              confusing  than it's worth. You should probably use color unless
54              you're sure this is what you want.
55
56       show=MODE
57              Specifies the mode to run in. A list of modes can  be  found  in
58              wofi(7).
59
60       mode=MODE
61              Identical to show.
62
63       width=WIDTH
64              Specifies  the  menu  width in pixels or percent of screen size,
65              default is 50%. Pixels are used unless the number ends with a %.
66
67       height=HEIGHT
68              Specifies the menu height in pixels or percent of  screen  size,
69              default is 40%. Pixels are used unless the number ends with a %.
70
71       prompt=PROMPT
72              Sets  the prompt to be display in the search box, default is the
73              name of the mode.
74
75       xoffset=OFFSET
76              Sets the x offset from the location in pixels, default is 0.
77
78       x=OFFSET
79              Identical to xoffset.
80
81       yoffset=OFFSET
82              Sets the y offset from the location in pixels, default is 0.
83
84       y=OFFSET
85              Identical to yoffset.
86
87       normal_window=BOOL
88              If  true  runs  wofi  in  a  normal  window  instead  of   using
89              wlr-layer-shell, default is false.
90
91       allow_images=BOOL
92              If  true  allows image escape sequences to be processed and ren‐
93              dered, default is false.
94
95       allow_markup=BOOL
96              If true allows pango markup to be processed  and  rendered,  de‐
97              fault is false.
98
99       cache_file=PATH
100              Specifies  the  cache  file  to  load/store  cache,  default  is
101              $XDG_CACHE_HOME/wofi-<mode name> where <mode name> is  the  name
102              of  the  mode,  if  $XDG_CACHE_HOME is not specified ~/.cache is
103              used.
104
105       term=TERM
106              Specifies the term to use when running a program in a  terminal.
107              This  overrides  the  default terminal run order which is kitty,
108              termite, alacritty,  foot,  gnome-terminal,  weston-terminal  in
109              that order.
110
111       password=CHARACTER
112              Runs  wofi  in  password mode using the specified character, de‐
113              fault is false.
114
115       exec_search=BOOL
116              If true activiating a search with enter will execute the  search
117              not the first result, default is false.
118
119       hide_scroll=BOOL
120              If true hides the scroll bars, default is false.
121
122       matching=MODE
123              Specifies  the  matching mode, it can be either contains, multi-
124              contains, or fuzzy, default is contains.
125
126       insensitive=BOOL
127              If true enables case insensitive search, default is false.
128
129       parse_search=BOOL
130              If true parses out image escapes and pango preventing them  from
131              being used for searching, default is false.
132
133       location=LOCATION
134              Specifies  the  location.  See wofi(7) for more information, de‐
135              fault is center.
136
137       no_actions=BOOL
138              If true disables multiple actions for modes that support it, de‐
139              fault is false.
140
141       lines=LINES
142              Specifies the height in number of lines instead of pixels.
143
144       columns=COLUMNS
145              Specifies the number of columns to display, default is 1.
146
147       sort_order=ORDER
148              Specifies  the  default  sort order. There are currently two or‐
149              ders, default and alphabetical. See wofi(7) for details.
150
151       gtk_dark=BOOL
152              If true, instructs wofi to use the dark variant of  the  current
153              GTK theme (if available). Default is false.
154
155       search=STRING
156              Specifies something to search for immediately on opening
157
158       monitor=STRING
159              Sets the monitor to open on
160
161       pre_display_cmd=COMMAND
162              Specifies  a  printf-like  string  which  is used on the entries
163              prior to displaying them. This command is only used to represent
164              the  label  widget's  string, and won't affect the the output of
165              the selected label.
166
167       orientation=ORIENTATION
168              Specifies the orientation, it can be either horizontal or verti‐
169              cal, default is vertical.
170
171       halign=ALIGN
172              Specifies  the horizontal align for the entire scrolled area, it
173              can be any of fill, start, end, or center, default is fill.
174
175       content_halign=ALIGN
176              Specifies the horizontal align for the  individual  entries,  it
177              can be any of fill, start, end, or center, default is fill.
178
179       valign=ALIGN
180              Specifies  the  vertical  align for the entire scrolled area, it
181              can be any of fill, start, end, or center, the default is orien‐
182              tation dependent. If vertical then it defaults to start, if hor‐
183              izontal it defaults to center.
184
185       filter_rate=RATE
186              Specifies the rate at which search results are updated  in  mil‐
187              liseconds, default is 100.
188
189       image_size=SIZE
190              Specifies  the size of images in pixels when images are enabled,
191              default is 32.
192
193       key_up=KEY
194              Specifies the key to use in order to move up. Default  is  Up(Up
195              arrow). See wofi-keys(7) for the key codes.
196
197       key_down=KEY
198              Specifies  the  key  to  use  in  order to move down. Default is
199              Down(Down arrow). See wofi-keys(7) for the key codes.
200
201       key_left=KEY
202              Specifies the key to use in  order  to  move  left.  Default  is
203              Left(Left arrow). See wofi-keys(7) for the key codes.
204
205       key_right=KEY
206              Specifies  the  key  to  use  in order to move right. Default is
207              Right(Right arrow). See wofi-keys(7) for the key codes.
208
209       key_forward=KEY
210              Specifies the key to use in order to move  forward.  Default  is
211              Tab. See wofi-keys(7) for the key codes.
212
213       key_backward=KEY
214              Specifies  the  key to use in order to move backward. Default is
215              ISO_Left_Tab(Shift+Tab). See wofi-keys(7) for the key codes.
216
217       key_submit=KEY
218              Specifies the key to use in order to submit an  action.  Default
219              is Return. See wofi-keys(7) for the key codes.
220
221       key_exit=KEY
222              Specifies  the  key to use in order to exit wofi. Default is Es‐
223              cape. See wofi-keys(7) for the key codes.
224
225       key_pgup=KEY
226              Specifies the key to use in order to move one page  up.  Default
227              is Page_Up. See wofi-keys(7) for the key codes.
228
229       key_pgdn=KEY
230              Specifies the key to use in order to move one page down. Default
231              is Page_Down. See wofi-keys(7) for the key codes.
232
233       key_expand=KEY
234              Specifies the key to use in order to  expand/contract  multi-ac‐
235              tion  entires. There is no default. See wofi-keys(7) for the key
236              codes.
237
238       key_hide_search=KEY
239              Specifies the key to use in order to hide/show the  search  bar.
240              There is no default. See wofi-keys(7) for the key codes.
241
242       key_copy=KEY
243              Specifies  the  key  to use in order to copy the action text for
244              the current entry. The default is Control_L-c. See  wofi-keys(7)
245              for the key codes.
246
247       line_wrap=MODE
248              Specifies  the line wrap mode to use. The options are off, word,
249              char, and word_char. Default is off.
250
251       global_coords=BOOL
252              Specifies whether x and y offsets should be calculated using the
253              global  compositor space instead of the current monitor. Default
254              is false. This does not play well with locations  and  using  it
255              with them is not advised.
256
257       hide_search=BOOL
258              Specifies  whether  the  search bar should be hidden. Default is
259              false.
260
261       dynamic_lines=BOOL
262              Specifies whether wofi should be dynamically shrunk to  fit  the
263              number  of  visible  lines  or if it should always stay the same
264              size. Default is false.
265
266       layer=LAYER
267              Specifies the layer to open on. The options are background, bot‐
268              tom, top, and overlay. Default is top
269
270       copy_exec=PATH
271              Specifies  the  executable to pipe copy data into. $PATH will be
272              scanned, this is not passed to a  shell  and  must  be  an  exe‐
273              cutable. Default is wl-copy.
274
275       single_click=BOOL
276              Specifies  whether or not actions should be executed on a single
277              click or a double click. Default is false.
278
279

CSS SELECTORS

281       Any GTK widget can be selected by using the name of its CSS node, these
282       however  might  change with updates and are not guaranteed to stay con‐
283       stant. Wofi also provides certain widgets with names and classes  which
284       can be referenced from CSS to give access to the most important widgets
285       easily. wofi(7) contains the current widget layout used by wofi  so  if
286       you want to get into CSS directly using GTK widget names look there for
287       info.
288
289
290       #window
291              The name of the window itself.
292
293       #outer-box
294              The name of the box that contains everything.
295
296       #input
297              The name of the search bar.
298
299       #scroll
300              The name of the scrolled window containing all of the entries.
301
302       #inner-box
303              The name of the box containing all of the entries.
304
305       #img
306              The name of all images in entries displayed in image mode.
307
308       #text
309              The name of all the text in entries.
310
311       #unselected
312              The name of all entries currently unselected. A  better  way  of
313              doing this is to do #entry and combine that with #entry:selected
314
315       #selected
316              The  name of all entries currently selected. A better way of do‐
317              ing this is to do #entry:selected
318
319       .entry
320              The class attached to all entries. This is attached to  the  in‐
321              side property box and is old, you probably want #entry instead
322
323       #entry
324              The name of all entries.
325
326

COLORS

328       The  colors  file should be formatted as new line separated hex values.
329       These values should be in the standard HTML format  and  begin  with  a
330       hash.  These colors will be loaded however wofi doesn't know what color
331       should be used for what so you must reference them from your CSS.
332
333       You can reference these from your CSS by  doing  --wofi-color<n>  where
334       <n>  is the line number - 1. For example to reference the color on line
335       1 you would do --wofi-color0.
336
337       The colors can also be referenced by  doing  --wofi-rgb-color<n>  where
338       <n>  is the line number - 1. The difference between these is the format
339       used to replace the macro.
340
341       --wofi-color<n> is replaced with an  HTML  color  code  in  the  format
342       #FFFFFF.  --wofi-rgb-color<n> is replaced with comma separated rgb val‐
343       ues  in  the   format   255,   255,   255.   The   correct   usage   of
344       --wofi-rgb-color<n> is to wrap it in rgb() or rgba(). Note that it does
345       not return an alpha value so combining it with rgba()  should  be  done
346       like  so rgba(--wofi-rgb-color0, 0.8). This would set the color to line
347       1 with an opacity of 80%.
348
349
350
351                                                                       wofi(5)
Impressum