bemenu(1)

NAME
bemenu - Dynamic menu inspired by dmenu(1)

SYNOPSIS
bemenu [-hviw] [-l lines] [-p prompt] [-P prefix] [-I index] [--scrollbar when] [--ifne] [backend-options] bemenu-run ...

DESCRIPTION
bemenu is a dynamic menu for tty(4) (using ncurses(3)), X11 and/or Wayland, inspired by dmenu(1). It reads a list of newline-separated items from standard input. When the user selects an item and presses Return, their choice is printed to standard output and bemenu terminates. Entering text will narrow the items to those matching the tokens in the input. bemenu-run is a special-case invocation of bemenu, where the input is a list of executables in the $PATH directories, and the selection gets executed.

OPTIONS

-h, --help
    Display bemenu help and exit.

-v, --version
    Display bemenu version and exit.

-i, --ignorecase
    Match items case-insensitively.

-w, --wrap
    Wraps cursor selection.

-l NUMBER, --list=NUMBER
    Lists items vertically with the given NUMBER of lines.

-p PROMPT, --prompt=PROMPT
    Defines the PROMPT text to be displayed.

-P PREFIX, --prefix=PREFIX
    Text to show before highlighted item.

-I INDEX, --index=INDEX
    Select item at INDEX automatically.

--scrollbar=WHEN
    Display a scrollbar. Valid values for WHEN are:

    none
        Never show the scrollbar. (default)

    always
        Always show the scrollbar.

    autohide
        Show scrollbar only when necessary.

--ifne
    Only displays the menu when there are items.

--fork
    Always fork. (bemenu-run) By default terminal backends won't fork.

--no-exec
    Do not execute command. (bemenu-run) Instead of running the selected item, send to stdout.

  Backend-specific Options
These options are only available on backends specified in the parentheses (Curses, Wayland and/or X11).

-b, --bottom
    (Wayland, X11) The menu will appear at the bottom of the screen.

-f, --grab
    (Wayland, X11) Show the menu before reading the standard input.

-n, --no-overlap
    (Wayland) Adjust geometry to not overlap with panels.

-m INDEX, --monitor=INDEX
    (Wayland, X11) Specify INDEX of the monitor where the menu should appear. (Wayland) If index is -1 or all then the menu will appear on all monitors.

-H HEIGHT, --line-height=HEIGHT
    (Wayland, X11) Defines the HEIGHT to make each menu line. Use 0 for default height.

--fn NAME [SIZE]
    (Wayland, X11) Defines the font to be used.

--tb=COLOR
    (Wayland, X11) Defines the title background COLOR.

--tf=COLOR
    (Wayland, X11) Defines the title foreground COLOR.

--fb=COLOR
    (Wayland, X11) Defines the filter background COLOR.

--ff=COLOR
    (Wayland, X11) Defines the filter foreground COLOR.

--nb=COLOR
    (Wayland, X11) Defines the normal background COLOR.

--nf=COLOR
    (Wayland, X11) Defines the normal foreground COLOR.

--hb=COLOR
    (Wayland, X11) Defines the highlighted background COLOR.

--hf=COLOR
    (Wayland, X11) Defines the highlighted foreground COLOR.

--sb=COLOR
    (Wayland, X11) Defines the selected background COLOR.

--sf=COLOR
    (Wayland, X11) Defines the selected foreground COLOR.

--scb=COLOR
    (Wayland, X11) Defines the scrollbar background COLOR.

--scf=COLOR
    (Wayland, X11) Defines the scrollbar foreground COLOR.

EXIT STATUS
0 when the user selects an option, 1 when the user aborts the selection.

ENVIRONMENT

BEMENU_OPTS
    Alternative way to pass any command line argument from the environment.

BEMENU_BACKEND
    If set, the appropriate backend will be forced. If empty, one of the GUI backends (Wayland, X11) will be selected automatically. The accepted values are:

    curses
        ncurses(3) based terminal backend.

    wayland
        Wayland backend.

    x11 X11 backend.

BEMENU_RENDERER
    Force backend by loading a .so file.

BEMENU_RENDERERS
    Override the backend search path.

BEMENU_SCALE
    Override the rendering scale factor.