2023-03-17 15:31:41 +01:00
|
|
|
.\" Automatically generated by Pandoc 3.1
|
2023-02-26 15:37:09 +01:00
|
|
|
.\"
|
|
|
|
.\" Define V font for inline verbatim, using C font in formats
|
|
|
|
.\" that render this, and otherwise B font.
|
|
|
|
.ie "\f[CB]x\f[]"x" \{\
|
|
|
|
. ftr V B
|
|
|
|
. ftr VI BI
|
|
|
|
. ftr VB B
|
|
|
|
. ftr VBI BI
|
|
|
|
.\}
|
|
|
|
.el \{\
|
|
|
|
. ftr V CR
|
|
|
|
. ftr VI CI
|
|
|
|
. ftr VB CB
|
|
|
|
. ftr VBI CBI
|
|
|
|
.\}
|
2023-03-18 18:16:20 +01:00
|
|
|
.TH "spmenu" "1" "" "0.3.1" "dynamic menu"
|
2023-02-26 15:37:09 +01:00
|
|
|
.hy
|
|
|
|
.SH spmenu
|
2023-03-14 21:31:24 +01:00
|
|
|
.SS What is spmenu?
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
|
|
|
spmenu is a program for X11 that reads standard input and allows the
|
|
|
|
user to select items separated by a newline.
|
|
|
|
It is a fork of suckless\[cq]s dmenu which is a good more minimal
|
|
|
|
alternative to spmenu.
|
|
|
|
.PP
|
|
|
|
Unlike dmenu and the many builds out there, spmenu has features like
|
|
|
|
color support, Vim-like modes, image support, proper keybind
|
|
|
|
configuration, and more.
|
2023-03-08 21:12:37 +01:00
|
|
|
.PP
|
|
|
|
Most of these features can be disabled during compile time by editing
|
|
|
|
\f[V]toggle.mk\f[R].
|
2023-03-14 21:31:24 +01:00
|
|
|
.SS Usage
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
|
|
|
On runtime, spmenu reads from standard input (stdin).
|
|
|
|
spmenu items are separated by a newline (\f[V]\[rs]n\f[R]).
|
|
|
|
When (by default) Enter is pressed, the selected item will be piped to
|
|
|
|
stdout.
|
|
|
|
.PP
|
|
|
|
This allows things like
|
|
|
|
\f[V]printf \[dq]Apple\[rs]nOrange\[rs]nPear\[rs]n\[dq] | spmenu\f[R].
|
|
|
|
This command will spawn an spmenu window with three items, `Apple',
|
|
|
|
`Orange' and `Pear'.
|
|
|
|
This can be used in shell scripts to create interactive menus.
|
|
|
|
.PP
|
|
|
|
On top of this, you can specify arguments to change the behavior of
|
|
|
|
spmenu.
|
|
|
|
See a list below for a list.
|
2023-03-14 21:31:24 +01:00
|
|
|
.SS Arguments
|
2023-03-17 15:31:41 +01:00
|
|
|
.PP
|
|
|
|
Miscellanious:
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -l, \[en]lines line - Set line count to stdin
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -mh, \[en]lineheight height - Set spmenu line height to height
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -g, \[en]columns grid - Set the number of grids to grid
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -gc, \[en]generate-cache - Generate image cache
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ngc, \[en]no-generate-cache - Don\[cq]t generate image cache
|
2023-03-06 20:06:00 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -rw, \[en]relative-width - Enable relative input width
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nrw, \[en]no-relative-width - Disable relative input width
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -f, \[en]fast - Grabs keyboard before reading stdin
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -F, \[en]fuzzy - Enable fuzzy matching
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -NF, \[en]no-fuzzy - Disable fuzzy matching
|
2023-03-17 13:51:11 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -P, \[en]password - Hide characters
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -Ps, \[en]password-symbol symbol - Set the password symbol to
|
|
|
|
symbol
|
2023-03-02 18:43:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -p, \[en]prompt text - Set spmenu prompt text to text
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ip, \[en]indent - Indent items to prompt width
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nip, \[en]no-indent - Don\[cq]t indent items to prompt width
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -a, \[en]alpha - Enable alpha
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -na, \[en]no-alpha - Disable alpha
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -tp, \[en]allow-typing - Allow the user to type
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nt, \[en]no-allow-typing - Don\[cq]t allow typing, the user must
|
|
|
|
select an option
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -x, \[en]x-position x offset - Offset spmenu x position by x
|
|
|
|
offset
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -y, \[en]y-position y offset - Offset spmenu y position by y
|
|
|
|
offset
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -n, \[en]preselect line - Preselect line in the list of items
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -z, \[en]width width - Width of the spmenu window
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nmt, \[en]normal-mode-text text - Set normal mode text to text
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -imt, \[en]insert-mode-text text - Set insert mode text to text
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -bw, \[en]border-width width - Set width of the border to width .
|
2023-02-26 15:37:09 +01:00
|
|
|
0 will disable the border
|
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -so, \[en]sort - Sort matches
|
2023-03-04 15:51:26 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nso, \[en]no-sort - Don\[cq]t sort matches
|
2023-03-09 10:10:29 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -pri, \[en]priority pri1,pri2,pri3 - Specify a list of items that
|
|
|
|
take priority
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -s, \[en]case-sensitive - Use case-sensitive matching
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ns, \[en]case-insensitive - Use case-insensitive matching
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nm, \[en]normal - Start spmenu in normal mode
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -im, \[en]insert - Start spmenu in insert mode
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -t, \[en]top - Position spmenu at the top of the screen
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -b, \[en]bottom - Position spmenu at the bottom of the screen
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -c, \[en]center - Position spmenu at the center of the screen
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hm, \[en]hide-mode - Hide mode indicator
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hmc, \[en]hide-match-count - Hide match count
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hla, \[en]hide-left-arrow - Hide left arrow
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hra, \[en]hide-right-arrow - Hide right arrow
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hpr, \[en]hide-prompt - Hide prompt
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hc, \[en]hide-cursor - Hide cursor
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hhl, \[en]hide-highlighting - Hide highlight
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hi, \[en]hide-image - Hide image
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sm, \[en]show-mode - Show mode indicator
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -smc, \[en]show-match-count - Show match count
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sla, \[en]show-left-arrow - Show left arrow
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sra, \[en]show-right-arrow - Show right arrow
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -spr, \[en]show-prompt - Show prompt
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sc, \[en]show-cursor - Show cursor
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -shl, \[en]show-highlighting - Show highlight
|
2023-03-02 18:56:35 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -si, \[en]show-image - Show image
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -xrdb, \[en]xrdb - Load .Xresources on runtime
|
2023-03-13 21:21:40 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nxrdb, \[en]no-xrdb - Don\[cq]t load .Xresources on runtime
|
2023-03-13 21:21:40 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -m, \[en]monitor monitor - Specify a monitor to run spmenu on
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -w, \[en]embed window id - Embed spmenu inside window id
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -H, \[en]hist-file hist file - Specify a path to save the history
|
|
|
|
to
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ig, \[en]image-gaps gaps - Set image gaps to gaps
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -lp, \[en]vertical-padding padding - Set the vertical padding
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -hp, \[en]horizontal-padding padding - Set the horizontal padding
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -la, \[en]left-arrow-symbol symbol - Set the left arrow to symbol
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ra, \[en]right-arrow-symbol symbol - Set the right arrow to
|
|
|
|
symbol
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -is, \[en]image-size size - Image size
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -it, \[en]image-top - Position the image at the top
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ib, \[en]image-bottom - Position the image at the bottom
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ic, \[en]image-center - Position the image in the center
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -itc, \[en]image-topcenter - Position the image in the top center
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -wm, \[en]managed, \[en]x11-client - Spawn spmenu as a window
|
|
|
|
manager controlled client/window.
|
|
|
|
Useful for testing
|
2023-03-13 21:31:13 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nwm, \[en]unmanaged - Don\[cq]t spawn spmenu as a window manager
|
|
|
|
controlled client/window.
|
|
|
|
Useful for testing
|
2023-03-13 21:31:13 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -lcfg, \[en]load-config - Load spmenu configuration
|
|
|
|
(\[ti]/.spmenu or \[ti]/.config/spmenu/spmenurc)
|
2023-03-13 21:31:13 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ncfg, \[en]no-load-config - Don\[cq]t load spmenu configuration
|
|
|
|
(\[ti]/.spmenu or \[ti]/.config/spmenu/spmenurc)
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -v, \[en]version - Print spmenu version to stdout
|
|
|
|
.PP
|
|
|
|
Appearance:
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -fn, \[en]font font - Set the spmenu font to font
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nif, \[en]normal-item-foreground color - Set the normal item
|
|
|
|
foreground color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nib, \[en]normal-item-background color - Set the normal item
|
|
|
|
background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sif, \[en]selected-item-foreground color - Set the selected item
|
|
|
|
foreground color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sib, \[en]selected-item-background color - Set the selected item
|
|
|
|
background color
|
2023-03-09 10:10:29 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -npf, \[en]normal-item-priority-foreground color - Set the normal
|
|
|
|
item (high priority) foreground color
|
2023-03-09 10:10:29 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -npb, \[en]normal-item-priority-background color - Set the normal
|
|
|
|
item (high priority) background color
|
2023-03-09 10:10:29 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -spf, \[en]selected-item-priority-foreground color - Set the
|
|
|
|
selected item (high priority) foreground color
|
2023-03-09 10:10:29 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -spb, \[en]selected-item-priority-background color - Set the
|
|
|
|
selected item (high priority) background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -pfg, \[en]prompt-foreground color - Set the prompt foreground
|
|
|
|
color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -pbg, \[en]prompt-background color - Set the prompt background
|
|
|
|
color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ifg, \[en]input-foreground color - Set input foreground color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -ibg, \[en]input-background color - Set input background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -mnbg, \[en]menu-background color - Set the menu background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nhf, \[en]normal-highlight-foreground color - Set the normal
|
|
|
|
highlight foreground color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nhb, \[en]normal-highlight-background color - Set the normal
|
|
|
|
highlight background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -shf, \[en]selected-highlight-foreground color - Set the selected
|
|
|
|
highlight foreground color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -shb, \[en]selected-highlight-background color - Set the selected
|
|
|
|
highlight background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nfg, \[en]number-foreground color - Set the foreground color for
|
|
|
|
the match count
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -nbg, \[en]number-background color - Set the background color for
|
|
|
|
the match count
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -mfg, \[en]mode-foreground color - Set the foreground color for
|
|
|
|
the mode indicator
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -mbg, \[en]mode-background color - Set the background color for
|
|
|
|
the mode indicator
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -laf, \[en]left-arrow-foreground color - Set the left arrow
|
|
|
|
foreground color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -raf, \[en]right-arrow-foreground color - Set the right arrow
|
|
|
|
foreground color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -lab, \[en]left-arrow-background color - Set the left arrow
|
|
|
|
background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -rab, \[en]right-arrow-background color - Set the right arrow
|
|
|
|
background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -cc, \[en]caret-foreground color - Set the caret color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -bc, \[en]border-background color - Set the border color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr0, \[en]sgr0 color - Set the SGR 0 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr1, \[en]sgr1 color - Set the SGR 1 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr2, \[en]sgr2 color - Set the SGR 2 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr3, \[en]sgr3 color - Set the SGR 3 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr4, \[en]sgr4 color - Set the SGR 4 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr5, \[en]sgr5 color - Set the SGR 5 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr6, \[en]sgr6 color - Set the SGR 6 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr7, \[en]sgr7 color - Set the SGR 7 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr8, \[en]sgr8 color - Set the SGR 8 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr9, \[en]sgr9 color - Set the SGR 9 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr10, \[en]sgr10 color - Set the SGR 10 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr11, \[en]sgr11 color - Set the SGR 11 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr12, \[en]sgr12 color - Set the SGR 12 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr13, \[en]sgr13 color - Set the SGR 13 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr14, \[en]sgr14 color - Set the SGR 14 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -sgr15, \[en]sgr15 color - Set the SGR 15 color
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
|
|
|
There are also extra arguments recognized for dmenu compatibility.
|
|
|
|
These are:
|
|
|
|
.IP \[bu] 2
|
2023-03-04 15:51:26 +01:00
|
|
|
spmenu -S - Don\[cq]t sort matches
|
|
|
|
.IP \[bu] 2
|
2023-03-17 15:31:41 +01:00
|
|
|
spmenu -i - Use case-insensitive matching
|
|
|
|
.IP \[bu] 2
|
2023-02-26 15:44:09 +01:00
|
|
|
spmenu -nb color - Set the normal background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-02-26 15:44:09 +01:00
|
|
|
spmenu -nf color - Set the normal foreground color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-02-26 15:44:09 +01:00
|
|
|
spmenu -sb color - Set the selected background color
|
2023-02-26 15:37:09 +01:00
|
|
|
.IP \[bu] 2
|
2023-02-26 15:44:09 +01:00
|
|
|
spmenu -sf color - Set the selected foreground color
|
2023-03-14 21:31:24 +01:00
|
|
|
.SS Keybinds
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
|
|
|
See \f[V]keybinds.h\f[R] for a list.
|
2023-03-14 21:31:24 +01:00
|
|
|
.SS Modes
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
|
|
|
One of the features that separate spmenu from dmenu is spmenu\[cq]s
|
|
|
|
different modes.
|
|
|
|
As of version 0.2, there are two modes.
|
|
|
|
Normal mode and Insert mode.
|
|
|
|
These modes are of course similar to Vim.
|
|
|
|
.PP
|
|
|
|
Normal mode is the mode spmenu starts in unless a mode argument is
|
|
|
|
specified.
|
|
|
|
In normal mode, all keys perform some action, but you cannot type any
|
|
|
|
actual text to filter items.
|
|
|
|
This mode is used for navigation, as well as quickly selecting an item.
|
|
|
|
.PP
|
|
|
|
Insert mode is entered through (by default) pressing \f[V]i\f[R] in
|
|
|
|
normal mode.
|
|
|
|
In this mode, most keybinds do nothing.
|
|
|
|
When you are in insert mode, you filter items by typing text into the
|
|
|
|
field.
|
|
|
|
Once you\[cq]re done with insert mode, you can press Escape to enter
|
|
|
|
normal mode again.
|
2023-03-14 21:31:24 +01:00
|
|
|
.SS -p option
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
|
|
|
spmenu has a -p option, which stands for prompt.
|
|
|
|
It allows you to specify text to display next to the item list.
|
|
|
|
It is displayed on the left side of the spmenu window.
|
|
|
|
It should be noted that the prompt is purely visual though.
|
2023-03-14 21:31:24 +01:00
|
|
|
.SS Images
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
|
|
|
spmenu supports drawing images.
|
|
|
|
This image is placed on the left side of the menu window.
|
|
|
|
To use an image, pipe \f[V]IMG:/path/to/image\f[R] to spmenu.
|
|
|
|
If you want you can specify arguments like usual.
|
|
|
|
Note that you should add a Tab (\f[V]\[rs]t\f[R]) character after the
|
|
|
|
path to the image file.
|
|
|
|
Otherwise the text after will be interpreted as part of the filename and
|
|
|
|
the image will not be drawn.
|
|
|
|
.PP
|
|
|
|
Any text after the Tab character will be interpreted as a regular item.
|
|
|
|
In practice, drawing an image might look like this:
|
|
|
|
.PP
|
2023-03-08 18:45:13 +01:00
|
|
|
\f[V]printf \[dq]IMG:/path/to/image\[rs]tLook at that image, isn\[aq]t it awesome?\[rs]n\[dq] | spmenu\f[R]
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
2023-03-08 18:45:13 +01:00
|
|
|
There are also a few image related arguments, such as:
|
|
|
|
.PP
|
|
|
|
\f[V]-is\f[R], \f[V]-ig\f[R], \f[V]-it\f[R], \f[V]-ib\f[R],
|
|
|
|
\f[V]-ic\f[R], \f[V]-itc\f[R] and \f[V]-gc\f[R].
|
2023-03-14 21:31:24 +01:00
|
|
|
.SS Colored text
|
2023-02-26 15:37:09 +01:00
|
|
|
.PP
|
|
|
|
spmenu supports colored text through SGR sequences.
|
|
|
|
This is the same colors that you might already be using in your shell
|
|
|
|
scripts.
|
|
|
|
This means you can pipe practically any colored shell script straight
|
|
|
|
into spmenu, no need to filter the output or anything.
|
|
|
|
.PP
|
2023-03-14 21:31:24 +01:00
|
|
|
For 256 color support to work, you must add to the array.
|
|
|
|
See \f[V]libs/color.h\f[R] if you want this.
|
|
|
|
.PP
|
|
|
|
See `SGR sequences' for more information.
|
|
|
|
.SS SGR sequences
|
|
|
|
.PP
|
|
|
|
A basic supported SGR sequence looks like this: \f[V]\[rs]033[X;YZm\f[R]
|
|
|
|
.PP
|
|
|
|
Here, X specifies if you want normal or bright colors.
|
|
|
|
Y specifies if you want background or foreground.
|
|
|
|
Z specifies the color number.
|
|
|
|
.PP
|
|
|
|
Foreground colors: \f[V]30\f[R] through \f[V]37\f[R] Background colors:
|
|
|
|
\f[V]40\f[R] through \f[V]47\f[R] Reset: \f[V]0\f[R]
|
|
|
|
.PP
|
|
|
|
NOTE: \f[V];\f[R] is a separator, and in this example it separates the
|
|
|
|
color number and normal/bright.
|
|
|
|
\[rs]033 may also be written as \f[V]\[ha]]\f[R] or simply
|
|
|
|
\f[V]ESC\f[R].
|
|
|
|
.PP
|
|
|
|
spmenu supports most color sequences, although not true color by default
|
|
|
|
(unless -sgr arguments are used).
|
|
|
|
.PP
|
|
|
|
There are a few arguments, you can override SGR colors on-the-fly using
|
|
|
|
the \f[V]-sgrX\f[R] arguments.
|
|
|
|
See `Arguments' for more information.
|
|
|
|
.SS Configuration
|
|
|
|
.PP
|
|
|
|
spmenu has .Xresources (xrdb) support built in.
|
|
|
|
It reads the xrdb (.Xresources database) on runtime.
|
|
|
|
You may disable it by passing -nxrdb, or enable it by padding -xrdb.
|
|
|
|
.PP
|
|
|
|
spmenu loads \f[V]\[ti]/.config/spmenu/spmenurc\f[R] or alternatively if
|
|
|
|
you\[cq]re old fashioned, \f[V]\[ti]/.spmenurc\f[R].
|
|
|
|
This requires that \f[V]xrdb\f[R] is available on your operating system.
|
|
|
|
.PP
|
|
|
|
You can also use wildcards (such as \f[V]*\f[R]) to achieve a global
|
|
|
|
colorscheme.
|
|
|
|
Programs like \f[V]pywal\f[R] do this.
|