1bemenu(1)                   General Commands Manual                  bemenu(1)
2
3
4

NAME

6       bemenu - dynamic menu inspired by dmenu(1)
7

SYNOPSIS

9       bemenu [-hivwx] [-I <index>] [-l <lines>] [-P prefix]
10           [-p <prompt>] [--ifne] [--scrollbar none|always|autohide] [back‐
11           end_options]
12
13       bemenu-run [-hivwx] [-I <index>] [-l <lines>] [-P <prefix>]
14           [-p <prompt>] [--ifne] [--scrollbar none|always|autohide] [--fork]
15           [--no-exec] [backend-options]
16

DESCRIPTION

18       bemenu is a dynamic menu for tty(4) (using ncurses(3)), X11 and Way‐
19       land, inspired by dmenu(1).
20
21       It reads a list of newline-separated items from standard input and then
22       presents them as a list, where the user can select one or more of them.
23       When pressing <carriage-return>, the selected items are printed to
24       standard output (one per line) and bemenu exits.
25
26       Entering text will filter the items to those that match the input. If
27       the number of items exceeds the size of the list, the items will be
28       paginated.
29
30       bemenu-run is a special-case invocation of bemenu, where the input is
31       the list of executables under PATH and the selected items are executed.
32

OPTIONS

34       -h, --help
35           Print a help message to standard output and exit.
36
37       -I, --index <index>
38           Highlight the item at index at the start. Indices start at 0. By
39           default, the first item is highlighted.
40
41       -i, --ignorecase
42           Filter items case-insensitively.
43
44       -l, --list <number>
45           List items vertically with the given number of lines.
46
47       -P, --prefix <prefix>
48           Display prefix before the highlighted item in a vertical list.
49
50       -p, --prompt <prompt>
51           Defines the prompt text to be displayed to the left of the input
52           field. Defaults to ‘bemenu’.
53
54       -v, --version
55           Print the bemenu version number to standard output and exit.
56
57       -w, --wrap
58           Advancing past the end of the list returns you to the start.
59
60       -x, --password
61           Hide filter text.
62
63       --fork
64           Always fork(2) before executing the selections. Disabled by default
65           when using the terminal backend.
66
67       --no-exec
68           Print the selected items to standard output instead of executing
69           them.
70
71       --scrollbar none|always|autohide
72           Specify when to show a scrollbar for vertical lists:
73
74       ┌─────────┬────────────────────────────────────────────────────────────┐
75none     │ Never display a scrollbar (the default).                   │
76       ├─────────┼────────────────────────────────────────────────────────────┤
77always   │ Always display a scrollbar.                                │
78       ├─────────┼────────────────────────────────────────────────────────────┤
79autohide │ Only display a scrollbar when the number of items exceeds  │
80       │         │ the number of lines.                                       │
81       └─────────┴────────────────────────────────────────────────────────────┘
82
83   Backend options
84       These options are only available on backends specified in the parenthe‐
85       ses:
86
87       -b, --bottom (Wayland, X11)
88           The list will appear at the bottom of the screen.
89
90       -f, --grab (Wayland, X11)
91           Show the bemenu window whilst reading the items.
92
93       -H, --line-height <height> (Wayland, X11)
94           Specify the height in point size to make each entry.
95
96       -m, --monitor <index> (Wayland, X11)
97           Specify the monitor index where the list should appear. Monitor in‐
98           dices start at zero. The interpretation of the given argument de‐
99           pends on the utilized backend. With X11 and Wayland, a value of
100           ‘-1’ or focused indicates that the current monitor should be used
101           (the default). With Wayland, the index should be a string specify‐
102           ing a specific monitor name. The value ‘-2’ or all indicates that
103           the list should appear on all monitors.
104
105       -n, --no-overlap (Wayland)
106           Set the bemenu window to be on top of any other panels.
107
108       -M, --margin <margin> (Wayland, X11)
109           Specify the margin (empty space) in pixels to leave between menu
110           and vertical view borders. bemenu will reduce it's size to fit in
111           space between gaps.
112
113       -W, --width-factor <factor> (Wayland, X11)
114           Specify the relative width factor as a floating point number. It
115           makes sense to set it between 0 and 1 to define how much of the
116           screen width bemenu will use. However, bemenu will still respect
117           margin, so if resulting size is greater than space between gaps,
118           bemenu will ignore factor and use available space instead.
119
120       --fn <name [size]> (Wayland, X11)
121           Specify the font family name and size to be used. For more options,
122           consult the Pango Reference Manual for pango_font_descrip‐
123           tion_from_string().
124
125       The following options control the colours for various parts of the list
126       for the Wayland and X11 backends. Each takes an argument in the form
127       of:
128
129           #RGB[A]
130
131       where R, G, B and A are hexadecimal integers from 00–FF that control
132       the red, green, blue and alpha-transparency channels.
133
134       --tb <color>   Title background.
135
136       --tf <color>   Title foreground.
137
138       --fb <color>   Filter background.
139
140       --ff <color>   Filter foreground
141
142       --cb <color>   Cursor background.
143
144       --cf <color>   Cursor foreground
145
146       --nb <color>   Normal background.
147
148       --nf <color>   Normal foreground.
149
150       --hb <color>   Highlighted background.
151
152       --hf <color>   Highlighted foreground.
153
154       --fbb <color>  Feedback background.
155
156       --fbf <color>  Feedback foreground.
157
158       --sb <color>   Selected background.
159
160       --sf <color>   Selected foreground.
161
162       --ab <color>   Alternating background color.
163
164       --af <color>   Alternating foreground color.
165
166       --scb <color>  Scrollbar background.
167
168       --scf <color>  Scrollbar foreground.
169

