wofi - Man Page
A rofi inspired launcher for wlroots compositors
Examples (TL;DR)
Synopsis
wofi [options]
Description
wofi is a rofi inspired menu program for wlroots compositors such as sway. It is intended to be highly customizable and flexible with the help of CSS styling and a dmenu mode that allows for endless scriptability. Wofi can be run cacheless in dmenu mode automatically by invoking it as dmenu with symlink.
Wofi was designed specifically for wlroots and makes use of the wlr-layer-shell protocol. If your compositor does not support this protocol or if you are in a non-wayland environment then wofi must be run with --normal-window or it will crash. If you wish to run wofi this way you can also place normal_window=true in your config file to avoid specifying the option on the command line.
Options
- -h, --help
Prints the help message and then exits.
- -f, --fork
Forks the menu so the terminal running it can be closed.
- -c, --conf=PATH
Specifies the config file to use.
- -s, --style=PATH
Specifies the CSS file to use as the stylesheet.
- -C, --color=PATH
Specifies the colors file to use.
- -d, --dmenu
Runs wofi in dmenu mode.
- -S, --show=MODE
Specifies the mode to run in. A list of modes can be found in wofi(7).
- -W, --width=WIDTH
Specifies the menu width in pixels or percent of screen size, default is 50%. Pixels are used unless the number ends with a %.
- -H, --height=HEIGHT
Specifies the menu height in pixels or percent of screen size, default is 40%. Pixels are used unless the number ends with a %.
- -p, --prompt=PROMPT
Sets the prompt to be display in the search box, default is the name of the mode.
- -x, --xoffset=OFFSET
Sets the x offset from the location in pixels, default is 0.
- -y, --yoffset=OFFSET
Sets the y offset from the location in pixels, default is 0.
- -n, --normal-window
Runs wofi in a normal window instead of using wlr-layer-shell.
- -I, --allow-images
Allows image escape sequences to be processed and rendered.
- -m, --allow-markup
Allows pango markup to be processed and rendered.
- -k, --cache-file=PATH
Specifies the cache file to load/store cache, default is $XDG_CACHE_HOME/wofi-<mode name> where <mode name> is the name of the mode, if $XDG_CACHE_HOME is not specified ~/.cache is used.
- -t, --term=TERM
Specifies the term to use when running a program in a terminal. This overrides the default terminal run order which is kitty, alacritty, wezterm, foot, termite, gnome-terminal, weston-terminal in that order.
- -P, --password [character]
Runs wofi in password mode with an optional password character to use. If no character is specified * is used by default.
- -e, --exec-search
Activiating a search with enter will execute the search not the first result.
- -b, --hide-scroll
Hides the scroll bars.
- -M, --matching=MODE
Specifies the matching mode, it can be either contains, multi-contains, or fuzzy, default is contains.
- -i, --insensitive
Enables case insensitive search.
- -q, --parse-search
Parses out image escapes and pango preventing them from being used for searching.
- -v, --version
Prints the version and then exits.
- -l, --location=LOCATION
Specifies the location. See wofi(7) for more information, default is center.
- -a, --no-actions
Disables multiple actions for modes that support it.
- -D, --define=KEY=VALUE
Sets a config option
- -L, --lines=LINES
Specifies the height in number of lines instead of pixels.
- -w, --columns=COLUMNS
Specifies the number of columns to display, default is 1.
- -O, --sort-order=ORDER
Specifies the default sort order. There are currently two orders, default and alphabetical. See wofi(7) for details.
- -G, --gtk-dark
Instructs wofi to use the dark variant of the current GTK theme, if available.
- -Q, --search
Specifies something to search for immediately on opening
- -o, --monitor
Sets the monitor to open on
- -r, --pre-display-cmd
If set, the selectable entry won't be displayed as-is, but will instead be displayed based on the output of this command, which can be anything. Suggested to use with "echo %s | some_cmd" or "some_cmd %s", as the string gets replaced in a printf-like fashion. This will not affect the output of wofi once a selection has been done, allowing you to display something else than the original output.
Configuration
Wofi has 3 main files used for configuration. All files are completely optional.
- The config file which defaults to $XDG_CONFIG_HOME/wofi/config.
- The CSS file which defaults to $XDG_CONFIG_HOME/wofi/style.css.
- The colors file which defaults to the pywal cache $XDG_CACHE_HOME/wal/colors.
All 3 of these paths can be manually specified using the respective command line flag. In the case of the last 2 they can additionally be specified in the config file.
In the event $XDG_CONFIG_HOME is not specified it defaults to ~/.config likewise if $XDG_CACHE_HOME is not specified it defaults to ~/.cache.
Information about the formats for these files can be found in wofi(5).