wofi
Launch applications with a searchable interface
TLDR
Show the list of apps
Show the list of all commands
Pipe a list of items to stdin and print the selected item to stdout
SYNOPSIS
wofi [options]
wofi [options] --dmenu [options]
wofi [options] --show mode [options]
PARAMETERS
--dmenu
Run in dmenu compatibility mode, reading input from stdin and writing selected output to stdout.
--show
Display entries from a specific mode, like run (applications in PATH), drun (desktop entries), or bemenu (stdin/stdout).
-c
Specify a custom configuration file for wofi.
-s
Load a CSS style file to customize wofi's appearance.
-i, --insensitive
Perform case-insensitive matching when searching for entries.
-p
Set the text displayed as the prompt in the input field.
-H
Set the window height in percentage or pixels.
-W
Set the window width in percentage or pixels.
-x
Set the X-position of the window.
-y
Set the Y-position of the window.
-a
Anchor the window to a specific position (e.g., top, bottom, center).
-k
Define custom keybindings for actions within wofi.
-n, --normal-window
Spawn wofi as a normal window instead of an override-redirect window.
-f, --fork
Fork wofi into the background after launching, allowing the parent process to exit.
-t
Specify the terminal emulator command to use when launching applications in run mode.
--allow-markup
Enable Pango markup for richer text formatting in entry descriptions.
--columns
Set the number of columns to display entries.
--hide-scroll
Hide the scrollbar in the entry list.
--cache-file
Specify a cache file for drun mode to remember recent applications.
--exec-search
Execute the search string directly if no results are found.
--pass-through
Pass search string to stdin of command if no results.
--sort-order
Set the sorting order for entries (e.g., alpha, recent, custom).
--custom-order-file
Specify a file for custom sorting order in drun mode.
DESCRIPTION
wofi is a highly customizable application launcher and menu utility specifically designed for the Wayland compositor protocol. It serves as a modern alternative to traditional X11 tools like rofi or dmenu, providing a lightweight yet powerful interface for launching applications, executing commands, and selecting items from various lists. wofi boasts extensive styling capabilities through CSS, allowing users to tailor its appearance to match their desktop environment perfectly. It supports multiple modes of operation, including a "dmenu"-like interaction for scripting, a "run" mode for launching applications found in the PATH, and a "bemenu" mode. Its simplicity in configuration, combined with its flexibility, makes it a popular choice for users on Wayland-based systems seeking an efficient and visually integrated launcher.
CAVEATS
Wayland-only: wofi is designed exclusively for Wayland compositors and will not work on X11.
GTK-based: Its appearance and behavior are influenced by GTK themes and settings.
No built-in plugins: Unlike some other launchers, wofi focuses on core functionality and relies on external scripts for advanced integrations (e.g., clipboard history, emoji pickers).
THEMING WITH CSS
wofi's appearance is fully controlled by CSS files. Users can create custom .css files to change colors, fonts, sizes, padding, and more, offering a high degree of visual customization.
CONFIGURATION FILE
wofi uses a simple configuration file (default: ~/.config/wofi/config) to set persistent options and modes, making it easier to manage complex setups without long command-line arguments.
HISTORY
wofi emerged as a solution for users migrating from X11 to Wayland who were accustomed to the functionality of launchers like rofi and dmenu. Developed specifically for the Wayland environment, wofi aims to provide a lightweight, fast, and highly customizable alternative. Its development focus has been on Wayland compatibility, GTK integration, and flexible CSS-based theming, making it a popular choice in the Wayland ecosystem for application launching and interactive scripting.