KEYBOARD COMMANDS

171       bemenu supports keyboard commands to move around the list and edit the
172       filter. In the following examples, C-x means <control-x>, M-x means
173       <alt-x> and S-x means <shift-x>:
174
175       <cursor-up>, S-<cursor-left>, C-p, M-j, M-l
176           Highlight the previous item.
177
178       <cursor-down>, <tab>, C-n, M-h, M-k
179           Highlight the next item.
180
181       PageUp, M-v, M-u
182           Show the previous page of items, preserving the offset of the cur‐
183           rently highlighted item, if possible.
184
185       PageDown, C-v, M-d
186           Show the next page of items, preserving the offset of the currently
187           highlighted item, if possible.
188
189       S-M-<, S-PageUp
190           Highlight the first item in the list.
191
192       S-M->, S-PageDown
193           Highlight the last item in the list.
194
195       S-<tab>
196           Copy the highlighted item to the filter.
197
198       <escape>, C-g
199           Terminate bemenu without printing items.
200
201       C-<carriage-return>, C-m
202           Print selected items and the currently highlighted one, and exit.
203           Items are printed in the order they were selected, with the cur‐
204           rently highlighted item printed last.
205
206       S-<carriage-return>, Insert
207           Print the filter text to standard output and exit.
208
209       C-l, <cursor-left>
210           Move cursor left.
211
212       C-f, <cursor-right>
213           Move cursor right.
214
215       C-a, Home
216           Move cursor to the start.
217
218       C-e, End
219           Move cursor to the end.
220
221       <backspace> C-h
222           Remove character before the cursor.
223
224       <delete>
225           Remove character at the cursor.
226
227       C-u, S-<delete>
228           Remove all characters before the cursor.
229
230       C-k
231           Remove all characters after the cursor.
232
233       C-w
234           Clear the filter.
235
236       C-y
237           Paste the clipboard.
238
239       M-[1-9]
240           Print selected items and exit with a custom error code 10 (M-1)
241
242
243
244                                  2023-01-04                         bemenu(1)
Impressum